From e01c42858e26bae9c6a010391694e2bfaf88bbfb Mon Sep 17 00:00:00 2001 From: Steve Lau Date: Sat, 8 Oct 2022 13:38:26 +0800 Subject: [PATCH] add euidaccess and eaccess on gnu/musl linux --- libc-test/semver/linux-gnu.txt | 2 ++ libc-test/semver/linux-musl.txt | 2 ++ src/unix/linux_like/linux/gnu/mod.rs | 3 +++ src/unix/linux_like/linux/musl/mod.rs | 3 +++ 4 files changed, 10 insertions(+) diff --git a/libc-test/semver/linux-gnu.txt b/libc-test/semver/linux-gnu.txt index 27bd593843951..2d918fd9d39a2 100644 --- a/libc-test/semver/linux-gnu.txt +++ b/libc-test/semver/linux-gnu.txt @@ -647,3 +647,5 @@ timex utmpname utmpx utmpxname +euidaccess +eaccess \ No newline at end of file diff --git a/libc-test/semver/linux-musl.txt b/libc-test/semver/linux-musl.txt index 764ee79060c3a..96d04e0d903b3 100644 --- a/libc-test/semver/linux-musl.txt +++ b/libc-test/semver/linux-musl.txt @@ -48,3 +48,5 @@ process_vm_writev pwritev64 reallocarray timex +euidaccess +eaccess \ No newline at end of file diff --git a/src/unix/linux_like/linux/gnu/mod.rs b/src/unix/linux_like/linux/gnu/mod.rs index 6b86dea32b746..701eb7e90525e 100644 --- a/src/unix/linux_like/linux/gnu/mod.rs +++ b/src/unix/linux_like/linux/gnu/mod.rs @@ -1315,6 +1315,9 @@ extern "C" { pub fn memfd_create(name: *const ::c_char, flags: ::c_uint) -> ::c_int; pub fn mlock2(addr: *const ::c_void, len: ::size_t, flags: ::c_uint) -> ::c_int; + + pub fn euidaccess(pathname: *const ::c_char, mode: ::c_int) -> ::c_int; + pub fn eaccess(pathname: *const ::c_char, mode: ::c_int) -> ::c_int; } extern "C" { diff --git a/src/unix/linux_like/linux/musl/mod.rs b/src/unix/linux_like/linux/musl/mod.rs index 6cdc313881dbb..894f377acfd11 100644 --- a/src/unix/linux_like/linux/musl/mod.rs +++ b/src/unix/linux_like/linux/musl/mod.rs @@ -754,6 +754,9 @@ extern "C" { pub fn memfd_create(name: *const ::c_char, flags: ::c_uint) -> ::c_int; pub fn mlock2(addr: *const ::c_void, len: ::size_t, flags: ::c_uint) -> ::c_int; pub fn malloc_usable_size(ptr: *mut ::c_void) -> ::size_t; + + pub fn euidaccess(pathname: *const ::c_char, mode: ::c_int) -> ::c_int; + pub fn eaccess(pathname: *const ::c_char, mode: ::c_int) -> ::c_int; } cfg_if! {