Create a separate typedef for the hostdev union data describing USB.
Then adjust the code to use the new pointer
Signed-off-by: John Ferlan jfer...@redhat.com
---
src/conf/domain_audit.c | 4 ++--
src/conf/domain_conf.c | 50 +++-
src/conf/domain_conf.h | 22 ++
src/lxc/lxc_cgroup.c | 4 ++--
src/lxc/lxc_controller.c | 10
src/lxc/lxc_driver.c | 16 ++---
src/qemu/qemu_cgroup.c | 4 ++--
src/qemu/qemu_command.c | 26 ++---
src/qemu/qemu_hotplug.c | 7 +++---
src/security/security_apparmor.c | 6 ++---
src/security/security_dac.c | 12 --
src/security/security_selinux.c | 10
src/security/virt-aa-helper.c| 5 ++--
src/util/virhostdev.c| 50 +++-
14 files changed, 104 insertions(+), 122 deletions(-)
diff --git a/src/conf/domain_audit.c b/src/conf/domain_audit.c
index a3d6c67..8277b06 100644
--- a/src/conf/domain_audit.c
+++ b/src/conf/domain_audit.c
@@ -388,6 +388,7 @@ virDomainAuditHostdev(virDomainObjPtr vm,
virDomainHostdevDefPtr hostdev,
char *address = NULL;
char *device = NULL;
const char *virt;
+virDomainHostdevSubsysUSBPtr usbsrc = hostdev-source.subsys.u.usb;
virUUIDFormat(vm-def-uuid, uuidstr);
if (!(vmname = virAuditEncode(vm, vm-def-name))) {
@@ -415,8 +416,7 @@ virDomainAuditHostdev(virDomainObjPtr vm,
virDomainHostdevDefPtr hostdev,
break;
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB:
if (virAsprintfQuiet(address, %.3d.%.3d,
- hostdev-source.subsys.u.usb.bus,
- hostdev-source.subsys.u.usb.device) 0) {
+ usbsrc-bus, usbsrc-device) 0) {
VIR_WARN(OOM while encoding audit message);
goto cleanup;
}
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index b91ccf7..046b4f8 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -3800,6 +3800,7 @@ virDomainHostdevSubsysUSBDefParseXML(xmlNodePtr node,
xmlNodePtr cur;
char *startupPolicy = NULL;
char *autoAddress;
+virDomainHostdevSubsysUSBPtr usbsrc = def-source.subsys.u.usb;
if ((startupPolicy = virXMLPropString(node, startupPolicy))) {
def-startupPolicy =
@@ -3816,7 +3817,7 @@ virDomainHostdevSubsysUSBDefParseXML(xmlNodePtr node,
if ((autoAddress = virXMLPropString(node, autoAddress))) {
if (STREQ(autoAddress, yes))
-def-source.subsys.u.usb.autoAddress = true;
+usbsrc-autoAddress = true;
VIR_FREE(autoAddress);
}
@@ -3833,8 +3834,7 @@ virDomainHostdevSubsysUSBDefParseXML(xmlNodePtr node,
if (vendor) {
got_vendor = true;
-if (virStrToLong_ui(vendor, NULL, 0,
-def-source.subsys.u.usb.vendor) 0) {
+if (virStrToLong_ui(vendor, NULL, 0, usbsrc-vendor) 0)
{
virReportError(VIR_ERR_INTERNAL_ERROR,
_(cannot parse vendor id %s), vendor);
VIR_FREE(vendor);
@@ -3852,7 +3852,7 @@ virDomainHostdevSubsysUSBDefParseXML(xmlNodePtr node,
if (product) {
got_product = true;
if (virStrToLong_ui(product, NULL, 0,
-def-source.subsys.u.usb.product)
0) {
+usbsrc-product) 0) {
virReportError(VIR_ERR_INTERNAL_ERROR,
_(cannot parse product %s),
product);
@@ -3870,8 +3870,7 @@ virDomainHostdevSubsysUSBDefParseXML(xmlNodePtr node,
bus = virXMLPropString(cur, bus);
if (bus) {
-if (virStrToLong_ui(bus, NULL, 0,
-def-source.subsys.u.usb.bus) 0) {
+if (virStrToLong_ui(bus, NULL, 0, usbsrc-bus) 0) {
virReportError(VIR_ERR_INTERNAL_ERROR,
_(cannot parse bus %s), bus);
VIR_FREE(bus);
@@ -3886,8 +3885,7 @@ virDomainHostdevSubsysUSBDefParseXML(xmlNodePtr node,
device = virXMLPropString(cur, device);
if (device) {
-if (virStrToLong_ui(device, NULL, 0,
-def-source.subsys.u.usb.device) 0)
{
+if (virStrToLong_ui(device, NULL, 0, usbsrc-device) 0)
{
virReportError(VIR_ERR_INTERNAL_ERROR,
_(cannot parse device %s),
device);
@@ -3910,7 +3908,7 @@