fix geteuid

This commit is contained in:
timeshifter
2026-05-16 12:49:42 +02:00
parent a30e0f4a8c
commit 33591fa2bf
3 changed files with 11 additions and 3 deletions
Generated
+7
View File
@@ -30,6 +30,12 @@ dependencies = [
"hashbrown",
]
[[package]]
name = "libc"
version = "0.2.186"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66"
[[package]]
name = "proc-macro2"
version = "1.0.106"
@@ -160,6 +166,7 @@ name = "zfs_backup"
version = "0.1.0"
dependencies = [
"anyhow",
"libc",
"serde",
"toml",
]
+1
View File
@@ -5,5 +5,6 @@ edition = "2024"
[dependencies]
anyhow = "1.0.98"
libc = "0.2.186"
serde = { version = "1.0", features = ["derive"] }
toml = "0.9.2"
+3 -3
View File
@@ -1,8 +1,8 @@
use std::env;
use std::io::stdin;
use anyhow::{Context, Result, bail};
use libc::geteuid;
use zfs_backup::cmd::zfs::zpool_import;
use zfs_backup::config;
use zfs_backup::encryption;
@@ -119,8 +119,8 @@ fn ask_user_confirmation(todos: &Vec<todo::Todo>) -> Result<bool> {
}
fn verify_running_as_root() -> Result<()> {
let uid = env::var("USER")?;
if uid != "root" {
let uid = unsafe { geteuid() };
if uid != 0 {
bail!("must be run as root")
}
Ok(())