mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
Add virConnectPtr for qemuBuildSCSIHostdevDrvStr
Add a conn for future patches to be able to grab the secret when authenticating an iSCSI host device
This commit is contained in:
parent
42957661dc
commit
a062d1a1cc
@ -5125,7 +5125,8 @@ qemuBuildUSBHostdevUSBDevStr(virDomainHostdevDefPtr dev)
|
|||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
qemuBuildSCSIHostdevDrvStr(virDomainHostdevDefPtr dev,
|
qemuBuildSCSIHostdevDrvStr(virConnectPtr conn ATTRIBUTE_UNUSED,
|
||||||
|
virDomainHostdevDefPtr dev,
|
||||||
virQEMUCapsPtr qemuCaps ATTRIBUTE_UNUSED,
|
virQEMUCapsPtr qemuCaps ATTRIBUTE_UNUSED,
|
||||||
qemuBuildCommandLineCallbacksPtr callbacks)
|
qemuBuildCommandLineCallbacksPtr callbacks)
|
||||||
{
|
{
|
||||||
@ -8999,7 +9000,7 @@ qemuBuildCommandLine(virConnectPtr conn,
|
|||||||
char *drvstr;
|
char *drvstr;
|
||||||
|
|
||||||
virCommandAddArg(cmd, "-drive");
|
virCommandAddArg(cmd, "-drive");
|
||||||
if (!(drvstr = qemuBuildSCSIHostdevDrvStr(hostdev, qemuCaps, callbacks)))
|
if (!(drvstr = qemuBuildSCSIHostdevDrvStr(conn, hostdev, qemuCaps, callbacks)))
|
||||||
goto error;
|
goto error;
|
||||||
virCommandAddArg(cmd, drvstr);
|
virCommandAddArg(cmd, drvstr);
|
||||||
VIR_FREE(drvstr);
|
VIR_FREE(drvstr);
|
||||||
|
@ -170,10 +170,11 @@ char * qemuBuildUSBHostdevDevStr(virDomainDefPtr def,
|
|||||||
virDomainHostdevDefPtr dev,
|
virDomainHostdevDefPtr dev,
|
||||||
virQEMUCapsPtr qemuCaps);
|
virQEMUCapsPtr qemuCaps);
|
||||||
|
|
||||||
char * qemuBuildSCSIHostdevDrvStr(virDomainHostdevDefPtr dev,
|
char * qemuBuildSCSIHostdevDrvStr(virConnectPtr conn,
|
||||||
|
virDomainHostdevDefPtr dev,
|
||||||
virQEMUCapsPtr qemuCaps,
|
virQEMUCapsPtr qemuCaps,
|
||||||
qemuBuildCommandLineCallbacksPtr callbacks)
|
qemuBuildCommandLineCallbacksPtr callbacks)
|
||||||
ATTRIBUTE_NONNULL(3);
|
ATTRIBUTE_NONNULL(4);
|
||||||
char * qemuBuildSCSIHostdevDevStr(virDomainDefPtr def,
|
char * qemuBuildSCSIHostdevDevStr(virDomainDefPtr def,
|
||||||
virDomainHostdevDefPtr dev,
|
virDomainHostdevDefPtr dev,
|
||||||
virQEMUCapsPtr qemuCaps);
|
virQEMUCapsPtr qemuCaps);
|
||||||
|
@ -6519,7 +6519,7 @@ qemuDomainAttachDeviceLive(virDomainObjPtr vm,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_DOMAIN_DEVICE_HOSTDEV:
|
case VIR_DOMAIN_DEVICE_HOSTDEV:
|
||||||
ret = qemuDomainAttachHostDevice(driver, vm,
|
ret = qemuDomainAttachHostDevice(dom->conn, driver, vm,
|
||||||
dev->data.hostdev);
|
dev->data.hostdev);
|
||||||
if (!ret)
|
if (!ret)
|
||||||
dev->data.hostdev = NULL;
|
dev->data.hostdev = NULL;
|
||||||
@ -6591,10 +6591,10 @@ qemuDomainDetachDeviceLive(virDomainObjPtr vm,
|
|||||||
ret = qemuDomainDetachLease(driver, vm, dev->data.lease);
|
ret = qemuDomainDetachLease(driver, vm, dev->data.lease);
|
||||||
break;
|
break;
|
||||||
case VIR_DOMAIN_DEVICE_NET:
|
case VIR_DOMAIN_DEVICE_NET:
|
||||||
ret = qemuDomainDetachNetDevice(driver, vm, dev);
|
ret = qemuDomainDetachNetDevice(dom->conn, driver, vm, dev);
|
||||||
break;
|
break;
|
||||||
case VIR_DOMAIN_DEVICE_HOSTDEV:
|
case VIR_DOMAIN_DEVICE_HOSTDEV:
|
||||||
ret = qemuDomainDetachHostDevice(driver, vm, dev);
|
ret = qemuDomainDetachHostDevice(dom->conn, driver, vm, dev);
|
||||||
break;
|
break;
|
||||||
case VIR_DOMAIN_DEVICE_CHR:
|
case VIR_DOMAIN_DEVICE_CHR:
|
||||||
ret = qemuDomainDetachChrDevice(driver, vm, dev->data.chr);
|
ret = qemuDomainDetachChrDevice(driver, vm, dev->data.chr);
|
||||||
|
@ -860,7 +860,7 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
|
|||||||
* netdev-specific code as appropriate), then also added to
|
* netdev-specific code as appropriate), then also added to
|
||||||
* the nets list (see cleanup:) if successful.
|
* the nets list (see cleanup:) if successful.
|
||||||
*/
|
*/
|
||||||
ret = qemuDomainAttachHostDevice(driver, vm,
|
ret = qemuDomainAttachHostDevice(conn, driver, vm,
|
||||||
virDomainNetGetActualHostdev(net));
|
virDomainNetGetActualHostdev(net));
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
@ -1547,7 +1547,8 @@ qemuDomainAttachHostUSBDevice(virQEMUDriverPtr driver,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
qemuDomainAttachHostSCSIDevice(virQEMUDriverPtr driver,
|
qemuDomainAttachHostSCSIDevice(virConnectPtr conn,
|
||||||
|
virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainHostdevDefPtr hostdev)
|
virDomainHostdevDefPtr hostdev)
|
||||||
{
|
{
|
||||||
@ -1594,7 +1595,7 @@ qemuDomainAttachHostSCSIDevice(virQEMUDriverPtr driver,
|
|||||||
if (qemuAssignDeviceHostdevAlias(vm->def, hostdev, -1) < 0)
|
if (qemuAssignDeviceHostdevAlias(vm->def, hostdev, -1) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (!(drvstr = qemuBuildSCSIHostdevDrvStr(hostdev, priv->qemuCaps,
|
if (!(drvstr = qemuBuildSCSIHostdevDrvStr(conn, hostdev, priv->qemuCaps,
|
||||||
&buildCommandLineCallbacks)))
|
&buildCommandLineCallbacks)))
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
@ -1642,7 +1643,8 @@ qemuDomainAttachHostSCSIDevice(virQEMUDriverPtr driver,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
int qemuDomainAttachHostDevice(virQEMUDriverPtr driver,
|
int qemuDomainAttachHostDevice(virConnectPtr conn,
|
||||||
|
virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainHostdevDefPtr hostdev)
|
virDomainHostdevDefPtr hostdev)
|
||||||
{
|
{
|
||||||
@ -1667,7 +1669,7 @@ int qemuDomainAttachHostDevice(virQEMUDriverPtr driver,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI:
|
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI:
|
||||||
if (qemuDomainAttachHostSCSIDevice(driver, vm,
|
if (qemuDomainAttachHostSCSIDevice(conn, driver, vm,
|
||||||
hostdev) < 0)
|
hostdev) < 0)
|
||||||
goto error;
|
goto error;
|
||||||
break;
|
break;
|
||||||
@ -3265,7 +3267,8 @@ qemuDomainDetachHostUSBDevice(virQEMUDriverPtr driver,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
qemuDomainDetachHostSCSIDevice(virQEMUDriverPtr driver,
|
qemuDomainDetachHostSCSIDevice(virConnectPtr conn,
|
||||||
|
virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainHostdevDefPtr detach)
|
virDomainHostdevDefPtr detach)
|
||||||
{
|
{
|
||||||
@ -3286,7 +3289,7 @@ qemuDomainDetachHostSCSIDevice(virQEMUDriverPtr driver,
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(drvstr = qemuBuildSCSIHostdevDrvStr(detach, priv->qemuCaps,
|
if (!(drvstr = qemuBuildSCSIHostdevDrvStr(conn, detach, priv->qemuCaps,
|
||||||
&buildCommandLineCallbacks)))
|
&buildCommandLineCallbacks)))
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
if (!(devstr = qemuBuildSCSIHostdevDevStr(vm->def, detach, priv->qemuCaps)))
|
if (!(devstr = qemuBuildSCSIHostdevDevStr(vm->def, detach, priv->qemuCaps)))
|
||||||
@ -3317,7 +3320,8 @@ qemuDomainDetachHostSCSIDevice(virQEMUDriverPtr driver,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
qemuDomainDetachThisHostDevice(virQEMUDriverPtr driver,
|
qemuDomainDetachThisHostDevice(virConnectPtr conn,
|
||||||
|
virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainHostdevDefPtr detach)
|
virDomainHostdevDefPtr detach)
|
||||||
{
|
{
|
||||||
@ -3331,7 +3335,7 @@ qemuDomainDetachThisHostDevice(virQEMUDriverPtr driver,
|
|||||||
ret = qemuDomainDetachHostUSBDevice(driver, vm, detach);
|
ret = qemuDomainDetachHostUSBDevice(driver, vm, detach);
|
||||||
break;
|
break;
|
||||||
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI:
|
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI:
|
||||||
ret = qemuDomainDetachHostSCSIDevice(driver, vm, detach);
|
ret = qemuDomainDetachHostSCSIDevice(conn, driver, vm, detach);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
|
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
|
||||||
@ -3354,7 +3358,8 @@ qemuDomainDetachThisHostDevice(virQEMUDriverPtr driver,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* search for a hostdev matching dev and detach it */
|
/* search for a hostdev matching dev and detach it */
|
||||||
int qemuDomainDetachHostDevice(virQEMUDriverPtr driver,
|
int qemuDomainDetachHostDevice(virConnectPtr conn,
|
||||||
|
virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainDeviceDefPtr dev)
|
virDomainDeviceDefPtr dev)
|
||||||
{
|
{
|
||||||
@ -3414,13 +3419,14 @@ int qemuDomainDetachHostDevice(virQEMUDriverPtr driver,
|
|||||||
* function so that mac address / virtualport are reset
|
* function so that mac address / virtualport are reset
|
||||||
*/
|
*/
|
||||||
if (detach->parent.type == VIR_DOMAIN_DEVICE_NET)
|
if (detach->parent.type == VIR_DOMAIN_DEVICE_NET)
|
||||||
return qemuDomainDetachNetDevice(driver, vm, &detach->parent);
|
return qemuDomainDetachNetDevice(conn, driver, vm, &detach->parent);
|
||||||
else
|
else
|
||||||
return qemuDomainDetachThisHostDevice(driver, vm, detach);
|
return qemuDomainDetachThisHostDevice(conn, driver, vm, detach);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
qemuDomainDetachNetDevice(virQEMUDriverPtr driver,
|
qemuDomainDetachNetDevice(virConnectPtr conn,
|
||||||
|
virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainDeviceDefPtr dev)
|
virDomainDeviceDefPtr dev)
|
||||||
{
|
{
|
||||||
@ -3436,7 +3442,7 @@ qemuDomainDetachNetDevice(virQEMUDriverPtr driver,
|
|||||||
|
|
||||||
if (virDomainNetGetActualType(detach) == VIR_DOMAIN_NET_TYPE_HOSTDEV) {
|
if (virDomainNetGetActualType(detach) == VIR_DOMAIN_NET_TYPE_HOSTDEV) {
|
||||||
/* coverity[negative_returns] */
|
/* coverity[negative_returns] */
|
||||||
ret = qemuDomainDetachThisHostDevice(driver, vm,
|
ret = qemuDomainDetachThisHostDevice(conn, driver, vm,
|
||||||
virDomainNetGetActualHostdev(detach));
|
virDomainNetGetActualHostdev(detach));
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
@ -50,7 +50,8 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
|
|||||||
int qemuDomainAttachRedirdevDevice(virQEMUDriverPtr driver,
|
int qemuDomainAttachRedirdevDevice(virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainRedirdevDefPtr hostdev);
|
virDomainRedirdevDefPtr hostdev);
|
||||||
int qemuDomainAttachHostDevice(virQEMUDriverPtr driver,
|
int qemuDomainAttachHostDevice(virConnectPtr conn,
|
||||||
|
virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainHostdevDefPtr hostdev);
|
virDomainHostdevDefPtr hostdev);
|
||||||
int qemuDomainChangeGraphics(virQEMUDriverPtr driver,
|
int qemuDomainChangeGraphics(virQEMUDriverPtr driver,
|
||||||
@ -75,10 +76,12 @@ int qemuDomainDetachDeviceDiskLive(virQEMUDriverPtr driver,
|
|||||||
int qemuDomainDetachControllerDevice(virQEMUDriverPtr driver,
|
int qemuDomainDetachControllerDevice(virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainDeviceDefPtr dev);
|
virDomainDeviceDefPtr dev);
|
||||||
int qemuDomainDetachNetDevice(virQEMUDriverPtr driver,
|
int qemuDomainDetachNetDevice(virConnectPtr conn,
|
||||||
|
virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainDeviceDefPtr dev);
|
virDomainDeviceDefPtr dev);
|
||||||
int qemuDomainDetachHostDevice(virQEMUDriverPtr driver,
|
int qemuDomainDetachHostDevice(virConnectPtr conn,
|
||||||
|
virQEMUDriverPtr driver,
|
||||||
virDomainObjPtr vm,
|
virDomainObjPtr vm,
|
||||||
virDomainDeviceDefPtr dev);
|
virDomainDeviceDefPtr dev);
|
||||||
int qemuDomainAttachLease(virQEMUDriverPtr driver,
|
int qemuDomainAttachLease(virQEMUDriverPtr driver,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user