From 03f8c98cb5fd866f8870d3554e293e4ce7ea4eec Mon Sep 17 00:00:00 2001 From: Kevin Yue Date: Thu, 18 Jan 2024 08:54:08 -0500 Subject: [PATCH] Use uzers crate --- .vscode/settings.json | 1 + Cargo.lock | 32 +++++++++++----------- Cargo.toml | 2 +- crates/gpapi/Cargo.toml | 2 +- crates/gpapi/src/process/command_traits.rs | 6 ++-- 5 files changed, 22 insertions(+), 21 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index d6b5c8d..02071b0 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -43,6 +43,7 @@ "urlencoding", "userauthcookie", "utsbuf", + "uzers", "Vite", "vpnc", "vpninfo", diff --git a/Cargo.lock b/Cargo.lock index f93fe55..fab2080 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1423,7 +1423,7 @@ dependencies = [ [[package]] name = "gpapi" -version = "2.0.0-beta.1" +version = "2.0.0-beta2" dependencies = [ "anyhow", "base64 0.21.5", @@ -1444,13 +1444,13 @@ dependencies = [ "tokio", "url", "urlencoding", - "users", + "uzers", "whoami", ] [[package]] name = "gpauth" -version = "2.0.0-beta.1" +version = "2.0.0-beta2" dependencies = [ "anyhow", "clap", @@ -1470,7 +1470,7 @@ dependencies = [ [[package]] name = "gpclient" -version = "2.0.0-beta.1" +version = "2.0.0-beta2" dependencies = [ "anyhow", "clap", @@ -1491,7 +1491,7 @@ dependencies = [ [[package]] name = "gpservice" -version = "2.0.0-beta.1" +version = "2.0.0-beta2" dependencies = [ "anyhow", "axum", @@ -2446,7 +2446,7 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "openconnect" -version = "2.0.0-beta.1" +version = "2.0.0-beta2" dependencies = [ "cc", "is_executable", @@ -4378,16 +4378,6 @@ version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" -[[package]] -name = "users" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24cc0f6d6f267b73e5a2cadf007ba8f9bc39c6a6f9666f8cf25ea809a153b032" -dependencies = [ - "libc", - "log", -] - [[package]] name = "utf-8" version = "0.7.6" @@ -4409,6 +4399,16 @@ dependencies = [ "getrandom 0.2.11", ] +[[package]] +name = "uzers" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76d283dc7e8c901e79e32d077866eaf599156cbf427fffa8289aecc52c5c3f63" +dependencies = [ + "libc", + "log", +] + [[package]] name = "valuable" version = "0.1.0" diff --git a/Cargo.toml b/Cargo.toml index d885a63..ce78f9d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -36,7 +36,7 @@ futures-util = "0.3" tokio-tungstenite = "0.20.1" specta = "=2.0.0-rc.1" specta-macros = "=2.0.0-rc.1" -users = "0.11" +uzers = "0.11" whoami = "1" tauri = { version = "1.5" } thiserror = "1" diff --git a/crates/gpapi/Cargo.toml b/crates/gpapi/Cargo.toml index b5f252a..5df5b26 100644 --- a/crates/gpapi/Cargo.toml +++ b/crates/gpapi/Cargo.toml @@ -24,7 +24,7 @@ redact-engine.workspace = true url.workspace = true regex.workspace = true dotenvy_macro.workspace = true -users.workspace = true +uzers.workspace = true tauri = { workspace = true, optional = true } diff --git a/crates/gpapi/src/process/command_traits.rs b/crates/gpapi/src/process/command_traits.rs index e4dba3d..c867d6c 100644 --- a/crates/gpapi/src/process/command_traits.rs +++ b/crates/gpapi/src/process/command_traits.rs @@ -1,7 +1,7 @@ use anyhow::bail; use std::{env, ffi::OsStr}; use tokio::process::Command; -use users::{os::unix::UserExt, User}; +use uzers::{os::unix::UserExt, User}; pub trait CommandExt { fn new_pkexec>(program: S) -> Command; @@ -42,7 +42,7 @@ fn get_non_root_user() -> anyhow::Result { let user = if current_user == "root" { get_real_user()? } else { - users::get_user_by_name(¤t_user) + uzers::get_user_by_name(¤t_user) .ok_or_else(|| anyhow::anyhow!("User ({}) not found", current_user))? }; @@ -60,5 +60,5 @@ fn get_real_user() -> anyhow::Result { _ => env::var("PKEXEC_UID")?.parse::()?, }; - users::get_user_by_uid(uid).ok_or_else(|| anyhow::anyhow!("User not found")) + uzers::get_user_by_uid(uid).ok_or_else(|| anyhow::anyhow!("User not found")) }