use bitflags::bitflags;
#[allow(non_upper_case_globals)]
#[rustfmt::skip]
mod syscalls {
use std::os::raw::c_long;
pub const SYS_open_tree : c_long = 428;
pub const SYS_move_mount : c_long = 429;
pub const SYS_fsopen : c_long = 430;
pub const SYS_fsconfig : c_long = 431;
pub const SYS_fsmount : c_long = 432;
pub const SYS_fspick : c_long = 433;
pub const SYS_mount_setattr : c_long = 442;
pub const SYS_statmount : c_long = 457;
pub const SYS_listmount : c_long = 458;
}
pub use syscalls::*;
bitflags! {
#[derive(Clone, Copy, Debug)]
pub struct MountAttr: std::os::raw::c_uint {
const RDONLY = 0x0000_0001;
const NOSUID = 0x0000_0002;
const NODEV = 0x0000_0004;
const NOEXEC = 0x0000_0008;
const RELATIME = 0x0000_0000;
const NOATIME = 0x0000_0010;
const STRICTATIME = 0x0000_0020;
const NODIRATIME = 0x0000_0080;
const IDMAP = 0x0010_0000;
const NOSYMFOLLOW = 0x0020_0000;
}
}
bitflags! {
#[derive(Clone, Copy, Debug)]
pub struct StatMountFlags: u64 {
const SB_BASIC = 0x00000001;
const MNT_BASIC = 0x00000002;
const PROPAGATE_FROM = 0x00000004;
const MNT_ROOT = 0x00000008;
const MNT_POINT = 0x00000010;
const FS_TYPE = 0x00000020;
const MNT_NS_ID = 0x00000040;
const MNT_OPTS = 0x00000080;
const FS_SUBTYPE = 0x00000100;
const SB_SOURCE = 0x00000200;
const OPT_ARRAY = 0x00000400;
const OPT_SEC_ARRAY = 0x00000800;
}
}
bitflags! {
#[derive(Clone, Copy, Debug)]
pub struct SuperblockFlags: u32 {
const RDONLY = 1 << 0;
const SYNCHRONOUS = 1 << 4;
const DIRSYNC = 1 << 7;
const LAZYTIME = 1 << 25;
}
}
bitflags! {
#[derive(Clone, Copy, Debug)]
pub struct MountPropagation: u64 {
const UNBINDABLE = 1<<17;
const PRIVATE = 1<<18;
const SLAVE = 1<<19;
const SHARED = 1<<20;
}
}