summaryrefslogtreecommitdiff
path: root/src/user_info.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/user_info.rs')
-rw-r--r--src/user_info.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/user_info.rs b/src/user_info.rs
index 7a42db9..a352adb 100644
--- a/src/user_info.rs
+++ b/src/user_info.rs
@@ -1,4 +1,4 @@
-use nix::unistd::{getgroups, getuid, Group, User};
+use nix::unistd::{getgroups, getuid, Gid, Group, User};
pub fn get_username() -> Option<String> {
let uid = getuid();
@@ -13,6 +13,13 @@ pub fn get_user_groups() -> Vec<String> {
.collect()
}
+pub fn get_gid(group_name: &str) -> Option<Gid> {
+ nix::unistd::Group::from_name(&group_name)
+ .ok()
+ .flatten()
+ .map(|group| group.gid)
+}
+
#[cfg(test)]
mod test {
use super::*;