main: Only verify SUPERUSER flag if using default sysroot

The use case for non-default sysroots that I know of are:
 1) The current test suite
 2) Installers (Anaconda)
 3) Inspecting VM disks

For 2) and 3), it'll quickly be obvious if they're not running as
root, and these are more obscure cases.  We want to allow 1), and this
is a simple way to do it.

https://bugzilla.gnome.org/show_bug.cgi?id=747164
This commit is contained in:
Colin Walters 2015-04-01 06:21:34 -04:00
parent e92fd9a83d
commit 2a30af72db
1 changed files with 2 additions and 1 deletions

View File

@ -327,7 +327,8 @@ ostree_admin_option_context_parse (GOptionContext *context,
if (flags & OSTREE_ADMIN_BUILTIN_FLAG_SUPERUSER)
{
if (getuid () != 0)
if ((opt_sysroot == NULL || strcmp (opt_sysroot, "/") == 0)
&& getuid () != 0)
{
g_set_error (error, G_IO_ERROR, G_IO_ERROR_PERMISSION_DENIED,
"You must be root to perform this command");