From 5aade310be110e5f5c044aa183fa32f7b11bb21a Mon Sep 17 00:00:00 2001 From: oech3 <79379754+oech3@users.noreply.github.com> Date: Tue, 28 Apr 2026 20:07:32 +0900 Subject: [PATCH] test_test.rs: remove unsafe --- tests/by-util/test_test.rs | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/tests/by-util/test_test.rs b/tests/by-util/test_test.rs index c767efa69..7ed296328 100644 --- a/tests/by-util/test_test.rs +++ b/tests/by-util/test_test.rs @@ -731,22 +731,18 @@ fn test_file_owned_by_egid() { // /tmp directory will have a different gid than the current egid (due to // the sticky bit set on the /tmp directory). Fix this before running the // test command. - use std::ffi::CString; - use std::os::unix::ffi::OsStrExt; use std::os::unix::fs::MetadataExt; - use uucore::process::getegid; let scene = TestScenario::new(util_name!()); let at = &scene.fixtures; let metadata = at.metadata("regular_file"); - let file_gid = metadata.gid(); - let user_gid = getegid(); + let file_gid = rustix::fs::Gid::from_raw(metadata.gid()); + let user_gid = rustix::process::getegid(); if user_gid != file_gid { - let file_metadata_uid = metadata.uid(); - let path = CString::new(at.plus("regular_file").as_os_str().as_bytes()).expect("bad path"); - let r = unsafe { libc::chown(path.as_ptr(), file_metadata_uid, user_gid) }; - assert_ne!(r, -1); + let file_uid = rustix::fs::Uid::from_raw(metadata.uid()); + let path = at.plus("regular_file"); + rustix::fs::chown(&path, Some(file_uid), Some(user_gid)).expect("chown failed"); } scene.ucmd().args(&["-G", "regular_file"]).succeeds();