mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 11:22:23 +00:00
qemu: Use -1 as unpriviledged uid/gid
Commit f506a4c1 changed virSetUIDGID() to be a noop when uid/gid are -1, while it used to be a noop when they are <= 0. The changes in this commit broke creating new VMs in GNOME Boxes as qemuDomainCheckDiskPresence gets called during domain creation/startup, which in turn calls virFileAccessibleAs which fails after calling virSetUIDGID(0, 0) (Boxes uses session libvirtd). virSetUIDGID is called with (0, 0) as these are the default user/group values in virQEMUDriverConfig for session libvirtd. This commit changes virQEMUDriverConfigNew to use -1 as the unpriviledged uid/gid. I've also looked at the various places where cfg->user is used, and they all seem to handle -1 correctly.
This commit is contained in:
parent
c7e85db61b
commit
aff6942c23
@ -129,8 +129,8 @@ virQEMUDriverConfigPtr virQEMUDriverConfigNew(bool privileged)
|
||||
if (virGetGroupID(QEMU_GROUP, &cfg->group) < 0)
|
||||
goto error;
|
||||
} else {
|
||||
cfg->user = 0;
|
||||
cfg->group = 0;
|
||||
cfg->user = (uid_t)-1;
|
||||
cfg->group = (gid_t)-1;
|
||||
}
|
||||
cfg->dynamicOwnership = privileged;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user