diff --git a/gen/src/main.rs b/gen/src/main.rs index 47d679df..0c588bf3 100644 --- a/gen/src/main.rs +++ b/gen/src/main.rs @@ -10,7 +10,7 @@ use std::process::Command; use std::{env, fs}; #[allow(unused_doc_comments)] -const LINUX_VERSION: &str = "v6.14"; +const LINUX_VERSION: &str = "v6.15"; /// Some commonly used features. const DEFAULT_FEATURES: &str = "\"general\", \"errno\""; diff --git a/src/aarch64/btrfs.rs b/src/aarch64/btrfs.rs index 0c9716ef..60aa62ab 100644 --- a/src/aarch64/btrfs.rs +++ b/src/aarch64/btrfs.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -534,17 +539,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1343,6 +1354,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1523,7 +1537,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1833,6 +1848,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/aarch64/elf_uapi.rs b/src/aarch64/elf_uapi.rs index bc3262c6..d10a1520 100644 --- a/src/aarch64/elf_uapi.rs +++ b/src/aarch64/elf_uapi.rs @@ -55,6 +55,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -63,6 +64,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -237,6 +239,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -343,6 +379,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -358,6 +395,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -365,6 +403,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -389,8 +429,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -428,86 +478,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/aarch64/general.rs b/src/aarch64/general.rs index 01c48ff8..5eb3619e 100644 --- a/src/aarch64/general.rs +++ b/src/aarch64/general.rs @@ -277,7 +277,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1026,9 +1031,9 @@ pub sa_flags: crate::ctypes::c_ulong, pub sa_restorer: __sigrestore_t, pub sa_mask: kernel_sigset_t, } -pub const LINUX_VERSION_CODE: u32 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_MINSIGSTKSZ: u32 = 51; @@ -1424,6 +1429,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1730,6 +1738,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2606,6 +2615,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2651,6 +2661,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/aarch64/if_arp.rs b/src/aarch64/if_arp.rs index 904444b1..e344dd07 100644 --- a/src/aarch64/if_arp.rs +++ b/src/aarch64/if_arp.rs @@ -496,6 +496,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1110,6 +1116,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1371,6 +1378,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1798,7 +1806,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2258,7 +2267,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/aarch64/io_uring.rs b/src/aarch64/io_uring.rs index 43f815e5..a621ed2f 100644 --- a/src/aarch64/io_uring.rs +++ b/src/aarch64/io_uring.rs @@ -165,7 +165,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -634,6 +639,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -795,6 +846,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -965,6 +1019,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -982,9 +1037,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1089,7 +1146,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1134,6 +1195,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1279,6 +1341,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/aarch64/landlock.rs b/src/aarch64/landlock.rs index 12360208..45c72a5c 100644 --- a/src/aarch64/landlock.rs +++ b/src/aarch64/landlock.rs @@ -71,6 +71,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/aarch64/net.rs b/src/aarch64/net.rs index 4ac1cdb7..dec6f6bd 100644 --- a/src/aarch64/net.rs +++ b/src/aarch64/net.rs @@ -1320,6 +1320,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1704,6 +1707,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1783,7 +1787,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1939,6 +1944,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 1, TCP_FLAG_CWR = 32768, TCP_FLAG_ECE = 16384, TCP_FLAG_URG = 8192, @@ -1947,7 +1953,7 @@ TCP_FLAG_PSH = 2048, TCP_FLAG_RST = 1024, TCP_FLAG_SYN = 512, TCP_FLAG_FIN = 256, -TCP_RESERVED_BITS = 15, +TCP_RESERVED_BITS = 14, TCP_DATA_OFFSET = 240, } #[repr(u32)] @@ -2156,7 +2162,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2593,25 +2600,47 @@ __bindgen_bitfield_unit } impl tcphdr { #[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u16) } } #[inline] pub fn set_res1(&mut self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -self._bitfield_1.set(0usize, 4u8, val as u64) +self._bitfield_1.set(1usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 3u8, val as u64) } } #[inline] @@ -2813,9 +2842,13 @@ let val: u16 = ::core::mem::transmute(val); } } #[inline] -pub fn new_bitfield_1(res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +pub fn new_bitfield_1(ae: __u16, res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); -__bindgen_bitfield_unit.set(0usize, 4u8, { +__bindgen_bitfield_unit.set(0usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); +__bindgen_bitfield_unit.set(1usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); diff --git a/src/aarch64/netlink.rs b/src/aarch64/netlink.rs index 35495e3b..1606b182 100644 --- a/src/aarch64/netlink.rs +++ b/src/aarch64/netlink.rs @@ -245,6 +245,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -696,6 +702,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -825,6 +832,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1086,6 +1094,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1665,7 +1674,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2125,7 +2135,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/aarch64/prctl.rs b/src/aarch64/prctl.rs index 31fc2428..691a9dbf 100644 --- a/src/aarch64/prctl.rs +++ b/src/aarch64/prctl.rs @@ -260,3 +260,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/aarch64/ptrace.rs b/src/aarch64/ptrace.rs index 1c0f36a7..85f8ae6b 100644 --- a/src/aarch64/ptrace.rs +++ b/src/aarch64/ptrace.rs @@ -428,6 +428,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/aarch64/xdp.rs b/src/aarch64/xdp.rs index 90b1c362..ae71e12a 100644 --- a/src/aarch64/xdp.rs +++ b/src/aarch64/xdp.rs @@ -111,6 +111,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -181,6 +182,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/arm/btrfs.rs b/src/arm/btrfs.rs index 908238e0..fc0ec3d2 100644 --- a/src/arm/btrfs.rs +++ b/src/arm/btrfs.rs @@ -161,7 +161,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -532,17 +537,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1341,6 +1352,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1521,7 +1535,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1831,6 +1846,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/arm/elf_uapi.rs b/src/arm/elf_uapi.rs index 187f123d..ef16ad67 100644 --- a/src/arm/elf_uapi.rs +++ b/src/arm/elf_uapi.rs @@ -53,6 +53,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -61,6 +62,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -235,6 +237,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -341,6 +377,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -356,6 +393,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -363,6 +401,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -387,8 +427,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -426,86 +476,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/arm/general.rs b/src/arm/general.rs index 2bd01a4f..03413714 100644 --- a/src/arm/general.rs +++ b/src/arm/general.rs @@ -275,7 +275,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1055,9 +1060,9 @@ pub sa_flags: crate::ctypes::c_ulong, pub sa_restorer: __sigrestore_t, pub sa_mask: kernel_sigset_t, } -pub const LINUX_VERSION_CODE: u32 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_NULL: u32 = 0; @@ -1455,6 +1460,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1761,6 +1769,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2732,6 +2741,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const __NR_sync_file_range2: u32 = 341; pub const __ARM_NR_BASE: u32 = 983040; pub const __ARM_NR_breakpoint: u32 = 983041; @@ -2785,6 +2795,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/arm/if_arp.rs b/src/arm/if_arp.rs index 9d8de0ab..c2ad8da4 100644 --- a/src/arm/if_arp.rs +++ b/src/arm/if_arp.rs @@ -494,6 +494,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1108,6 +1114,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1369,6 +1376,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1796,7 +1804,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2256,7 +2265,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/arm/io_uring.rs b/src/arm/io_uring.rs index c664088c..edd4dd66 100644 --- a/src/arm/io_uring.rs +++ b/src/arm/io_uring.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -632,6 +637,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -793,6 +844,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -963,6 +1017,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -980,9 +1035,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1087,7 +1144,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1132,6 +1193,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1277,6 +1339,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/arm/landlock.rs b/src/arm/landlock.rs index 422350cd..a048f110 100644 --- a/src/arm/landlock.rs +++ b/src/arm/landlock.rs @@ -69,6 +69,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/arm/net.rs b/src/arm/net.rs index 1b5f463a..41a874ca 100644 --- a/src/arm/net.rs +++ b/src/arm/net.rs @@ -1312,6 +1312,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1696,6 +1699,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1775,7 +1779,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1931,6 +1936,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 1, TCP_FLAG_CWR = 32768, TCP_FLAG_ECE = 16384, TCP_FLAG_URG = 8192, @@ -1939,7 +1945,7 @@ TCP_FLAG_PSH = 2048, TCP_FLAG_RST = 1024, TCP_FLAG_SYN = 512, TCP_FLAG_FIN = 256, -TCP_RESERVED_BITS = 15, +TCP_RESERVED_BITS = 14, TCP_DATA_OFFSET = 240, } #[repr(u32)] @@ -2148,7 +2154,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2585,25 +2592,47 @@ __bindgen_bitfield_unit } impl tcphdr { #[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u16) } } #[inline] pub fn set_res1(&mut self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -self._bitfield_1.set(0usize, 4u8, val as u64) +self._bitfield_1.set(1usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 3u8, val as u64) } } #[inline] @@ -2805,9 +2834,13 @@ let val: u16 = ::core::mem::transmute(val); } } #[inline] -pub fn new_bitfield_1(res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +pub fn new_bitfield_1(ae: __u16, res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); -__bindgen_bitfield_unit.set(0usize, 4u8, { +__bindgen_bitfield_unit.set(0usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); +__bindgen_bitfield_unit.set(1usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); diff --git a/src/arm/netlink.rs b/src/arm/netlink.rs index fc0ebd15..283ac7ca 100644 --- a/src/arm/netlink.rs +++ b/src/arm/netlink.rs @@ -243,6 +243,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -694,6 +700,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -823,6 +830,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1084,6 +1092,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1663,7 +1672,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2123,7 +2133,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/arm/prctl.rs b/src/arm/prctl.rs index fc0bf893..4e0828ea 100644 --- a/src/arm/prctl.rs +++ b/src/arm/prctl.rs @@ -258,3 +258,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/arm/ptrace.rs b/src/arm/ptrace.rs index ab4f9255..e3a6a9df 100644 --- a/src/arm/ptrace.rs +++ b/src/arm/ptrace.rs @@ -351,6 +351,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/arm/xdp.rs b/src/arm/xdp.rs index 875b5f91..428f9cdc 100644 --- a/src/arm/xdp.rs +++ b/src/arm/xdp.rs @@ -109,6 +109,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -179,6 +180,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/csky/btrfs.rs b/src/csky/btrfs.rs index 2c416887..0dd5163a 100644 --- a/src/csky/btrfs.rs +++ b/src/csky/btrfs.rs @@ -161,7 +161,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -532,17 +537,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1341,6 +1352,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1521,7 +1535,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1831,6 +1846,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/csky/elf_uapi.rs b/src/csky/elf_uapi.rs index 713e9d22..428d2ba2 100644 --- a/src/csky/elf_uapi.rs +++ b/src/csky/elf_uapi.rs @@ -53,6 +53,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -61,6 +62,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -235,6 +237,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -341,6 +377,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -356,6 +393,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -363,6 +401,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -387,8 +427,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -426,86 +476,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/csky/general.rs b/src/csky/general.rs index 363ec552..cbb6d1fc 100644 --- a/src/csky/general.rs +++ b/src/csky/general.rs @@ -275,7 +275,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1048,9 +1053,9 @@ 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 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_NULL: u32 = 0; pub const AT_IGNORE: u32 = 1; @@ -1447,6 +1452,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1753,6 +1761,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2642,6 +2651,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const __NR_sync_file_range2: u32 = 84; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; @@ -2688,6 +2698,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/csky/if_arp.rs b/src/csky/if_arp.rs index a6128907..7f703f6f 100644 --- a/src/csky/if_arp.rs +++ b/src/csky/if_arp.rs @@ -496,6 +496,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1110,6 +1116,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1371,6 +1378,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1798,7 +1806,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2258,7 +2267,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/csky/io_uring.rs b/src/csky/io_uring.rs index 646e4587..bcc576ca 100644 --- a/src/csky/io_uring.rs +++ b/src/csky/io_uring.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -636,6 +641,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -797,6 +848,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -967,6 +1021,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -984,9 +1039,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1091,7 +1148,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1136,6 +1197,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1281,6 +1343,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/csky/landlock.rs b/src/csky/landlock.rs index 4200c773..cf8e1926 100644 --- a/src/csky/landlock.rs +++ b/src/csky/landlock.rs @@ -69,6 +69,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/csky/net.rs b/src/csky/net.rs index 6a1bb55d..85bbd2f3 100644 --- a/src/csky/net.rs +++ b/src/csky/net.rs @@ -1314,6 +1314,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1698,6 +1701,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1777,7 +1781,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1933,6 +1938,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 1, TCP_FLAG_CWR = 32768, TCP_FLAG_ECE = 16384, TCP_FLAG_URG = 8192, @@ -1941,7 +1947,7 @@ TCP_FLAG_PSH = 2048, TCP_FLAG_RST = 1024, TCP_FLAG_SYN = 512, TCP_FLAG_FIN = 256, -TCP_RESERVED_BITS = 15, +TCP_RESERVED_BITS = 14, TCP_DATA_OFFSET = 240, } #[repr(u32)] @@ -2150,7 +2156,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2587,25 +2594,47 @@ __bindgen_bitfield_unit } impl tcphdr { #[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u16) } } #[inline] pub fn set_res1(&mut self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -self._bitfield_1.set(0usize, 4u8, val as u64) +self._bitfield_1.set(1usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 3u8, val as u64) } } #[inline] @@ -2807,9 +2836,13 @@ let val: u16 = ::core::mem::transmute(val); } } #[inline] -pub fn new_bitfield_1(res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +pub fn new_bitfield_1(ae: __u16, res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); -__bindgen_bitfield_unit.set(0usize, 4u8, { +__bindgen_bitfield_unit.set(0usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); +__bindgen_bitfield_unit.set(1usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); diff --git a/src/csky/netlink.rs b/src/csky/netlink.rs index 05add609..6ab204f2 100644 --- a/src/csky/netlink.rs +++ b/src/csky/netlink.rs @@ -243,6 +243,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -694,6 +700,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -823,6 +830,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1084,6 +1092,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1663,7 +1672,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2123,7 +2133,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/csky/prctl.rs b/src/csky/prctl.rs index 338cbf9f..8557716f 100644 --- a/src/csky/prctl.rs +++ b/src/csky/prctl.rs @@ -258,3 +258,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/csky/ptrace.rs b/src/csky/ptrace.rs index 7de0dc3d..b7f632e7 100644 --- a/src/csky/ptrace.rs +++ b/src/csky/ptrace.rs @@ -370,6 +370,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/csky/xdp.rs b/src/csky/xdp.rs index d161d5fd..705ae741 100644 --- a/src/csky/xdp.rs +++ b/src/csky/xdp.rs @@ -109,6 +109,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -179,6 +180,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/loongarch64/btrfs.rs b/src/loongarch64/btrfs.rs index 8c6823f0..24b9953e 100644 --- a/src/loongarch64/btrfs.rs +++ b/src/loongarch64/btrfs.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -534,17 +539,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1343,6 +1354,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1523,7 +1537,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1833,6 +1848,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/loongarch64/elf_uapi.rs b/src/loongarch64/elf_uapi.rs index d1e4a9fe..68d9b45a 100644 --- a/src/loongarch64/elf_uapi.rs +++ b/src/loongarch64/elf_uapi.rs @@ -55,6 +55,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -63,6 +64,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -237,6 +239,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -343,6 +379,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -358,6 +395,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -365,6 +403,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -389,8 +429,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -428,86 +478,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/loongarch64/general.rs b/src/loongarch64/general.rs index 06d1cfe8..9cb26416 100644 --- a/src/loongarch64/general.rs +++ b/src/loongarch64/general.rs @@ -277,7 +277,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1024,9 +1029,9 @@ 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 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_VECTOR_SIZE_ARCH: u32 = 1; @@ -1422,6 +1427,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1728,6 +1736,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2593,6 +2602,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2638,6 +2648,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/loongarch64/if_arp.rs b/src/loongarch64/if_arp.rs index 8731d592..0dc61d03 100644 --- a/src/loongarch64/if_arp.rs +++ b/src/loongarch64/if_arp.rs @@ -496,6 +496,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1110,6 +1116,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1371,6 +1378,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1798,7 +1806,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2258,7 +2267,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/loongarch64/io_uring.rs b/src/loongarch64/io_uring.rs index e0ffdd5f..6969340a 100644 --- a/src/loongarch64/io_uring.rs +++ b/src/loongarch64/io_uring.rs @@ -165,7 +165,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -634,6 +639,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -795,6 +846,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -965,6 +1019,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -982,9 +1037,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1089,7 +1146,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1134,6 +1195,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1279,6 +1341,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/loongarch64/landlock.rs b/src/loongarch64/landlock.rs index 0548e2dc..7ee6e1f1 100644 --- a/src/loongarch64/landlock.rs +++ b/src/loongarch64/landlock.rs @@ -71,6 +71,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/loongarch64/net.rs b/src/loongarch64/net.rs index f8006e7c..1178b84a 100644 --- a/src/loongarch64/net.rs +++ b/src/loongarch64/net.rs @@ -1320,6 +1320,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1704,6 +1707,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1783,7 +1787,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1939,6 +1944,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 1, TCP_FLAG_CWR = 32768, TCP_FLAG_ECE = 16384, TCP_FLAG_URG = 8192, @@ -1947,7 +1953,7 @@ TCP_FLAG_PSH = 2048, TCP_FLAG_RST = 1024, TCP_FLAG_SYN = 512, TCP_FLAG_FIN = 256, -TCP_RESERVED_BITS = 15, +TCP_RESERVED_BITS = 14, TCP_DATA_OFFSET = 240, } #[repr(u32)] @@ -2156,7 +2162,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2593,25 +2600,47 @@ __bindgen_bitfield_unit } impl tcphdr { #[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u16) } } #[inline] pub fn set_res1(&mut self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -self._bitfield_1.set(0usize, 4u8, val as u64) +self._bitfield_1.set(1usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 3u8, val as u64) } } #[inline] @@ -2813,9 +2842,13 @@ let val: u16 = ::core::mem::transmute(val); } } #[inline] -pub fn new_bitfield_1(res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +pub fn new_bitfield_1(ae: __u16, res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); -__bindgen_bitfield_unit.set(0usize, 4u8, { +__bindgen_bitfield_unit.set(0usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); +__bindgen_bitfield_unit.set(1usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); diff --git a/src/loongarch64/netlink.rs b/src/loongarch64/netlink.rs index 9c6c594c..325a3afe 100644 --- a/src/loongarch64/netlink.rs +++ b/src/loongarch64/netlink.rs @@ -245,6 +245,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -696,6 +702,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -825,6 +832,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1086,6 +1094,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1665,7 +1674,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2125,7 +2135,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/loongarch64/prctl.rs b/src/loongarch64/prctl.rs index cccf5ccd..e07b29fa 100644 --- a/src/loongarch64/prctl.rs +++ b/src/loongarch64/prctl.rs @@ -260,3 +260,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/loongarch64/ptrace.rs b/src/loongarch64/ptrace.rs index b33ab3c2..5e3905bd 100644 --- a/src/loongarch64/ptrace.rs +++ b/src/loongarch64/ptrace.rs @@ -409,6 +409,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/loongarch64/xdp.rs b/src/loongarch64/xdp.rs index 132f82cd..cf4b82a7 100644 --- a/src/loongarch64/xdp.rs +++ b/src/loongarch64/xdp.rs @@ -111,6 +111,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -181,6 +182,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/mips/btrfs.rs b/src/mips/btrfs.rs index 65edb0cf..43c5195f 100644 --- a/src/mips/btrfs.rs +++ b/src/mips/btrfs.rs @@ -161,7 +161,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -532,17 +537,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1351,6 +1362,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1531,7 +1545,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1841,6 +1856,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/mips/elf_uapi.rs b/src/mips/elf_uapi.rs index 58a860e5..9bb83a8c 100644 --- a/src/mips/elf_uapi.rs +++ b/src/mips/elf_uapi.rs @@ -53,6 +53,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -61,6 +62,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -235,6 +237,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const _MIPS_ISA_MIPS1: u32 = 1; pub const _MIPS_ISA_MIPS2: u32 = 2; @@ -351,6 +387,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -366,6 +403,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -373,6 +411,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -397,8 +437,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -436,86 +486,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/mips/general.rs b/src/mips/general.rs index e84ba63e..e4f9fa94 100644 --- a/src/mips/general.rs +++ b/src/mips/general.rs @@ -278,7 +278,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1062,9 +1067,9 @@ 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 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_VECTOR_SIZE_ARCH: u32 = 1; @@ -1473,6 +1478,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -2904,6 +2912,7 @@ pub const __NR_setxattrat: u32 = 4463; pub const __NR_getxattrat: u32 = 4464; pub const __NR_listxattrat: u32 = 4465; pub const __NR_removexattrat: u32 = 4466; +pub const __NR_open_tree_attr: u32 = 4467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2949,6 +2958,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/mips/if_arp.rs b/src/mips/if_arp.rs index e267ed18..7ff4a8ee 100644 --- a/src/mips/if_arp.rs +++ b/src/mips/if_arp.rs @@ -494,6 +494,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1118,6 +1124,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1379,6 +1386,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1806,7 +1814,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2266,7 +2275,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/mips/io_uring.rs b/src/mips/io_uring.rs index c6da87ac..a431d2d8 100644 --- a/src/mips/io_uring.rs +++ b/src/mips/io_uring.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -632,6 +637,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -803,6 +854,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -973,6 +1027,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -990,9 +1045,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1097,7 +1154,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1142,6 +1203,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1287,6 +1349,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/mips/landlock.rs b/src/mips/landlock.rs index 6349a9d7..0bd4e501 100644 --- a/src/mips/landlock.rs +++ b/src/mips/landlock.rs @@ -79,6 +79,10 @@ 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_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/mips/net.rs b/src/mips/net.rs index 66cb65c8..e05ee5e3 100644 --- a/src/mips/net.rs +++ b/src/mips/net.rs @@ -1343,6 +1343,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1727,6 +1730,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1806,7 +1810,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1962,6 +1967,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 16777216, TCP_FLAG_CWR = 8388608, TCP_FLAG_ECE = 4194304, TCP_FLAG_URG = 2097152, @@ -1970,7 +1976,7 @@ TCP_FLAG_PSH = 524288, TCP_FLAG_RST = 262144, TCP_FLAG_SYN = 131072, TCP_FLAG_FIN = 65536, -TCP_RESERVED_BITS = 251658240, +TCP_RESERVED_BITS = 234881024, TCP_DATA_OFFSET = 4026531840, } #[repr(u32)] @@ -2179,7 +2185,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2639,24 +2646,46 @@ let val: u16 = ::core::mem::transmute(val); } #[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 3u8) 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) +self._bitfield_1.set(4usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 3u8, val as u64) +} +} +#[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(7usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 7usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 7usize, 1u8, val as u64) } } #[inline] @@ -2836,16 +2865,20 @@ let val: u16 = ::core::mem::transmute(val); } } #[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]> { +pub fn new_bitfield_1(doff: __u16, res1: __u16, ae: __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, { +__bindgen_bitfield_unit.set(4usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); +__bindgen_bitfield_unit.set(7usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); __bindgen_bitfield_unit.set(8usize, 1u8, { let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; cwr as u64 diff --git a/src/mips/netlink.rs b/src/mips/netlink.rs index 5fe60f6c..422ed526 100644 --- a/src/mips/netlink.rs +++ b/src/mips/netlink.rs @@ -243,6 +243,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -704,6 +710,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -833,6 +840,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1094,6 +1102,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1673,7 +1682,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2133,7 +2143,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/mips/prctl.rs b/src/mips/prctl.rs index 62fe1e1a..b799b3ce 100644 --- a/src/mips/prctl.rs +++ b/src/mips/prctl.rs @@ -268,3 +268,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/mips/ptrace.rs b/src/mips/ptrace.rs index 6f9ca928..ad68a933 100644 --- a/src/mips/ptrace.rs +++ b/src/mips/ptrace.rs @@ -390,6 +390,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/mips/xdp.rs b/src/mips/xdp.rs index 257df9d8..2e54f627 100644 --- a/src/mips/xdp.rs +++ b/src/mips/xdp.rs @@ -109,6 +109,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -189,6 +190,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/mips32r6/btrfs.rs b/src/mips32r6/btrfs.rs index 65edb0cf..43c5195f 100644 --- a/src/mips32r6/btrfs.rs +++ b/src/mips32r6/btrfs.rs @@ -161,7 +161,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -532,17 +537,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1351,6 +1362,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1531,7 +1545,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1841,6 +1856,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/mips32r6/elf_uapi.rs b/src/mips32r6/elf_uapi.rs index 58a860e5..9bb83a8c 100644 --- a/src/mips32r6/elf_uapi.rs +++ b/src/mips32r6/elf_uapi.rs @@ -53,6 +53,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -61,6 +62,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -235,6 +237,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const _MIPS_ISA_MIPS1: u32 = 1; pub const _MIPS_ISA_MIPS2: u32 = 2; @@ -351,6 +387,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -366,6 +403,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -373,6 +411,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -397,8 +437,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -436,86 +486,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/mips32r6/general.rs b/src/mips32r6/general.rs index e84ba63e..e4f9fa94 100644 --- a/src/mips32r6/general.rs +++ b/src/mips32r6/general.rs @@ -278,7 +278,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1062,9 +1067,9 @@ 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 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_VECTOR_SIZE_ARCH: u32 = 1; @@ -1473,6 +1478,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -2904,6 +2912,7 @@ pub const __NR_setxattrat: u32 = 4463; pub const __NR_getxattrat: u32 = 4464; pub const __NR_listxattrat: u32 = 4465; pub const __NR_removexattrat: u32 = 4466; +pub const __NR_open_tree_attr: u32 = 4467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2949,6 +2958,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/mips32r6/if_arp.rs b/src/mips32r6/if_arp.rs index e267ed18..7ff4a8ee 100644 --- a/src/mips32r6/if_arp.rs +++ b/src/mips32r6/if_arp.rs @@ -494,6 +494,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1118,6 +1124,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1379,6 +1386,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1806,7 +1814,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2266,7 +2275,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/mips32r6/io_uring.rs b/src/mips32r6/io_uring.rs index c6da87ac..a431d2d8 100644 --- a/src/mips32r6/io_uring.rs +++ b/src/mips32r6/io_uring.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -632,6 +637,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -803,6 +854,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -973,6 +1027,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -990,9 +1045,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1097,7 +1154,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1142,6 +1203,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1287,6 +1349,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/mips32r6/landlock.rs b/src/mips32r6/landlock.rs index 6349a9d7..0bd4e501 100644 --- a/src/mips32r6/landlock.rs +++ b/src/mips32r6/landlock.rs @@ -79,6 +79,10 @@ 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_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/mips32r6/net.rs b/src/mips32r6/net.rs index 66cb65c8..e05ee5e3 100644 --- a/src/mips32r6/net.rs +++ b/src/mips32r6/net.rs @@ -1343,6 +1343,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1727,6 +1730,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1806,7 +1810,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1962,6 +1967,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 16777216, TCP_FLAG_CWR = 8388608, TCP_FLAG_ECE = 4194304, TCP_FLAG_URG = 2097152, @@ -1970,7 +1976,7 @@ TCP_FLAG_PSH = 524288, TCP_FLAG_RST = 262144, TCP_FLAG_SYN = 131072, TCP_FLAG_FIN = 65536, -TCP_RESERVED_BITS = 251658240, +TCP_RESERVED_BITS = 234881024, TCP_DATA_OFFSET = 4026531840, } #[repr(u32)] @@ -2179,7 +2185,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2639,24 +2646,46 @@ let val: u16 = ::core::mem::transmute(val); } #[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 3u8) 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) +self._bitfield_1.set(4usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 3u8, val as u64) +} +} +#[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(7usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 7usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 7usize, 1u8, val as u64) } } #[inline] @@ -2836,16 +2865,20 @@ let val: u16 = ::core::mem::transmute(val); } } #[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]> { +pub fn new_bitfield_1(doff: __u16, res1: __u16, ae: __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, { +__bindgen_bitfield_unit.set(4usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); +__bindgen_bitfield_unit.set(7usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); __bindgen_bitfield_unit.set(8usize, 1u8, { let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; cwr as u64 diff --git a/src/mips32r6/netlink.rs b/src/mips32r6/netlink.rs index 5fe60f6c..422ed526 100644 --- a/src/mips32r6/netlink.rs +++ b/src/mips32r6/netlink.rs @@ -243,6 +243,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -704,6 +710,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -833,6 +840,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1094,6 +1102,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1673,7 +1682,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2133,7 +2143,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/mips32r6/prctl.rs b/src/mips32r6/prctl.rs index 62fe1e1a..b799b3ce 100644 --- a/src/mips32r6/prctl.rs +++ b/src/mips32r6/prctl.rs @@ -268,3 +268,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/mips32r6/ptrace.rs b/src/mips32r6/ptrace.rs index 6f9ca928..ad68a933 100644 --- a/src/mips32r6/ptrace.rs +++ b/src/mips32r6/ptrace.rs @@ -390,6 +390,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/mips32r6/xdp.rs b/src/mips32r6/xdp.rs index 257df9d8..2e54f627 100644 --- a/src/mips32r6/xdp.rs +++ b/src/mips32r6/xdp.rs @@ -109,6 +109,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -189,6 +190,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/mips64/btrfs.rs b/src/mips64/btrfs.rs index 639204eb..ae306779 100644 --- a/src/mips64/btrfs.rs +++ b/src/mips64/btrfs.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -534,17 +539,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1353,6 +1364,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1533,7 +1547,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1843,6 +1858,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/mips64/elf_uapi.rs b/src/mips64/elf_uapi.rs index 8b44e678..70b82a25 100644 --- a/src/mips64/elf_uapi.rs +++ b/src/mips64/elf_uapi.rs @@ -55,6 +55,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -63,6 +64,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -237,6 +239,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const _MIPS_ISA_MIPS1: u32 = 1; pub const _MIPS_ISA_MIPS2: u32 = 2; @@ -353,6 +389,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -368,6 +405,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -375,6 +413,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -399,8 +439,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -438,86 +488,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/mips64/general.rs b/src/mips64/general.rs index d89cfe96..2d9903b2 100644 --- a/src/mips64/general.rs +++ b/src/mips64/general.rs @@ -278,7 +278,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1054,9 +1059,9 @@ 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 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_VECTOR_SIZE_ARCH: u32 = 1; @@ -1462,6 +1467,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -2823,6 +2831,7 @@ pub const __NR_setxattrat: u32 = 5463; pub const __NR_getxattrat: u32 = 5464; pub const __NR_listxattrat: u32 = 5465; pub const __NR_removexattrat: u32 = 5466; +pub const __NR_open_tree_attr: u32 = 5467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2868,6 +2877,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/mips64/if_arp.rs b/src/mips64/if_arp.rs index c3ecc455..23b3026d 100644 --- a/src/mips64/if_arp.rs +++ b/src/mips64/if_arp.rs @@ -496,6 +496,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1120,6 +1126,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1381,6 +1388,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1808,7 +1816,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2268,7 +2277,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/mips64/io_uring.rs b/src/mips64/io_uring.rs index 3c13d3a1..7d9b6566 100644 --- a/src/mips64/io_uring.rs +++ b/src/mips64/io_uring.rs @@ -165,7 +165,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -634,6 +639,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -805,6 +856,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -975,6 +1029,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -992,9 +1047,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1099,7 +1156,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1144,6 +1205,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1289,6 +1351,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/mips64/landlock.rs b/src/mips64/landlock.rs index 5dcfce12..68383115 100644 --- a/src/mips64/landlock.rs +++ b/src/mips64/landlock.rs @@ -81,6 +81,10 @@ 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_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/mips64/net.rs b/src/mips64/net.rs index ad83d15a..3a593403 100644 --- a/src/mips64/net.rs +++ b/src/mips64/net.rs @@ -1351,6 +1351,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1735,6 +1738,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1814,7 +1818,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1970,6 +1975,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 16777216, TCP_FLAG_CWR = 8388608, TCP_FLAG_ECE = 4194304, TCP_FLAG_URG = 2097152, @@ -1978,7 +1984,7 @@ TCP_FLAG_PSH = 524288, TCP_FLAG_RST = 262144, TCP_FLAG_SYN = 131072, TCP_FLAG_FIN = 65536, -TCP_RESERVED_BITS = 251658240, +TCP_RESERVED_BITS = 234881024, TCP_DATA_OFFSET = 4026531840, } #[repr(u32)] @@ -2187,7 +2193,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2647,24 +2654,46 @@ let val: u16 = ::core::mem::transmute(val); } #[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 3u8) 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) +self._bitfield_1.set(4usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 3u8, val as u64) +} +} +#[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(7usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 7usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 7usize, 1u8, val as u64) } } #[inline] @@ -2844,16 +2873,20 @@ let val: u16 = ::core::mem::transmute(val); } } #[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]> { +pub fn new_bitfield_1(doff: __u16, res1: __u16, ae: __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, { +__bindgen_bitfield_unit.set(4usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); +__bindgen_bitfield_unit.set(7usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); __bindgen_bitfield_unit.set(8usize, 1u8, { let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; cwr as u64 diff --git a/src/mips64/netlink.rs b/src/mips64/netlink.rs index cd36e16f..66f4f4e3 100644 --- a/src/mips64/netlink.rs +++ b/src/mips64/netlink.rs @@ -245,6 +245,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -706,6 +712,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -835,6 +842,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1096,6 +1104,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1675,7 +1684,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2135,7 +2145,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/mips64/prctl.rs b/src/mips64/prctl.rs index d0121f8b..88552724 100644 --- a/src/mips64/prctl.rs +++ b/src/mips64/prctl.rs @@ -270,3 +270,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/mips64/ptrace.rs b/src/mips64/ptrace.rs index 9d70c079..aa841700 100644 --- a/src/mips64/ptrace.rs +++ b/src/mips64/ptrace.rs @@ -392,6 +392,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/mips64/xdp.rs b/src/mips64/xdp.rs index 6ea92c8f..73e553e6 100644 --- a/src/mips64/xdp.rs +++ b/src/mips64/xdp.rs @@ -111,6 +111,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -191,6 +192,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/mips64r6/btrfs.rs b/src/mips64r6/btrfs.rs index 639204eb..ae306779 100644 --- a/src/mips64r6/btrfs.rs +++ b/src/mips64r6/btrfs.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -534,17 +539,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1353,6 +1364,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1533,7 +1547,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1843,6 +1858,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/mips64r6/elf_uapi.rs b/src/mips64r6/elf_uapi.rs index 8b44e678..70b82a25 100644 --- a/src/mips64r6/elf_uapi.rs +++ b/src/mips64r6/elf_uapi.rs @@ -55,6 +55,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -63,6 +64,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -237,6 +239,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const _MIPS_ISA_MIPS1: u32 = 1; pub const _MIPS_ISA_MIPS2: u32 = 2; @@ -353,6 +389,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -368,6 +405,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -375,6 +413,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -399,8 +439,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -438,86 +488,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/mips64r6/general.rs b/src/mips64r6/general.rs index d89cfe96..2d9903b2 100644 --- a/src/mips64r6/general.rs +++ b/src/mips64r6/general.rs @@ -278,7 +278,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1054,9 +1059,9 @@ 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 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_VECTOR_SIZE_ARCH: u32 = 1; @@ -1462,6 +1467,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -2823,6 +2831,7 @@ pub const __NR_setxattrat: u32 = 5463; pub const __NR_getxattrat: u32 = 5464; pub const __NR_listxattrat: u32 = 5465; pub const __NR_removexattrat: u32 = 5466; +pub const __NR_open_tree_attr: u32 = 5467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2868,6 +2877,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/mips64r6/if_arp.rs b/src/mips64r6/if_arp.rs index c3ecc455..23b3026d 100644 --- a/src/mips64r6/if_arp.rs +++ b/src/mips64r6/if_arp.rs @@ -496,6 +496,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1120,6 +1126,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1381,6 +1388,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1808,7 +1816,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2268,7 +2277,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/mips64r6/io_uring.rs b/src/mips64r6/io_uring.rs index 3c13d3a1..7d9b6566 100644 --- a/src/mips64r6/io_uring.rs +++ b/src/mips64r6/io_uring.rs @@ -165,7 +165,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -634,6 +639,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -805,6 +856,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -975,6 +1029,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -992,9 +1047,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1099,7 +1156,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1144,6 +1205,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1289,6 +1351,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/mips64r6/landlock.rs b/src/mips64r6/landlock.rs index 5dcfce12..68383115 100644 --- a/src/mips64r6/landlock.rs +++ b/src/mips64r6/landlock.rs @@ -81,6 +81,10 @@ 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_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/mips64r6/net.rs b/src/mips64r6/net.rs index ad83d15a..3a593403 100644 --- a/src/mips64r6/net.rs +++ b/src/mips64r6/net.rs @@ -1351,6 +1351,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1735,6 +1738,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1814,7 +1818,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1970,6 +1975,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 16777216, TCP_FLAG_CWR = 8388608, TCP_FLAG_ECE = 4194304, TCP_FLAG_URG = 2097152, @@ -1978,7 +1984,7 @@ TCP_FLAG_PSH = 524288, TCP_FLAG_RST = 262144, TCP_FLAG_SYN = 131072, TCP_FLAG_FIN = 65536, -TCP_RESERVED_BITS = 251658240, +TCP_RESERVED_BITS = 234881024, TCP_DATA_OFFSET = 4026531840, } #[repr(u32)] @@ -2187,7 +2193,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2647,24 +2654,46 @@ let val: u16 = ::core::mem::transmute(val); } #[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 3u8) 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) +self._bitfield_1.set(4usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 3u8, val as u64) +} +} +#[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(7usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 7usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 7usize, 1u8, val as u64) } } #[inline] @@ -2844,16 +2873,20 @@ let val: u16 = ::core::mem::transmute(val); } } #[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]> { +pub fn new_bitfield_1(doff: __u16, res1: __u16, ae: __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, { +__bindgen_bitfield_unit.set(4usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); +__bindgen_bitfield_unit.set(7usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); __bindgen_bitfield_unit.set(8usize, 1u8, { let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; cwr as u64 diff --git a/src/mips64r6/netlink.rs b/src/mips64r6/netlink.rs index cd36e16f..66f4f4e3 100644 --- a/src/mips64r6/netlink.rs +++ b/src/mips64r6/netlink.rs @@ -245,6 +245,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -706,6 +712,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -835,6 +842,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1096,6 +1104,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1675,7 +1684,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2135,7 +2145,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/mips64r6/prctl.rs b/src/mips64r6/prctl.rs index d0121f8b..88552724 100644 --- a/src/mips64r6/prctl.rs +++ b/src/mips64r6/prctl.rs @@ -270,3 +270,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/mips64r6/ptrace.rs b/src/mips64r6/ptrace.rs index 9d70c079..aa841700 100644 --- a/src/mips64r6/ptrace.rs +++ b/src/mips64r6/ptrace.rs @@ -392,6 +392,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/mips64r6/xdp.rs b/src/mips64r6/xdp.rs index 6ea92c8f..73e553e6 100644 --- a/src/mips64r6/xdp.rs +++ b/src/mips64r6/xdp.rs @@ -111,6 +111,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -191,6 +192,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/powerpc/btrfs.rs b/src/powerpc/btrfs.rs index 16ea3b4a..bc69d7ee 100644 --- a/src/powerpc/btrfs.rs +++ b/src/powerpc/btrfs.rs @@ -167,7 +167,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -538,17 +543,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1347,6 +1358,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1527,7 +1541,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1837,6 +1852,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/powerpc/elf_uapi.rs b/src/powerpc/elf_uapi.rs index 91576e43..f8ec632f 100644 --- a/src/powerpc/elf_uapi.rs +++ b/src/powerpc/elf_uapi.rs @@ -53,6 +53,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -61,6 +62,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -241,6 +243,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -347,6 +383,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -362,6 +399,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -369,6 +407,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -393,8 +433,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -432,86 +482,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/powerpc/general.rs b/src/powerpc/general.rs index 3109d991..78e10b65 100644 --- a/src/powerpc/general.rs +++ b/src/powerpc/general.rs @@ -282,7 +282,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1100,9 +1105,9 @@ pub sa_flags: crate::ctypes::c_ulong, pub sa_restorer: __sigrestore_t, pub sa_mask: kernel_sigset_t, } -pub const LINUX_VERSION_CODE: u32 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_DCACHEBSIZE: u32 = 19; pub const AT_ICACHEBSIZE: u32 = 20; @@ -1513,6 +1518,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1819,6 +1827,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2831,6 +2840,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2876,6 +2886,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/powerpc/if_arp.rs b/src/powerpc/if_arp.rs index fed4b95d..9e83d756 100644 --- a/src/powerpc/if_arp.rs +++ b/src/powerpc/if_arp.rs @@ -500,6 +500,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1114,6 +1120,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1375,6 +1382,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1802,7 +1810,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2262,7 +2271,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/powerpc/io_uring.rs b/src/powerpc/io_uring.rs index 66001f23..8e930a74 100644 --- a/src/powerpc/io_uring.rs +++ b/src/powerpc/io_uring.rs @@ -169,7 +169,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -638,6 +643,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -799,6 +850,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -969,6 +1023,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -986,9 +1041,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1093,7 +1150,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1138,6 +1199,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1283,6 +1345,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/powerpc/landlock.rs b/src/powerpc/landlock.rs index fcdd724c..e27b67d2 100644 --- a/src/powerpc/landlock.rs +++ b/src/powerpc/landlock.rs @@ -75,6 +75,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/powerpc/net.rs b/src/powerpc/net.rs index 46449b44..55a47d58 100644 --- a/src/powerpc/net.rs +++ b/src/powerpc/net.rs @@ -1318,6 +1318,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1702,6 +1705,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1781,7 +1785,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1937,6 +1942,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 16777216, TCP_FLAG_CWR = 8388608, TCP_FLAG_ECE = 4194304, TCP_FLAG_URG = 2097152, @@ -1945,7 +1951,7 @@ TCP_FLAG_PSH = 524288, TCP_FLAG_RST = 262144, TCP_FLAG_SYN = 131072, TCP_FLAG_FIN = 65536, -TCP_RESERVED_BITS = 251658240, +TCP_RESERVED_BITS = 234881024, TCP_DATA_OFFSET = 4026531840, } #[repr(u32)] @@ -2154,7 +2160,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2614,24 +2621,46 @@ let val: u16 = ::core::mem::transmute(val); } #[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 3u8) 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) +self._bitfield_1.set(4usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 3u8, val as u64) +} +} +#[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(7usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 7usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 7usize, 1u8, val as u64) } } #[inline] @@ -2811,16 +2840,20 @@ let val: u16 = ::core::mem::transmute(val); } } #[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]> { +pub fn new_bitfield_1(doff: __u16, res1: __u16, ae: __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, { +__bindgen_bitfield_unit.set(4usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); +__bindgen_bitfield_unit.set(7usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); __bindgen_bitfield_unit.set(8usize, 1u8, { let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; cwr as u64 diff --git a/src/powerpc/netlink.rs b/src/powerpc/netlink.rs index 9695970e..71886dde 100644 --- a/src/powerpc/netlink.rs +++ b/src/powerpc/netlink.rs @@ -249,6 +249,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -700,6 +706,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -829,6 +836,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1090,6 +1098,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1669,7 +1678,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2129,7 +2139,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/powerpc/prctl.rs b/src/powerpc/prctl.rs index 0cc78031..ac615a34 100644 --- a/src/powerpc/prctl.rs +++ b/src/powerpc/prctl.rs @@ -264,3 +264,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/powerpc/ptrace.rs b/src/powerpc/ptrace.rs index be7321fd..f06b005f 100644 --- a/src/powerpc/ptrace.rs +++ b/src/powerpc/ptrace.rs @@ -391,6 +391,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/powerpc/xdp.rs b/src/powerpc/xdp.rs index f48ccc73..974103e3 100644 --- a/src/powerpc/xdp.rs +++ b/src/powerpc/xdp.rs @@ -115,6 +115,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -185,6 +186,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/powerpc64/btrfs.rs b/src/powerpc64/btrfs.rs index 71e28b53..580a95ed 100644 --- a/src/powerpc64/btrfs.rs +++ b/src/powerpc64/btrfs.rs @@ -169,7 +169,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -540,17 +545,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1349,6 +1360,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1529,7 +1543,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1839,6 +1854,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/powerpc64/elf_uapi.rs b/src/powerpc64/elf_uapi.rs index 495c30cc..7533bfaa 100644 --- a/src/powerpc64/elf_uapi.rs +++ b/src/powerpc64/elf_uapi.rs @@ -55,6 +55,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -63,6 +64,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -243,6 +245,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -349,6 +385,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -364,6 +401,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -371,6 +409,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -395,8 +435,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -434,86 +484,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/powerpc64/general.rs b/src/powerpc64/general.rs index 2246176d..04a4b41f 100644 --- a/src/powerpc64/general.rs +++ b/src/powerpc64/general.rs @@ -284,7 +284,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1082,9 +1087,9 @@ pub sa_flags: crate::ctypes::c_ulong, pub sa_restorer: __sigrestore_t, pub sa_mask: kernel_sigset_t, } -pub const LINUX_VERSION_CODE: u32 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_DCACHEBSIZE: u32 = 19; pub const AT_ICACHEBSIZE: u32 = 20; @@ -1492,6 +1497,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1798,6 +1806,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2780,6 +2789,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2825,6 +2835,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/powerpc64/if_arp.rs b/src/powerpc64/if_arp.rs index 560ab2ed..a48208a7 100644 --- a/src/powerpc64/if_arp.rs +++ b/src/powerpc64/if_arp.rs @@ -502,6 +502,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1116,6 +1122,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1377,6 +1384,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1804,7 +1812,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2264,7 +2273,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/powerpc64/io_uring.rs b/src/powerpc64/io_uring.rs index 9bf9f4b9..6180898e 100644 --- a/src/powerpc64/io_uring.rs +++ b/src/powerpc64/io_uring.rs @@ -171,7 +171,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -640,6 +645,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -801,6 +852,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -971,6 +1025,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -988,9 +1043,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1095,7 +1152,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1140,6 +1201,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1285,6 +1347,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/powerpc64/landlock.rs b/src/powerpc64/landlock.rs index 578a88ac..528e12d9 100644 --- a/src/powerpc64/landlock.rs +++ b/src/powerpc64/landlock.rs @@ -77,6 +77,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/powerpc64/net.rs b/src/powerpc64/net.rs index 7c300568..d8316b12 100644 --- a/src/powerpc64/net.rs +++ b/src/powerpc64/net.rs @@ -1326,6 +1326,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1710,6 +1713,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1789,7 +1793,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1945,6 +1950,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 16777216, TCP_FLAG_CWR = 8388608, TCP_FLAG_ECE = 4194304, TCP_FLAG_URG = 2097152, @@ -1953,7 +1959,7 @@ TCP_FLAG_PSH = 524288, TCP_FLAG_RST = 262144, TCP_FLAG_SYN = 131072, TCP_FLAG_FIN = 65536, -TCP_RESERVED_BITS = 251658240, +TCP_RESERVED_BITS = 234881024, TCP_DATA_OFFSET = 4026531840, } #[repr(u32)] @@ -2162,7 +2168,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2622,24 +2629,46 @@ let val: u16 = ::core::mem::transmute(val); } #[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 3u8) 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) +self._bitfield_1.set(4usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 3u8, val as u64) +} +} +#[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(7usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 7usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 7usize, 1u8, val as u64) } } #[inline] @@ -2819,16 +2848,20 @@ let val: u16 = ::core::mem::transmute(val); } } #[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]> { +pub fn new_bitfield_1(doff: __u16, res1: __u16, ae: __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, { +__bindgen_bitfield_unit.set(4usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); +__bindgen_bitfield_unit.set(7usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); __bindgen_bitfield_unit.set(8usize, 1u8, { let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; cwr as u64 diff --git a/src/powerpc64/netlink.rs b/src/powerpc64/netlink.rs index b694f435..4a4cfa1e 100644 --- a/src/powerpc64/netlink.rs +++ b/src/powerpc64/netlink.rs @@ -251,6 +251,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -702,6 +708,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -831,6 +838,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1092,6 +1100,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1671,7 +1680,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2131,7 +2141,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/powerpc64/prctl.rs b/src/powerpc64/prctl.rs index 5b4435ac..d8013c9b 100644 --- a/src/powerpc64/prctl.rs +++ b/src/powerpc64/prctl.rs @@ -266,3 +266,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/powerpc64/ptrace.rs b/src/powerpc64/ptrace.rs index 8ab54681..2b6c5b96 100644 --- a/src/powerpc64/ptrace.rs +++ b/src/powerpc64/ptrace.rs @@ -393,6 +393,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/powerpc64/xdp.rs b/src/powerpc64/xdp.rs index 6f311fe0..54e5239d 100644 --- a/src/powerpc64/xdp.rs +++ b/src/powerpc64/xdp.rs @@ -117,6 +117,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -187,6 +188,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/riscv32/btrfs.rs b/src/riscv32/btrfs.rs index 2c416887..0dd5163a 100644 --- a/src/riscv32/btrfs.rs +++ b/src/riscv32/btrfs.rs @@ -161,7 +161,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -532,17 +537,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1341,6 +1352,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1521,7 +1535,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1831,6 +1846,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/riscv32/elf_uapi.rs b/src/riscv32/elf_uapi.rs index 713e9d22..428d2ba2 100644 --- a/src/riscv32/elf_uapi.rs +++ b/src/riscv32/elf_uapi.rs @@ -53,6 +53,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -61,6 +62,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -235,6 +237,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -341,6 +377,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -356,6 +393,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -363,6 +401,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -387,8 +427,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -426,86 +476,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/riscv32/general.rs b/src/riscv32/general.rs index b9b0f0a9..1c7ac68c 100644 --- a/src/riscv32/general.rs +++ b/src/riscv32/general.rs @@ -275,7 +275,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1046,9 +1051,9 @@ 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 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_L1I_CACHESIZE: u32 = 40; @@ -1455,6 +1460,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1761,6 +1769,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2621,6 +2630,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2666,6 +2676,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/riscv32/if_arp.rs b/src/riscv32/if_arp.rs index 2c3ae1fe..468212fd 100644 --- a/src/riscv32/if_arp.rs +++ b/src/riscv32/if_arp.rs @@ -494,6 +494,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1108,6 +1114,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1369,6 +1376,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1796,7 +1804,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2256,7 +2265,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/riscv32/io_uring.rs b/src/riscv32/io_uring.rs index fd70be99..be4521be 100644 --- a/src/riscv32/io_uring.rs +++ b/src/riscv32/io_uring.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -632,6 +637,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -793,6 +844,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -963,6 +1017,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -980,9 +1035,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1087,7 +1144,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1132,6 +1193,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1277,6 +1339,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/riscv32/landlock.rs b/src/riscv32/landlock.rs index 4200c773..cf8e1926 100644 --- a/src/riscv32/landlock.rs +++ b/src/riscv32/landlock.rs @@ -69,6 +69,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/riscv32/net.rs b/src/riscv32/net.rs index 7f32aad5..07ef2586 100644 --- a/src/riscv32/net.rs +++ b/src/riscv32/net.rs @@ -1312,6 +1312,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1696,6 +1699,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1775,7 +1779,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1931,6 +1936,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 1, TCP_FLAG_CWR = 32768, TCP_FLAG_ECE = 16384, TCP_FLAG_URG = 8192, @@ -1939,7 +1945,7 @@ TCP_FLAG_PSH = 2048, TCP_FLAG_RST = 1024, TCP_FLAG_SYN = 512, TCP_FLAG_FIN = 256, -TCP_RESERVED_BITS = 15, +TCP_RESERVED_BITS = 14, TCP_DATA_OFFSET = 240, } #[repr(u32)] @@ -2148,7 +2154,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2585,25 +2592,47 @@ __bindgen_bitfield_unit } impl tcphdr { #[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u16) } } #[inline] pub fn set_res1(&mut self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -self._bitfield_1.set(0usize, 4u8, val as u64) +self._bitfield_1.set(1usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 3u8, val as u64) } } #[inline] @@ -2805,9 +2834,13 @@ let val: u16 = ::core::mem::transmute(val); } } #[inline] -pub fn new_bitfield_1(res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +pub fn new_bitfield_1(ae: __u16, res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); -__bindgen_bitfield_unit.set(0usize, 4u8, { +__bindgen_bitfield_unit.set(0usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); +__bindgen_bitfield_unit.set(1usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); diff --git a/src/riscv32/netlink.rs b/src/riscv32/netlink.rs index 05add609..6ab204f2 100644 --- a/src/riscv32/netlink.rs +++ b/src/riscv32/netlink.rs @@ -243,6 +243,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -694,6 +700,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -823,6 +830,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1084,6 +1092,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1663,7 +1672,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2123,7 +2133,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/riscv32/prctl.rs b/src/riscv32/prctl.rs index 338cbf9f..8557716f 100644 --- a/src/riscv32/prctl.rs +++ b/src/riscv32/prctl.rs @@ -258,3 +258,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/riscv32/ptrace.rs b/src/riscv32/ptrace.rs index 5193f1ad..49c28259 100644 --- a/src/riscv32/ptrace.rs +++ b/src/riscv32/ptrace.rs @@ -436,6 +436,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/riscv32/xdp.rs b/src/riscv32/xdp.rs index d161d5fd..705ae741 100644 --- a/src/riscv32/xdp.rs +++ b/src/riscv32/xdp.rs @@ -109,6 +109,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -179,6 +180,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/riscv64/btrfs.rs b/src/riscv64/btrfs.rs index 8c6823f0..24b9953e 100644 --- a/src/riscv64/btrfs.rs +++ b/src/riscv64/btrfs.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -534,17 +539,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1343,6 +1354,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1523,7 +1537,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1833,6 +1848,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/riscv64/elf_uapi.rs b/src/riscv64/elf_uapi.rs index d1e4a9fe..68d9b45a 100644 --- a/src/riscv64/elf_uapi.rs +++ b/src/riscv64/elf_uapi.rs @@ -55,6 +55,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -63,6 +64,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -237,6 +239,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -343,6 +379,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -358,6 +395,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -365,6 +403,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -389,8 +429,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -428,86 +478,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/riscv64/general.rs b/src/riscv64/general.rs index 9fcaccf3..430e4221 100644 --- a/src/riscv64/general.rs +++ b/src/riscv64/general.rs @@ -277,7 +277,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1024,9 +1029,9 @@ 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 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_L1I_CACHESIZE: u32 = 40; @@ -1430,6 +1435,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1736,6 +1744,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2606,6 +2615,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2651,6 +2661,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/riscv64/if_arp.rs b/src/riscv64/if_arp.rs index 8731d592..0dc61d03 100644 --- a/src/riscv64/if_arp.rs +++ b/src/riscv64/if_arp.rs @@ -496,6 +496,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1110,6 +1116,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1371,6 +1378,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1798,7 +1806,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2258,7 +2267,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/riscv64/io_uring.rs b/src/riscv64/io_uring.rs index e0ffdd5f..6969340a 100644 --- a/src/riscv64/io_uring.rs +++ b/src/riscv64/io_uring.rs @@ -165,7 +165,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -634,6 +639,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -795,6 +846,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -965,6 +1019,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -982,9 +1037,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1089,7 +1146,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1134,6 +1195,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1279,6 +1341,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/riscv64/landlock.rs b/src/riscv64/landlock.rs index 0548e2dc..7ee6e1f1 100644 --- a/src/riscv64/landlock.rs +++ b/src/riscv64/landlock.rs @@ -71,6 +71,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/riscv64/net.rs b/src/riscv64/net.rs index f8006e7c..1178b84a 100644 --- a/src/riscv64/net.rs +++ b/src/riscv64/net.rs @@ -1320,6 +1320,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1704,6 +1707,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1783,7 +1787,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1939,6 +1944,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 1, TCP_FLAG_CWR = 32768, TCP_FLAG_ECE = 16384, TCP_FLAG_URG = 8192, @@ -1947,7 +1953,7 @@ TCP_FLAG_PSH = 2048, TCP_FLAG_RST = 1024, TCP_FLAG_SYN = 512, TCP_FLAG_FIN = 256, -TCP_RESERVED_BITS = 15, +TCP_RESERVED_BITS = 14, TCP_DATA_OFFSET = 240, } #[repr(u32)] @@ -2156,7 +2162,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2593,25 +2600,47 @@ __bindgen_bitfield_unit } impl tcphdr { #[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u16) } } #[inline] pub fn set_res1(&mut self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -self._bitfield_1.set(0usize, 4u8, val as u64) +self._bitfield_1.set(1usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 3u8, val as u64) } } #[inline] @@ -2813,9 +2842,13 @@ let val: u16 = ::core::mem::transmute(val); } } #[inline] -pub fn new_bitfield_1(res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +pub fn new_bitfield_1(ae: __u16, res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); -__bindgen_bitfield_unit.set(0usize, 4u8, { +__bindgen_bitfield_unit.set(0usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); +__bindgen_bitfield_unit.set(1usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); diff --git a/src/riscv64/netlink.rs b/src/riscv64/netlink.rs index 9c6c594c..325a3afe 100644 --- a/src/riscv64/netlink.rs +++ b/src/riscv64/netlink.rs @@ -245,6 +245,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -696,6 +702,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -825,6 +832,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1086,6 +1094,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1665,7 +1674,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2125,7 +2135,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/riscv64/prctl.rs b/src/riscv64/prctl.rs index cccf5ccd..e07b29fa 100644 --- a/src/riscv64/prctl.rs +++ b/src/riscv64/prctl.rs @@ -260,3 +260,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/riscv64/ptrace.rs b/src/riscv64/ptrace.rs index 22195df5..f6511b28 100644 --- a/src/riscv64/ptrace.rs +++ b/src/riscv64/ptrace.rs @@ -438,6 +438,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/riscv64/xdp.rs b/src/riscv64/xdp.rs index 132f82cd..cf4b82a7 100644 --- a/src/riscv64/xdp.rs +++ b/src/riscv64/xdp.rs @@ -111,6 +111,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -181,6 +182,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/s390x/btrfs.rs b/src/s390x/btrfs.rs index b7ff51d0..2f6efbaa 100644 --- a/src/s390x/btrfs.rs +++ b/src/s390x/btrfs.rs @@ -177,7 +177,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -548,17 +553,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1357,6 +1368,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1537,7 +1551,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1853,6 +1868,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/s390x/elf_uapi.rs b/src/s390x/elf_uapi.rs index ccaf20bf..590b622b 100644 --- a/src/s390x/elf_uapi.rs +++ b/src/s390x/elf_uapi.rs @@ -58,6 +58,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -66,6 +67,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -251,6 +253,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -357,6 +393,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -372,6 +409,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -379,6 +417,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -403,8 +443,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -442,86 +492,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/s390x/general.rs b/src/s390x/general.rs index 9c0c159d..b2f3bf34 100644 --- a/src/s390x/general.rs +++ b/src/s390x/general.rs @@ -292,7 +292,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1023,9 +1028,9 @@ pub sa_flags: crate::ctypes::c_ulong, pub sa_restorer: __sigrestore_t, pub sa_mask: kernel_sigset_t, } -pub const LINUX_VERSION_CODE: u32 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_VECTOR_SIZE_ARCH: u32 = 1; @@ -1421,6 +1426,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1727,6 +1735,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2659,6 +2668,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2704,6 +2714,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/s390x/if_arp.rs b/src/s390x/if_arp.rs index 3e778276..97db8618 100644 --- a/src/s390x/if_arp.rs +++ b/src/s390x/if_arp.rs @@ -510,6 +510,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1124,6 +1130,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1385,6 +1392,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1812,7 +1820,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2272,7 +2281,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/s390x/io_uring.rs b/src/s390x/io_uring.rs index 4ae80908..4c84a462 100644 --- a/src/s390x/io_uring.rs +++ b/src/s390x/io_uring.rs @@ -179,7 +179,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -648,6 +653,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -809,6 +860,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -979,6 +1033,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -996,9 +1051,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1103,7 +1160,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1148,6 +1209,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1299,6 +1361,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/s390x/landlock.rs b/src/s390x/landlock.rs index d06925dc..35598c8a 100644 --- a/src/s390x/landlock.rs +++ b/src/s390x/landlock.rs @@ -85,6 +85,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/s390x/net.rs b/src/s390x/net.rs index ee4bb945..2f3e4ebd 100644 --- a/src/s390x/net.rs +++ b/src/s390x/net.rs @@ -1334,6 +1334,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1718,6 +1721,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1797,7 +1801,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1953,6 +1958,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 16777216, TCP_FLAG_CWR = 8388608, TCP_FLAG_ECE = 4194304, TCP_FLAG_URG = 2097152, @@ -1961,7 +1967,7 @@ TCP_FLAG_PSH = 524288, TCP_FLAG_RST = 262144, TCP_FLAG_SYN = 131072, TCP_FLAG_FIN = 65536, -TCP_RESERVED_BITS = 251658240, +TCP_RESERVED_BITS = 234881024, TCP_DATA_OFFSET = 4026531840, } #[repr(u32)] @@ -2170,7 +2176,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2636,24 +2643,46 @@ let val: u16 = ::core::mem::transmute(val); } #[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 3u8) 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) +self._bitfield_1.set(4usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 3u8, val as u64) +} +} +#[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(7usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 7usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 7usize, 1u8, val as u64) } } #[inline] @@ -2833,16 +2862,20 @@ let val: u16 = ::core::mem::transmute(val); } } #[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]> { +pub fn new_bitfield_1(doff: __u16, res1: __u16, ae: __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, { +__bindgen_bitfield_unit.set(4usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); +__bindgen_bitfield_unit.set(7usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); __bindgen_bitfield_unit.set(8usize, 1u8, { let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; cwr as u64 diff --git a/src/s390x/netlink.rs b/src/s390x/netlink.rs index 7eea3167..6fbd322f 100644 --- a/src/s390x/netlink.rs +++ b/src/s390x/netlink.rs @@ -259,6 +259,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -710,6 +716,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -839,6 +846,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1100,6 +1108,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1679,7 +1688,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2139,7 +2149,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/s390x/prctl.rs b/src/s390x/prctl.rs index 6f4c20f1..7b430833 100644 --- a/src/s390x/prctl.rs +++ b/src/s390x/prctl.rs @@ -274,6 +274,10 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; #[repr(C)] #[derive(Copy, Clone)] pub union __vector128__bindgen_ty_1 { diff --git a/src/s390x/ptrace.rs b/src/s390x/ptrace.rs index bad963f8..9f6c143f 100644 --- a/src/s390x/ptrace.rs +++ b/src/s390x/ptrace.rs @@ -466,6 +466,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/s390x/xdp.rs b/src/s390x/xdp.rs index 6b9bf800..0cd32a26 100644 --- a/src/s390x/xdp.rs +++ b/src/s390x/xdp.rs @@ -125,6 +125,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -195,6 +196,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/sparc/btrfs.rs b/src/sparc/btrfs.rs index 7af735b0..ee121d61 100644 --- a/src/sparc/btrfs.rs +++ b/src/sparc/btrfs.rs @@ -161,7 +161,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -532,17 +537,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1342,6 +1353,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1522,7 +1536,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1832,6 +1847,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/sparc/elf_uapi.rs b/src/sparc/elf_uapi.rs index 8cef9670..ebe0c25d 100644 --- a/src/sparc/elf_uapi.rs +++ b/src/sparc/elf_uapi.rs @@ -53,6 +53,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -61,6 +62,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -235,6 +237,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -341,6 +377,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -356,6 +393,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -363,6 +401,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -387,8 +427,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -426,86 +476,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/sparc/general.rs b/src/sparc/general.rs index 44da5839..32006c0d 100644 --- a/src/sparc/general.rs +++ b/src/sparc/general.rs @@ -277,7 +277,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1060,9 +1065,9 @@ 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 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_ADI_BLKSZ: u32 = 48; @@ -1465,6 +1470,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1771,6 +1779,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2788,6 +2797,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const KERN_FEATURE_MIXED_MODE_STACK: u32 = 1; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; @@ -2834,6 +2844,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/sparc/if_arp.rs b/src/sparc/if_arp.rs index 502e481c..965a4770 100644 --- a/src/sparc/if_arp.rs +++ b/src/sparc/if_arp.rs @@ -494,6 +494,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1324,6 +1330,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1585,6 +1592,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -2012,7 +2020,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2472,7 +2481,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/sparc/io_uring.rs b/src/sparc/io_uring.rs index 6ab08a2e..f7d61b64 100644 --- a/src/sparc/io_uring.rs +++ b/src/sparc/io_uring.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -632,6 +637,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -794,6 +845,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -964,6 +1018,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -981,9 +1036,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1088,7 +1145,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1133,6 +1194,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1278,6 +1340,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/sparc/landlock.rs b/src/sparc/landlock.rs index fb2f6795..31645533 100644 --- a/src/sparc/landlock.rs +++ b/src/sparc/landlock.rs @@ -69,6 +69,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/sparc/net.rs b/src/sparc/net.rs index d1b3bea7..407b7763 100644 --- a/src/sparc/net.rs +++ b/src/sparc/net.rs @@ -1528,6 +1528,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1912,6 +1915,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1991,7 +1995,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -2147,6 +2152,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 16777216, TCP_FLAG_CWR = 8388608, TCP_FLAG_ECE = 4194304, TCP_FLAG_URG = 2097152, @@ -2155,7 +2161,7 @@ TCP_FLAG_PSH = 524288, TCP_FLAG_RST = 262144, TCP_FLAG_SYN = 131072, TCP_FLAG_FIN = 65536, -TCP_RESERVED_BITS = 251658240, +TCP_RESERVED_BITS = 234881024, TCP_DATA_OFFSET = 4026531840, } #[repr(u32)] @@ -2364,7 +2370,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2824,24 +2831,46 @@ let val: u16 = ::core::mem::transmute(val); } #[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 3u8) 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) +self._bitfield_1.set(4usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 3u8, val as u64) +} +} +#[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(7usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 7usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 7usize, 1u8, val as u64) } } #[inline] @@ -3021,16 +3050,20 @@ let val: u16 = ::core::mem::transmute(val); } } #[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]> { +pub fn new_bitfield_1(doff: __u16, res1: __u16, ae: __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, { +__bindgen_bitfield_unit.set(4usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); +__bindgen_bitfield_unit.set(7usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); __bindgen_bitfield_unit.set(8usize, 1u8, { let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; cwr as u64 diff --git a/src/sparc/netlink.rs b/src/sparc/netlink.rs index 98fd98cb..3db7a631 100644 --- a/src/sparc/netlink.rs +++ b/src/sparc/netlink.rs @@ -243,6 +243,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -694,6 +700,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -823,6 +830,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1084,6 +1092,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1663,7 +1672,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2123,7 +2133,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/sparc/prctl.rs b/src/sparc/prctl.rs index 0f3f1cad..738a825f 100644 --- a/src/sparc/prctl.rs +++ b/src/sparc/prctl.rs @@ -258,3 +258,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/sparc/ptrace.rs b/src/sparc/ptrace.rs index b4c6f2f5..e4251551 100644 --- a/src/sparc/ptrace.rs +++ b/src/sparc/ptrace.rs @@ -372,6 +372,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/sparc/xdp.rs b/src/sparc/xdp.rs index be90b473..1175fcee 100644 --- a/src/sparc/xdp.rs +++ b/src/sparc/xdp.rs @@ -109,6 +109,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -179,6 +180,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/sparc64/btrfs.rs b/src/sparc64/btrfs.rs index a91fde14..8082bf8f 100644 --- a/src/sparc64/btrfs.rs +++ b/src/sparc64/btrfs.rs @@ -169,7 +169,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -540,17 +545,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1350,6 +1361,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1530,7 +1544,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1840,6 +1855,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/sparc64/elf_uapi.rs b/src/sparc64/elf_uapi.rs index e691b02a..b20ecb91 100644 --- a/src/sparc64/elf_uapi.rs +++ b/src/sparc64/elf_uapi.rs @@ -55,6 +55,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -63,6 +64,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -243,6 +245,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -349,6 +385,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -364,6 +401,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -371,6 +409,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -395,8 +435,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -434,86 +484,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/sparc64/general.rs b/src/sparc64/general.rs index 727e4dde..4a6a67be 100644 --- a/src/sparc64/general.rs +++ b/src/sparc64/general.rs @@ -285,7 +285,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1057,9 +1062,9 @@ 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 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_ADI_BLKSZ: u32 = 48; @@ -1459,6 +1464,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1765,6 +1773,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2745,6 +2754,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const KERN_FEATURE_MIXED_MODE_STACK: u32 = 1; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; @@ -2791,6 +2801,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/sparc64/if_arp.rs b/src/sparc64/if_arp.rs index fe1736cf..2985dbc8 100644 --- a/src/sparc64/if_arp.rs +++ b/src/sparc64/if_arp.rs @@ -502,6 +502,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1332,6 +1338,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1593,6 +1600,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -2020,7 +2028,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2480,7 +2489,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/sparc64/io_uring.rs b/src/sparc64/io_uring.rs index a37d024f..184c2e28 100644 --- a/src/sparc64/io_uring.rs +++ b/src/sparc64/io_uring.rs @@ -171,7 +171,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -634,6 +639,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -796,6 +847,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -966,6 +1020,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -983,9 +1038,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1090,7 +1147,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1135,6 +1196,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1280,6 +1342,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/sparc64/landlock.rs b/src/sparc64/landlock.rs index c668c700..3f677cae 100644 --- a/src/sparc64/landlock.rs +++ b/src/sparc64/landlock.rs @@ -77,6 +77,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/sparc64/net.rs b/src/sparc64/net.rs index 33132d8e..79028f5a 100644 --- a/src/sparc64/net.rs +++ b/src/sparc64/net.rs @@ -1542,6 +1542,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1926,6 +1929,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -2005,7 +2009,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -2161,6 +2166,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 16777216, TCP_FLAG_CWR = 8388608, TCP_FLAG_ECE = 4194304, TCP_FLAG_URG = 2097152, @@ -2169,7 +2175,7 @@ TCP_FLAG_PSH = 524288, TCP_FLAG_RST = 262144, TCP_FLAG_SYN = 131072, TCP_FLAG_FIN = 65536, -TCP_RESERVED_BITS = 251658240, +TCP_RESERVED_BITS = 234881024, TCP_DATA_OFFSET = 4026531840, } #[repr(u32)] @@ -2378,7 +2384,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2838,24 +2845,46 @@ let val: u16 = ::core::mem::transmute(val); } #[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 3u8) 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) +self._bitfield_1.set(4usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 3u8, val as u64) +} +} +#[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(7usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 7usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 7usize, 1u8, val as u64) } } #[inline] @@ -3035,16 +3064,20 @@ let val: u16 = ::core::mem::transmute(val); } } #[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]> { +pub fn new_bitfield_1(doff: __u16, res1: __u16, ae: __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, { +__bindgen_bitfield_unit.set(4usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); +__bindgen_bitfield_unit.set(7usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); __bindgen_bitfield_unit.set(8usize, 1u8, { let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; cwr as u64 diff --git a/src/sparc64/netlink.rs b/src/sparc64/netlink.rs index 0fc4d7b2..8371300b 100644 --- a/src/sparc64/netlink.rs +++ b/src/sparc64/netlink.rs @@ -251,6 +251,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -702,6 +708,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -831,6 +838,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1092,6 +1100,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1671,7 +1680,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2131,7 +2141,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/sparc64/prctl.rs b/src/sparc64/prctl.rs index a9fff701..ce01b5a6 100644 --- a/src/sparc64/prctl.rs +++ b/src/sparc64/prctl.rs @@ -266,3 +266,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/sparc64/ptrace.rs b/src/sparc64/ptrace.rs index d128c6d0..b3f47c6a 100644 --- a/src/sparc64/ptrace.rs +++ b/src/sparc64/ptrace.rs @@ -415,6 +415,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/sparc64/xdp.rs b/src/sparc64/xdp.rs index 381065bb..6e89401a 100644 --- a/src/sparc64/xdp.rs +++ b/src/sparc64/xdp.rs @@ -117,6 +117,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -187,6 +188,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/x32/btrfs.rs b/src/x32/btrfs.rs index 772ae198..eee2306c 100644 --- a/src/x32/btrfs.rs +++ b/src/x32/btrfs.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -534,17 +539,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1343,6 +1354,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1523,7 +1537,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1833,6 +1848,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/x32/elf_uapi.rs b/src/x32/elf_uapi.rs index 08a756c2..f0d5b970 100644 --- a/src/x32/elf_uapi.rs +++ b/src/x32/elf_uapi.rs @@ -55,6 +55,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -63,6 +64,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -237,6 +239,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -343,6 +379,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -358,6 +395,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -365,6 +403,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -389,8 +429,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -428,86 +478,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/x32/general.rs b/src/x32/general.rs index e1f9a3a4..815f9879 100644 --- a/src/x32/general.rs +++ b/src/x32/general.rs @@ -278,7 +278,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1036,9 +1041,9 @@ pub sa_flags: crate::ctypes::c_ulong, pub sa_restorer: __sigrestore_t, pub sa_mask: kernel_sigset_t, } -pub const LINUX_VERSION_CODE: u32 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_VECTOR_SIZE_ARCH: u32 = 3; @@ -1437,6 +1442,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1745,6 +1753,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2625,6 +2634,7 @@ pub const __NR_setxattrat: u32 = 1073742287; pub const __NR_getxattrat: u32 = 1073742288; pub const __NR_listxattrat: u32 = 1073742289; pub const __NR_removexattrat: u32 = 1073742290; +pub const __NR_open_tree_attr: u32 = 1073742291; pub const __NR_rt_sigaction: u32 = 1073742336; pub const __NR_rt_sigreturn: u32 = 1073742337; pub const __NR_ioctl: u32 = 1073742338; @@ -2706,6 +2716,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/x32/if_arp.rs b/src/x32/if_arp.rs index 645dc0e7..3c69e770 100644 --- a/src/x32/if_arp.rs +++ b/src/x32/if_arp.rs @@ -496,6 +496,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1110,6 +1116,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1371,6 +1378,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1798,7 +1806,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2258,7 +2267,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/x32/io_uring.rs b/src/x32/io_uring.rs index cdd1f50a..79a54a09 100644 --- a/src/x32/io_uring.rs +++ b/src/x32/io_uring.rs @@ -165,7 +165,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -634,6 +639,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -795,6 +846,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -965,6 +1019,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -982,9 +1037,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1089,7 +1146,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1134,6 +1195,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1279,6 +1341,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/x32/landlock.rs b/src/x32/landlock.rs index ddc8754f..12f8e889 100644 --- a/src/x32/landlock.rs +++ b/src/x32/landlock.rs @@ -71,6 +71,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/x32/net.rs b/src/x32/net.rs index 51a2de36..e40f5a44 100644 --- a/src/x32/net.rs +++ b/src/x32/net.rs @@ -1322,6 +1322,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1706,6 +1709,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1785,7 +1789,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1941,6 +1946,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 1, TCP_FLAG_CWR = 32768, TCP_FLAG_ECE = 16384, TCP_FLAG_URG = 8192, @@ -1949,7 +1955,7 @@ TCP_FLAG_PSH = 2048, TCP_FLAG_RST = 1024, TCP_FLAG_SYN = 512, TCP_FLAG_FIN = 256, -TCP_RESERVED_BITS = 15, +TCP_RESERVED_BITS = 14, TCP_DATA_OFFSET = 240, } #[repr(u32)] @@ -2158,7 +2164,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2595,25 +2602,47 @@ __bindgen_bitfield_unit } impl tcphdr { #[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u16) } } #[inline] pub fn set_res1(&mut self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -self._bitfield_1.set(0usize, 4u8, val as u64) +self._bitfield_1.set(1usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 3u8, val as u64) } } #[inline] @@ -2815,9 +2844,13 @@ let val: u16 = ::core::mem::transmute(val); } } #[inline] -pub fn new_bitfield_1(res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +pub fn new_bitfield_1(ae: __u16, res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); -__bindgen_bitfield_unit.set(0usize, 4u8, { +__bindgen_bitfield_unit.set(0usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); +__bindgen_bitfield_unit.set(1usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); diff --git a/src/x32/netlink.rs b/src/x32/netlink.rs index 86ce96c2..5317c016 100644 --- a/src/x32/netlink.rs +++ b/src/x32/netlink.rs @@ -245,6 +245,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -696,6 +702,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -825,6 +832,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1086,6 +1094,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1665,7 +1674,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2125,7 +2135,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/x32/prctl.rs b/src/x32/prctl.rs index 8335e211..93a1cf3b 100644 --- a/src/x32/prctl.rs +++ b/src/x32/prctl.rs @@ -260,3 +260,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/x32/ptrace.rs b/src/x32/ptrace.rs index 35aac4aa..74290c94 100644 --- a/src/x32/ptrace.rs +++ b/src/x32/ptrace.rs @@ -373,6 +373,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/x32/xdp.rs b/src/x32/xdp.rs index 60d1259f..39cc09cf 100644 --- a/src/x32/xdp.rs +++ b/src/x32/xdp.rs @@ -111,6 +111,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -181,6 +182,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/x86/btrfs.rs b/src/x86/btrfs.rs index 908238e0..fc0ec3d2 100644 --- a/src/x86/btrfs.rs +++ b/src/x86/btrfs.rs @@ -161,7 +161,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -532,17 +537,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1341,6 +1352,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1521,7 +1535,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1831,6 +1846,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/x86/elf_uapi.rs b/src/x86/elf_uapi.rs index 187f123d..ef16ad67 100644 --- a/src/x86/elf_uapi.rs +++ b/src/x86/elf_uapi.rs @@ -53,6 +53,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -61,6 +62,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -235,6 +237,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -341,6 +377,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -356,6 +393,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -363,6 +401,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -387,8 +427,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -426,86 +476,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/x86/general.rs b/src/x86/general.rs index c44fe0c4..295e1f54 100644 --- a/src/x86/general.rs +++ b/src/x86/general.rs @@ -275,7 +275,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1057,9 +1062,9 @@ pub sa_flags: crate::ctypes::c_ulong, pub sa_restorer: __sigrestore_t, pub sa_mask: kernel_sigset_t, } -pub const LINUX_VERSION_CODE: u32 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO: u32 = 32; pub const AT_SYSINFO_EHDR: u32 = 33; @@ -1459,6 +1464,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1767,6 +1775,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2771,6 +2780,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2816,6 +2826,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/x86/if_arp.rs b/src/x86/if_arp.rs index 6c9bd7c0..0cb18649 100644 --- a/src/x86/if_arp.rs +++ b/src/x86/if_arp.rs @@ -496,6 +496,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1110,6 +1116,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1371,6 +1378,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1798,7 +1806,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2258,7 +2267,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/x86/io_uring.rs b/src/x86/io_uring.rs index edfdf9d0..3a0851cc 100644 --- a/src/x86/io_uring.rs +++ b/src/x86/io_uring.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -636,6 +641,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -797,6 +848,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -967,6 +1021,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -984,9 +1039,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1091,7 +1148,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1136,6 +1197,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1281,6 +1343,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/x86/landlock.rs b/src/x86/landlock.rs index 422350cd..a048f110 100644 --- a/src/x86/landlock.rs +++ b/src/x86/landlock.rs @@ -69,6 +69,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/x86/net.rs b/src/x86/net.rs index a96912e3..19b75cb3 100644 --- a/src/x86/net.rs +++ b/src/x86/net.rs @@ -1314,6 +1314,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1698,6 +1701,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1777,7 +1781,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1933,6 +1938,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 1, TCP_FLAG_CWR = 32768, TCP_FLAG_ECE = 16384, TCP_FLAG_URG = 8192, @@ -1941,7 +1947,7 @@ TCP_FLAG_PSH = 2048, TCP_FLAG_RST = 1024, TCP_FLAG_SYN = 512, TCP_FLAG_FIN = 256, -TCP_RESERVED_BITS = 15, +TCP_RESERVED_BITS = 14, TCP_DATA_OFFSET = 240, } #[repr(u32)] @@ -2150,7 +2156,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2587,25 +2594,47 @@ __bindgen_bitfield_unit } impl tcphdr { #[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u16) } } #[inline] pub fn set_res1(&mut self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -self._bitfield_1.set(0usize, 4u8, val as u64) +self._bitfield_1.set(1usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 3u8, val as u64) } } #[inline] @@ -2807,9 +2836,13 @@ let val: u16 = ::core::mem::transmute(val); } } #[inline] -pub fn new_bitfield_1(res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +pub fn new_bitfield_1(ae: __u16, res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); -__bindgen_bitfield_unit.set(0usize, 4u8, { +__bindgen_bitfield_unit.set(0usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); +__bindgen_bitfield_unit.set(1usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); diff --git a/src/x86/netlink.rs b/src/x86/netlink.rs index fc0ebd15..283ac7ca 100644 --- a/src/x86/netlink.rs +++ b/src/x86/netlink.rs @@ -243,6 +243,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -694,6 +700,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -823,6 +830,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1084,6 +1092,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1663,7 +1672,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2123,7 +2133,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/x86/prctl.rs b/src/x86/prctl.rs index fc0bf893..4e0828ea 100644 --- a/src/x86/prctl.rs +++ b/src/x86/prctl.rs @@ -258,3 +258,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/x86/ptrace.rs b/src/x86/ptrace.rs index 6b6b859d..9186051c 100644 --- a/src/x86/ptrace.rs +++ b/src/x86/ptrace.rs @@ -367,6 +367,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/x86/xdp.rs b/src/x86/xdp.rs index 875b5f91..428f9cdc 100644 --- a/src/x86/xdp.rs +++ b/src/x86/xdp.rs @@ -109,6 +109,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -179,6 +180,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)] diff --git a/src/x86_64/btrfs.rs b/src/x86_64/btrfs.rs index e99f6831..990ef37e 100644 --- a/src/x86_64/btrfs.rs +++ b/src/x86_64/btrfs.rs @@ -163,7 +163,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -534,17 +539,23 @@ pub src_length: __u64, pub dest_offset: __u64, } #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(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 __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, pub unused: [__u32; 4usize], } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct btrfs_ioctl_same_extent_info { pub fd: __s64, pub logical_offset: __u64, @@ -1343,6 +1354,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1523,7 +1537,8 @@ pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; -pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 3; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 7; 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; @@ -1833,6 +1848,12 @@ pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, } #[repr(C)] #[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] pub union btrfs_disk_balance_args__bindgen_ty_1 { pub usage: __le64, pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, diff --git a/src/x86_64/elf_uapi.rs b/src/x86_64/elf_uapi.rs index e28e9277..0a6eda48 100644 --- a/src/x86_64/elf_uapi.rs +++ b/src/x86_64/elf_uapi.rs @@ -55,6 +55,7 @@ pub type Elf32_Half = __u16; pub type Elf32_Off = __u32; pub type Elf32_Sword = __s32; pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; pub type Elf64_Addr = __u64; pub type Elf64_Half = __u16; pub type Elf64_SHalf = __s16; @@ -63,6 +64,7 @@ pub type Elf64_Sword = __s32; pub type Elf64_Word = __u32; pub type Elf64_Xword = __u64; pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; pub type Elf32_Rel = elf32_rel; pub type Elf64_Rel = elf64_rel; pub type Elf32_Rela = elf32_rela; @@ -237,6 +239,40 @@ pub n_namesz: Elf64_Word, pub n_descsz: Elf64_Word, pub n_type: Elf64_Word, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} pub const __BITS_PER_LONG_LONG: u32 = 64; pub const EM_NONE: u32 = 0; pub const EM_M32: u32 = 1; @@ -343,6 +379,7 @@ pub const DT_HIOS: u32 = 1879044096; pub const DT_VALRNGLO: u32 = 1879047424; pub const DT_VALRNGHI: u32 = 1879047679; pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; pub const DT_ADDRRNGHI: u32 = 1879047935; pub const DT_VERSYM: u32 = 1879048176; pub const DT_RELACOUNT: u32 = 1879048185; @@ -358,6 +395,7 @@ pub const DT_HIPROC: u32 = 2147483647; pub const STB_LOCAL: u32 = 0; pub const STB_GLOBAL: u32 = 1; pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; pub const STT_NOTYPE: u32 = 0; pub const STT_OBJECT: u32 = 1; pub const STT_FUNC: u32 = 2; @@ -365,6 +403,8 @@ pub const STT_SECTION: u32 = 3; pub const STT_FILE: u32 = 4; pub const STT_COMMON: u32 = 5; pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; pub const EI_NIDENT: u32 = 16; pub const PF_R: u32 = 4; pub const PF_W: u32 = 2; @@ -389,8 +429,18 @@ pub const SHT_HIUSER: u32 = 4294967295; pub const SHF_WRITE: u32 = 1; pub const SHF_ALLOC: u32 = 2; pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; pub const SHF_RELA_LIVEPATCH: u32 = 1048576; pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; pub const SHF_MASKPROC: u32 = 4026531840; pub const SHN_UNDEF: u32 = 0; pub const SHN_LORESERVE: u32 = 65280; @@ -428,86 +478,166 @@ pub const EV_NUM: u32 = 2; pub const ELFOSABI_NONE: u32 = 0; pub const ELFOSABI_LINUX: u32 = 3; pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; -pub const 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)] diff --git a/src/x86_64/general.rs b/src/x86_64/general.rs index f742dfce..fa3f0597 100644 --- a/src/x86_64/general.rs +++ b/src/x86_64/general.rs @@ -277,7 +277,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -1034,9 +1039,9 @@ pub sa_flags: crate::ctypes::c_ulong, pub sa_restorer: __sigrestore_t, pub sa_mask: kernel_sigset_t, } -pub const LINUX_VERSION_CODE: u32 = 396800; +pub const LINUX_VERSION_CODE: u32 = 397056; pub const LINUX_VERSION_MAJOR: u32 = 6; -pub const LINUX_VERSION_PATCHLEVEL: u32 = 14; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 15; pub const LINUX_VERSION_SUBLEVEL: u32 = 0; pub const AT_SYSINFO_EHDR: u32 = 33; pub const AT_VECTOR_SIZE_ARCH: u32 = 3; @@ -1432,6 +1437,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -1740,6 +1748,7 @@ pub const MADV_COLLAPSE: u32 = 25; pub const MADV_GUARD_INSTALL: u32 = 102; pub const MADV_GUARD_REMOVE: u32 = 103; pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; pub const PKEY_DISABLE_ACCESS: u32 = 1; pub const PKEY_DISABLE_WRITE: u32 = 2; pub const PKEY_ACCESS_MASK: u32 = 3; @@ -2667,6 +2676,7 @@ pub const __NR_setxattrat: u32 = 463; pub const __NR_getxattrat: u32 = 464; pub const __NR_listxattrat: u32 = 465; pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; pub const WNOHANG: u32 = 1; pub const WUNTRACED: u32 = 2; pub const WSTOPPED: u32 = 2; @@ -2712,6 +2722,8 @@ pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; diff --git a/src/x86_64/if_arp.rs b/src/x86_64/if_arp.rs index df7b2322..c37dd6c5 100644 --- a/src/x86_64/if_arp.rs +++ b/src/x86_64/if_arp.rs @@ -496,6 +496,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -1110,6 +1116,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; @@ -1371,6 +1378,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; @@ -1798,7 +1806,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2258,7 +2267,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/x86_64/io_uring.rs b/src/x86_64/io_uring.rs index 2242f7f2..39e763e8 100644 --- a/src/x86_64/io_uring.rs +++ b/src/x86_64/io_uring.rs @@ -165,7 +165,12 @@ pub opt_num: __u32, pub opt_array: __u32, pub opt_sec_num: __u32, pub opt_sec_array: __u32, -pub __spare2: [__u64; 46usize], +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], pub str_: __IncompleteArrayField, } #[repr(C)] @@ -634,6 +639,52 @@ pub controllen: __u32, pub payloadlen: __u32, pub flags: __u32, } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub __resv1: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} pub const NR_OPEN: u32 = 1024; pub const NGROUPS_MAX: u32 = 65536; pub const ARG_MAX: u32 = 131072; @@ -795,6 +846,9 @@ pub const STATMOUNT_FS_SUBTYPE: u32 = 256; pub const STATMOUNT_SB_SOURCE: u32 = 512; pub const STATMOUNT_OPT_ARRAY: u32 = 1024; pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; pub const LSMT_ROOT: i32 = -1; pub const LISTMOUNT_REVERSE: u32 = 1; pub const INR_OPEN_CUR: u32 = 1024; @@ -965,6 +1019,7 @@ pub const IORING_ENTER_EXT_ARG: u32 = 8; pub const IORING_ENTER_REGISTERED_RING: u32 = 16; pub const IORING_ENTER_ABS_TIMER: u32 = 32; pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; pub const IORING_FEAT_NODROP: u32 = 2; pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; @@ -982,9 +1037,11 @@ pub const IORING_FEAT_REG_REG_RING: u32 = 8192; pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; pub const IORING_REGISTER_FILES_SKIP: i32 = -2; pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; @@ -1089,7 +1146,11 @@ IORING_OP_FIXED_FD_INSTALL = 54, IORING_OP_FTRUNCATE = 55, IORING_OP_BIND = 56, IORING_OP_LISTEN = 57, -IORING_OP_LAST = 58, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_LAST = 62, } #[repr(u32)] #[non_exhaustive] @@ -1134,6 +1195,7 @@ IORING_UNREGISTER_NAPI = 28, IORING_REGISTER_CLOCK = 29, IORING_REGISTER_CLONE_BUFFERS = 30, IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, IORING_REGISTER_RESIZE_RINGS = 33, IORING_REGISTER_MEM_REGION = 34, IORING_REGISTER_LAST = 35, @@ -1279,6 +1341,7 @@ pub buf_group: __u16, pub union io_uring_sqe__bindgen_ty_5 { pub splice_fd_in: __s32, pub file_index: __u32, +pub zcrx_ifq_idx: __u32, pub optlen: __u32, pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, } diff --git a/src/x86_64/landlock.rs b/src/x86_64/landlock.rs index 78f9a70f..82a16b73 100644 --- a/src/x86_64/landlock.rs +++ b/src/x86_64/landlock.rs @@ -71,6 +71,10 @@ pub port: __u64, } pub const __BITS_PER_LONG_LONG: u32 = 64; pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; diff --git a/src/x86_64/net.rs b/src/x86_64/net.rs index d62ef9d6..7a3c92e8 100644 --- a/src/x86_64/net.rs +++ b/src/x86_64/net.rs @@ -1320,6 +1320,9 @@ pub const TCP_AO_INFO: u32 = 40; pub const TCP_AO_GET_KEYS: u32 = 41; pub const TCP_AO_REPAIR: u32 = 42; pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; pub const TCP_REPAIR_ON: u32 = 1; pub const TCP_REPAIR_OFF: u32 = 0; pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; @@ -1704,6 +1707,7 @@ pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; @@ -1783,7 +1787,8 @@ pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIM pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; -pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; #[repr(u32)] #[non_exhaustive] @@ -1939,6 +1944,7 @@ SS_DISCONNECTING = 4, #[non_exhaustive] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 1, TCP_FLAG_CWR = 32768, TCP_FLAG_ECE = 16384, TCP_FLAG_URG = 8192, @@ -1947,7 +1953,7 @@ TCP_FLAG_PSH = 2048, TCP_FLAG_RST = 1024, TCP_FLAG_SYN = 512, TCP_FLAG_FIN = 256, -TCP_RESERVED_BITS = 15, +TCP_RESERVED_BITS = 14, TCP_DATA_OFFSET = 240, } #[repr(u32)] @@ -2156,7 +2162,8 @@ SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, SOF_TIMESTAMPING_BIND_PHC = 32768, SOF_TIMESTAMPING_OPT_ID_TCP = 65536, SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, -SOF_TIMESTAMPING_MASK = 262143, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, } #[repr(u32)] #[non_exhaustive] @@ -2593,25 +2600,47 @@ __bindgen_bitfield_unit } impl tcphdr { #[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] pub fn res1(&self) -> __u16 { -unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u16) } } #[inline] pub fn set_res1(&mut self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -self._bitfield_1.set(0usize, 4u8, val as u64) +self._bitfield_1.set(1usize, 3u8, val as u64) } } #[inline] pub unsafe fn res1_raw(this: *const Self) -> __u16 { -unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u16) } +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 3u8) as u16) } } #[inline] pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { unsafe { let val: u16 = ::core::mem::transmute(val); -<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 3u8, val as u64) } } #[inline] @@ -2813,9 +2842,13 @@ let val: u16 = ::core::mem::transmute(val); } } #[inline] -pub fn new_bitfield_1(res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +pub fn new_bitfield_1(ae: __u16, res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); -__bindgen_bitfield_unit.set(0usize, 4u8, { +__bindgen_bitfield_unit.set(0usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); +__bindgen_bitfield_unit.set(1usize, 3u8, { let res1: u16 = unsafe { ::core::mem::transmute(res1) }; res1 as u64 }); diff --git a/src/x86_64/netlink.rs b/src/x86_64/netlink.rs index ac4d2485..fdc36817 100644 --- a/src/x86_64/netlink.rs +++ b/src/x86_64/netlink.rs @@ -245,6 +245,12 @@ pub high: __be16, } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct ifla_vf_mac { pub vf: __u32, pub mac: [__u8; 32usize], @@ -696,6 +702,7 @@ pub const RTPROT_DHCP: u32 = 16; pub const RTPROT_MROUTED: u32 = 17; pub const RTPROT_KEEPALIVED: u32 = 18; pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; pub const RTPROT_OPENR: u32 = 99; pub const RTPROT_BGP: u32 = 186; pub const RTPROT_ISIS: u32 = 187; @@ -825,6 +832,7 @@ pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_M pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; @@ -1086,6 +1094,7 @@ pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; @@ -1665,7 +1674,8 @@ IFLA_GSO_IPV4_MAX_SIZE = 63, IFLA_GRO_IPV4_MAX_SIZE = 64, IFLA_DPLL_PIN = 65, IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, -__IFLA_MAX = 67, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, } #[repr(u32)] #[non_exhaustive] @@ -2125,7 +2135,8 @@ IFLA_GENEVE_LABEL = 11, IFLA_GENEVE_TTL_INHERIT = 12, IFLA_GENEVE_DF = 13, IFLA_GENEVE_INNER_PROTO_INHERIT = 14, -__IFLA_GENEVE_MAX = 15, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, } #[repr(u32)] #[non_exhaustive] diff --git a/src/x86_64/prctl.rs b/src/x86_64/prctl.rs index e21d3500..527f9110 100644 --- a/src/x86_64/prctl.rs +++ b/src/x86_64/prctl.rs @@ -260,3 +260,7 @@ pub const PR_SHADOW_STACK_ENABLE: u32 = 1; pub const PR_SHADOW_STACK_WRITE: u32 = 2; pub const PR_SHADOW_STACK_PUSH: u32 = 4; pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; diff --git a/src/x86_64/ptrace.rs b/src/x86_64/ptrace.rs index 2d213347..c2e126eb 100644 --- a/src/x86_64/ptrace.rs +++ b/src/x86_64/ptrace.rs @@ -373,6 +373,8 @@ pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; pub const AUDIT_IPE_ACCESS: u32 = 1420; pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; diff --git a/src/x86_64/xdp.rs b/src/x86_64/xdp.rs index c9fde1d0..511d3159 100644 --- a/src/x86_64/xdp.rs +++ b/src/x86_64/xdp.rs @@ -111,6 +111,7 @@ pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { pub csum_start: __u16, pub csum_offset: __u16, +pub launch_time: __u64, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -181,6 +182,7 @@ pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; pub const XDP_PKT_CONTD: u32 = 1; pub const XDP_TX_METADATA: u32 = 2; #[repr(C)]