diff --git a/src/header/grp/mod.rs b/src/header/grp/mod.rs index 1118cf0dd1..f8b7f90784 100644 --- a/src/header/grp/mod.rs +++ b/src/header/grp/mod.rs @@ -1,4 +1,6 @@ -//! grp implementation, following http://pubs.opengroup.org/onlinepubs/7908799/xsh/grp.h.html +//! `grp.h` implementation. +//! +//! See . #![deny(unsafe_op_in_unsafe_fn)] @@ -85,6 +87,7 @@ static mut GROUP: group = group { static LINE_READER: SyncUnsafeCell>>> = SyncUnsafeCell::new(None); +/// See . #[repr(C)] #[derive(Debug)] pub struct group { @@ -248,7 +251,9 @@ fn parse_grp(line: String, destbuf: Option) -> Result. #[unsafe(no_mangle)] pub unsafe extern "C" fn getgrgid(gid: gid_t) -> *mut group { let Ok(db) = File::open(GROUP_FILE.into(), fcntl::O_RDONLY) else { @@ -271,7 +276,9 @@ pub unsafe extern "C" fn getgrgid(gid: gid_t) -> *mut group { ptr::null_mut() } -// MT-Unsafe race:grnam locale +/// MT-Unsafe race:grnam locale +/// +/// See . #[unsafe(no_mangle)] pub unsafe extern "C" fn getgrnam(name: *const c_char) -> *mut group { let Ok(db) = File::open(GROUP_FILE.into(), fcntl::O_RDONLY) else { @@ -302,7 +309,9 @@ pub unsafe extern "C" fn getgrnam(name: *const c_char) -> *mut group { ptr::null_mut() } -// MT-Safe locale +/// MT-Safe locale +/// +/// See . #[unsafe(no_mangle)] pub unsafe extern "C" fn getgrgid_r( gid: gid_t, @@ -361,7 +370,9 @@ pub unsafe extern "C" fn getgrgid_r( 0 } -// MT-Safe locale +/// MT-Safe locale +/// +/// See . #[unsafe(no_mangle)] pub unsafe extern "C" fn getgrnam_r( name: *const c_char, @@ -405,7 +416,9 @@ pub unsafe extern "C" fn getgrnam_r( ENOENT } -// MT-Unsafe race:grent race:grentbuf locale +/// MT-Unsafe race:grent race:grentbuf locale +/// +/// See . #[unsafe(no_mangle)] pub unsafe extern "C" fn getgrent() -> *mut group { let mut line_reader = unsafe { &mut *LINE_READER.get() }; @@ -435,7 +448,9 @@ pub unsafe extern "C" fn getgrent() -> *mut group { } } -// MT-Unsafe race:grent locale +/// MT-Unsafe race:grent locale +/// +/// See . #[unsafe(no_mangle)] pub unsafe extern "C" fn endgrent() { unsafe { @@ -443,7 +458,9 @@ pub unsafe extern "C" fn endgrent() { } } -// MT-Unsafe race:grent locale +/// MT-Unsafe race:grent locale +/// +/// See . #[unsafe(no_mangle)] pub unsafe extern "C" fn setgrent() { let mut line_reader = unsafe { &mut *LINE_READER.get() }; @@ -453,8 +470,10 @@ pub unsafe extern "C" fn setgrent() { *line_reader = Some(BufReader::new(db).lines()); } -// MT-Safe locale -// Not POSIX +/// MT-Safe locale +/// Not POSIX +/// +/// See . #[unsafe(no_mangle)] pub unsafe extern "C" fn getgrouplist( user: *const c_char, @@ -521,8 +540,10 @@ pub unsafe extern "C" fn getgrouplist( } } -// MT-Safe locale -// Not POSIX +/// MT-Safe locale +/// Not POSIX +/// +/// See . #[unsafe(no_mangle)] pub unsafe extern "C" fn initgroups(user: *const c_char, gid: gid_t) -> c_int { let mut groups = [0; limits::NGROUPS_MAX];