From 01fb2d4a9e8708c1952f97881eee9d0907989420 Mon Sep 17 00:00:00 2001 From: Daan De Meyer Date: Thu, 12 Feb 2026 09:44:29 +0100 Subject: [PATCH] dissect: Use must_be_root() --- src/dissect/dissect.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/dissect/dissect.c b/src/dissect/dissect.c index 4018e8233fb..1eb17e67e48 100644 --- a/src/dissect/dissect.c +++ b/src/dissect/dissect.c @@ -863,8 +863,11 @@ static int parse_argv(int argc, char *argv[]) { if (arg_action == ACTION_SHIFT && r == 0) return log_error_errno(SYNTHETIC_ERRNO(EPERM), "Need to have CAP_CHOWN to shift UID ranges"); - if (IN_SET(arg_action, ACTION_ATTACH, ACTION_DETACH) && geteuid() != 0) - return log_error_errno(SYNTHETIC_ERRNO(EPERM), "Need to be root."); + if (IN_SET(arg_action, ACTION_ATTACH, ACTION_DETACH)) { + r = must_be_root(); + if (r < 0) + return r; + } SET_FLAG(arg_flags, DISSECT_IMAGE_ALLOW_INTERACTIVE_AUTH, isatty_safe(STDIN_FILENO)); -- 2.47.3