Skip to content

Commit

Permalink
Add a rustix::fs::STATX_ATTR_MOUNT_ROOT constant.
Browse files Browse the repository at this point in the history
Add a `STATX_ATTR_MOUNT_ROOT` constant for musl libc compat
  • Loading branch information
JustSoup312 committed Oct 28, 2024
1 parent 7d4a719 commit ed868c5
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 2 deletions.
6 changes: 6 additions & 0 deletions src/backend/libc/c.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@ pub(crate) const PROC_SUPER_MAGIC: u32 = 0x0000_9fa0;
#[cfg(all(linux_kernel, target_env = "musl"))]
pub(crate) const NFS_SUPER_MAGIC: u32 = 0x0000_6969;

/// `STATX_ATTR_MOUNT_ROOT`—Address of the root of a mount
#[cfg(all(linux_kernel, target_env = "musl"))]
pub(crate) const STATX_ATTR_MOUNT_ROOT: c_int = 0x2000;
#[cfg(all(linux_kernel, not(target_env = "musl")))]
pub(crate) const STATX_ATTR_MOUNT_ROOT: c_int = libc::STATX_ATTR_MOUNT_ROOT;

#[cfg(feature = "process")]
#[cfg(not(any(target_os = "espidf", target_os = "wasi")))]
pub(crate) const EXIT_SIGNALED_SIGABRT: c_int = 128 + SIGABRT as c_int;
Expand Down
4 changes: 2 additions & 2 deletions src/backend/linux_raw/c.rs
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@ pub(crate) use linux_raw_sys::general::epoll_event;
)
))]
pub(crate) use linux_raw_sys::general::{
AT_FDCWD, NFS_SUPER_MAGIC, O_LARGEFILE, PROC_SUPER_MAGIC, UTIME_NOW, UTIME_OMIT, XATTR_CREATE,
XATTR_REPLACE,
AT_FDCWD, NFS_SUPER_MAGIC, O_LARGEFILE, PROC_SUPER_MAGIC, STATX_ATTR_MOUNT_ROOT, UTIME_NOW,
UTIME_OMIT, XATTR_CREATE, XATTR_REPLACE,
};

pub(crate) use linux_raw_sys::ioctl::{BLKPBSZGET, BLKSSZGET, FICLONE};
Expand Down
2 changes: 2 additions & 0 deletions src/fs/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,8 @@ pub use sendfile::sendfile;
pub use special::*;
#[cfg(linux_kernel)]
pub use statx::statx;
#[cfg(all(linux_kernel, target_env = "musl"))]
pub use statx::STATX_ATTR_MOUNT_ROOT;
#[cfg(not(any(
target_os = "espidf",
target_os = "redox",
Expand Down
4 changes: 4 additions & 0 deletions src/fs/statx.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ use backend::fs::syscalls::statx as _statx;
#[cfg(not(feature = "linux_4_11"))]
use compat::statx as _statx;

/// `STATX_ATTR_MOUNT_ROOT`—Address of the root of a mount
#[allow(dead_code)]
pub const STATX_ATTR_MOUNT_ROOT: u32 = backend::c::STATX_ATTR_MOUNT_ROOT as u32;

/// `statx(dirfd, path, flags, mask, statxbuf)`
///
/// This function returns [`io::Errno::NOSYS`] if `statx` is not available on
Expand Down

0 comments on commit ed868c5

Please sign in to comment.