]> xenbits.xensource.com Git - libvirt.git/commitdiff
lxc: Fix access to hostdev capabilities
authorMichal Privoznik <mprivozn@redhat.com>
Tue, 25 Apr 2023 08:00:18 +0000 (10:00 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Tue, 25 Apr 2023 09:00:57 +0000 (11:00 +0200)
In a few places, where a capabilities <hostdev/> is processed, a
wrong union member is access: def->source.subsys.type instead of
def->source.caps.type. Fortunately, both union members have .type
as the very first member so no real harm is done. Nevertheless,
we should access the correct union member.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/lxc/lxc_controller.c
src/lxc/lxc_hostdev.c

index 60b961dcb5fcffa3b2e0c1b2de77ff98e311f71b..86dcd880e825344a685a81fb88d51d414fd24ebb 100644 (file)
@@ -1788,7 +1788,7 @@ virLXCControllerSetupHostdevCaps(virDomainDef *vmDef,
                                  virDomainHostdevDef *def,
                                  virSecurityManager *securityDriver)
 {
-    switch (def->source.subsys.type) {
+    switch (def->source.caps.type) {
     case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_STORAGE:
         return virLXCControllerSetupHostdevCapsStorage(vmDef,
                                                        def,
index d18d61cb1956a406e14cbcc49c6e0bb295dd83fc..8fe02a4276cda4fdd8b9cf27bfae11efd50aec40 100644 (file)
@@ -85,7 +85,7 @@ int virLXCPrepareHostDevices(virLXCDriver *driver,
             break;
 
         case VIR_DOMAIN_HOSTDEV_MODE_CAPABILITIES:
-            switch (dev->source.subsys.type) {
+            switch (dev->source.caps.type) {
             case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_STORAGE:
             case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_MISC:
             case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_NET:
@@ -93,7 +93,7 @@ int virLXCPrepareHostDevices(virLXCDriver *driver,
             default:
                 virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
                                _("Unsupported hostdev type %1$s"),
-                               virDomainHostdevSubsysTypeToString(dev->source.subsys.type));
+                               virDomainHostdevSubsysTypeToString(dev->source.caps.type));
                 return -1;
             }
             break;