From db0af956d2f3fb9b91ee4801e616ad986d83fac6 Mon Sep 17 00:00:00 2001 From: Dave Bakker Date: Tue, 25 Aug 2026 22:28:39 +0200 Subject: [PATCH 1/2] Expose the macOS `O_SYMLINK` flag. --- src/backend/libc/fs/types.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/backend/libc/fs/types.rs b/src/backend/libc/fs/types.rs index b8944ad7c..b93bce6d3 100644 --- a/src/backend/libc/fs/types.rs +++ b/src/backend/libc/fs/types.rs @@ -361,6 +361,10 @@ bitflags! { #[cfg(target_os = "freebsd")] const EMPTY_PATH = bitcast!(c::O_EMPTY_PATH); + /// `O_SYMLINK` + #[cfg(any(apple, target_os = "redox"))] + const SYMLINK = bitcast!(c::O_SYMLINK); + /// `O_LARGEFILE` /// /// Rustix and/or libc will automatically set this flag when From 266c9e3fe727071d970865f54b13d2b1989da079 Mon Sep 17 00:00:00 2001 From: Dave Bakker Date: Tue, 25 Aug 2026 23:06:43 +0200 Subject: [PATCH 2/2] Expose the macOS `O_NOFOLLOW_ANY` flag. --- src/backend/libc/fs/types.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/backend/libc/fs/types.rs b/src/backend/libc/fs/types.rs index b93bce6d3..4e5bcbc6a 100644 --- a/src/backend/libc/fs/types.rs +++ b/src/backend/libc/fs/types.rs @@ -365,6 +365,10 @@ bitflags! { #[cfg(any(apple, target_os = "redox"))] const SYMLINK = bitcast!(c::O_SYMLINK); + /// `O_NOFOLLOW_ANY` + #[cfg(apple)] + const NOFOLLOW_ANY = bitcast!(c::O_NOFOLLOW_ANY); + /// `O_LARGEFILE` /// /// Rustix and/or libc will automatically set this flag when