On Fri, Jul 12, 2013 at 03:13:48PM -0600, Eric Blake wrote:
@@ -146,8 +149,12 @@ virSecurityManagerPtr
virSecurityManagerNewDAC(const char *virtDriver,
if (!mgr)
return NULL;
- virSecurityDACSetUser(mgr, user);
- virSecurityDACSetGroup(mgr, group);
+ if ((ngroups = virGetGroupList(user, group, &groups)) < 0) {
+ virObjectUnref(mgr);
+ return NULL;
+ }
+
+ virSecurityDACSetUIDGID(mgr, user, group, groups, ngroups);
Hmm, the virSecurityManagerNewDAC method is run once at libvirtd startup.
Previously if you edited /etc/group to change a user's groups it would
take effect the very next time a VM is started. With this change, it will
only take effect if libvirtd is restarted, which is a regression in
behaviour.
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|