if (useAgent) {
+ qemuAgentPtr agent;
qemuDomainSetFakeReboot(driver, vm, false);
- qemuDomainObjEnterAgent(vm);
- ret = qemuAgentShutdown(priv->agent, agentFlag);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ret = qemuAgentShutdown(agent, agentFlag);
+ qemuDomainObjExitAgent(vm, agent);
}
/* If we are not enforced to use just an agent, try ACPI
}
if (useAgent) {
+ qemuAgentPtr agent;
+
qemuDomainSetFakeReboot(driver, vm, false);
- qemuDomainObjEnterAgent(vm);
- ret = qemuAgentShutdown(priv->agent, agentFlag);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ret = qemuAgentShutdown(agent, agentFlag);
+ qemuDomainObjExitAgent(vm, agent);
}
/* If we are not enforced to use just an agent, try ACPI
unsigned int nvcpus)
{
qemuAgentCPUInfoPtr cpuinfo = NULL;
+ qemuAgentPtr agent;
int ncpuinfo;
int ret = -1;
goto cleanup;
}
- qemuDomainObjEnterAgent(vm);
- ncpuinfo = qemuAgentGetVCPUs(qemuDomainGetAgent(vm), &cpuinfo);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ncpuinfo = qemuAgentGetVCPUs(agent, &cpuinfo);
+ qemuDomainObjExitAgent(vm, agent);
+ agent = NULL;
if (ncpuinfo < 0)
goto cleanup;
if (!qemuDomainAgentAvailable(vm, true))
goto cleanup;
- qemuDomainObjEnterAgent(vm);
- ret = qemuAgentSetVCPUs(qemuDomainGetAgent(vm), cpuinfo, ncpuinfo);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ret = qemuAgentSetVCPUs(agent, cpuinfo, ncpuinfo);
+ qemuDomainObjExitAgent(vm, agent);
cleanup:
VIR_FREE(cpuinfo);
qemuDomainGetVcpusFlags(virDomainPtr dom, unsigned int flags)
{
virQEMUDriverPtr driver = dom->conn->privateData;
- qemuDomainObjPrivatePtr priv;
virDomainObjPtr vm;
virDomainDefPtr def;
int ret = -1;
qemuAgentCPUInfoPtr cpuinfo = NULL;
+ qemuAgentPtr agent;
int ncpuinfo = -1;
size_t i;
if (!(vm = qemuDomObjFromDomain(dom)))
return -1;
- priv = vm->privateData;
-
if (virDomainGetVcpusFlagsEnsureACL(dom->conn, vm->def, flags) < 0)
goto cleanup;
if (!qemuDomainAgentAvailable(vm, true))
goto endjob;
- qemuDomainObjEnterAgent(vm);
- ncpuinfo = qemuAgentGetVCPUs(priv->agent, &cpuinfo);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ncpuinfo = qemuAgentGetVCPUs(agent, &cpuinfo);
+ qemuDomainObjExitAgent(vm, agent);
endjob:
qemuDomainObjEndJob(driver, vm);
const char **mountpoints,
unsigned int nmountpoints)
{
- qemuDomainObjPrivatePtr priv = vm->privateData;
+ qemuAgentPtr agent;
int frozen;
if (!qemuDomainAgentAvailable(vm, true))
return -1;
- qemuDomainObjEnterAgent(vm);
- frozen = qemuAgentFSFreeze(priv->agent, mountpoints, nmountpoints);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ frozen = qemuAgentFSFreeze(agent, mountpoints, nmountpoints);
+ qemuDomainObjExitAgent(vm, agent);
return frozen < 0 ? -2 : frozen;
}
virDomainObjPtr vm,
bool report)
{
- qemuDomainObjPrivatePtr priv = vm->privateData;
+ qemuAgentPtr agent;
int thawed;
virErrorPtr err = NULL;
if (!qemuDomainAgentAvailable(vm, report))
return -1;
- qemuDomainObjEnterAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
if (!report)
err = virSaveLastError();
- thawed = qemuAgentFSThaw(priv->agent);
+ thawed = qemuAgentFSThaw(agent);
if (!report)
virSetError(err);
- qemuDomainObjExitAgent(vm);
+ qemuDomainObjExitAgent(vm, agent);
virFreeError(err);
virQEMUDriverPtr driver = dom->conn->privateData;
qemuDomainObjPrivatePtr priv;
virDomainObjPtr vm;
+ qemuAgentPtr agent;
int ret = -1;
virCheckFlags(0, -1);
if (!qemuDomainAgentAvailable(vm, true))
goto endjob;
- qemuDomainObjEnterAgent(vm);
- ret = qemuAgentSuspend(priv->agent, target);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ret = qemuAgentSuspend(agent, target);
+ qemuDomainObjExitAgent(vm, agent);
endjob:
qemuDomainObjEndJob(driver, vm);
virDomainObjPtr vm;
int ret = -1;
char *result = NULL;
- qemuDomainObjPrivatePtr priv;
+ qemuAgentPtr agent;
virCheckFlags(0, NULL);
if (!(vm = qemuDomObjFromDomain(domain)))
goto cleanup;
- priv = vm->privateData;
-
if (virDomainQemuAgentCommandEnsureACL(domain->conn, vm->def) < 0)
goto cleanup;
if (!qemuDomainAgentAvailable(vm, true))
goto endjob;
- qemuDomainObjEnterAgent(vm);
- ret = qemuAgentArbitraryCommand(priv->agent, cmd, &result, timeout);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ret = qemuAgentArbitraryCommand(agent, cmd, &result, timeout);
+ qemuDomainObjExitAgent(vm, agent);
if (ret < 0)
VIR_FREE(result);
{
virQEMUDriverPtr driver = dom->conn->privateData;
virDomainObjPtr vm;
+ qemuAgentPtr agent;
int ret = -1;
- qemuDomainObjPrivatePtr priv;
virCheckFlags(0, -1);
if (!(vm = qemuDomObjFromDomain(dom)))
goto cleanup;
- priv = vm->privateData;
-
if (virDomainFSTrimEnsureACL(dom->conn, vm->def) < 0)
goto cleanup;
goto endjob;
}
- qemuDomainObjEnterAgent(vm);
- ret = qemuAgentFSTrim(priv->agent, minimum);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ret = qemuAgentFSTrim(agent, minimum);
+ qemuDomainObjExitAgent(vm, agent);
endjob:
qemuDomainObjEndJob(driver, vm);
{
virQEMUDriverPtr driver = dom->conn->privateData;
virDomainObjPtr vm = NULL;
- qemuDomainObjPrivatePtr priv;
+ qemuAgentPtr agent;
int ret = -1;
int rv;
if (virDomainGetTimeEnsureACL(dom->conn, vm->def) < 0)
goto cleanup;
- priv = vm->privateData;
-
if (qemuDomainObjBeginJob(driver, vm, QEMU_JOB_QUERY) < 0)
goto cleanup;
if (!qemuDomainAgentAvailable(vm, true))
goto endjob;
- qemuDomainObjEnterAgent(vm);
- rv = qemuAgentGetTime(priv->agent, seconds, nseconds);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ rv = qemuAgentGetTime(agent, seconds, nseconds);
+ qemuDomainObjExitAgent(vm, agent);
if (rv < 0)
goto endjob;
virQEMUDriverPtr driver = dom->conn->privateData;
qemuDomainObjPrivatePtr priv;
virDomainObjPtr vm;
+ qemuAgentPtr agent;
bool rtcSync = flags & VIR_DOMAIN_TIME_SYNC;
int ret = -1;
int rv;
if (!qemuDomainAgentAvailable(vm, true))
goto endjob;
- qemuDomainObjEnterAgent(vm);
- rv = qemuAgentSetTime(priv->agent, seconds, nseconds, rtcSync);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ rv = qemuAgentSetTime(agent, seconds, nseconds, rtcSync);
+ qemuDomainObjExitAgent(vm, agent);
if (rv < 0)
goto endjob;
unsigned int flags)
{
virQEMUDriverPtr driver = dom->conn->privateData;
- qemuDomainObjPrivatePtr priv;
virDomainObjPtr vm;
+ qemuAgentPtr agent;
int ret = -1;
virCheckFlags(0, ret);
if (virDomainGetFSInfoEnsureACL(dom->conn, vm->def) < 0)
goto cleanup;
- priv = vm->privateData;
-
if (qemuDomainObjBeginJob(driver, vm, QEMU_JOB_QUERY) < 0)
goto cleanup;
if (!qemuDomainAgentAvailable(vm, true))
goto endjob;
- qemuDomainObjEnterAgent(vm);
- ret = qemuAgentGetFSInfo(priv->agent, info, vm->def);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ret = qemuAgentGetFSInfo(agent, info, vm->def);
+ qemuDomainObjExitAgent(vm, agent);
endjob:
qemuDomainObjEndJob(driver, vm);
unsigned int flags)
{
virQEMUDriverPtr driver = dom->conn->privateData;
- qemuDomainObjPrivatePtr priv = NULL;
virDomainObjPtr vm = NULL;
+ qemuAgentPtr agent;
int ret = -1;
virCheckFlags(0, -1);
if (!(vm = qemuDomObjFromDomain(dom)))
goto cleanup;
- priv = vm->privateData;
-
if (virDomainInterfaceAddressesEnsureACL(dom->conn, vm->def) < 0)
goto cleanup;
if (!qemuDomainAgentAvailable(vm, true))
goto endjob;
- qemuDomainObjEnterAgent(vm);
- ret = qemuAgentGetInterfaces(priv->agent, ifaces);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ret = qemuAgentGetInterfaces(agent, ifaces);
+ qemuDomainObjExitAgent(vm, agent);
endjob:
qemuDomainObjEndJob(driver, vm);
unsigned int flags)
{
virQEMUDriverPtr driver = dom->conn->privateData;
- qemuDomainObjPrivatePtr priv;
virDomainObjPtr vm;
+ qemuAgentPtr agent;
int ret = -1;
int rv;
if (virDomainSetUserPasswordEnsureACL(dom->conn, vm->def) < 0)
goto cleanup;
- priv = vm->privateData;
-
if (qemuDomainObjBeginJob(driver, vm, QEMU_JOB_MODIFY) < 0)
goto cleanup;
if (!qemuDomainAgentAvailable(vm, true))
goto endjob;
- qemuDomainObjEnterAgent(vm);
- rv = qemuAgentSetUserPassword(priv->agent, user, password,
+ agent = qemuDomainObjEnterAgent(vm);
+ rv = qemuAgentSetUserPassword(agent, user, password,
flags & VIR_DOMAIN_PASSWORD_ENCRYPTED);
- qemuDomainObjExitAgent(vm);
+ qemuDomainObjExitAgent(vm, agent);
if (rv < 0)
goto endjob;
{
virQEMUDriverPtr driver = dom->conn->privateData;
virDomainObjPtr vm = NULL;
+ qemuAgentPtr agent;
qemuAgentCPUInfoPtr info = NULL;
int ninfo = 0;
int ret = -1;
if (!qemuDomainAgentAvailable(vm, true))
goto endjob;
- qemuDomainObjEnterAgent(vm);
- ninfo = qemuAgentGetVCPUs(qemuDomainGetAgent(vm), &info);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ninfo = qemuAgentGetVCPUs(agent, &info);
+ qemuDomainObjExitAgent(vm, agent);
if (ninfo < 0)
goto endjob;
virDomainObjPtr vm = NULL;
virBitmapPtr map = NULL;
qemuAgentCPUInfoPtr info = NULL;
+ qemuAgentPtr agent;
int ninfo = 0;
size_t i;
int ret = -1;
if (!qemuDomainAgentAvailable(vm, true))
goto endjob;
- qemuDomainObjEnterAgent(vm);
- ninfo = qemuAgentGetVCPUs(qemuDomainGetAgent(vm), &info);
- qemuDomainObjExitAgent(vm);
+ agent = qemuDomainObjEnterAgent(vm);
+ ninfo = qemuAgentGetVCPUs(agent, &info);
+ qemuDomainObjExitAgent(vm, agent);
+ agent = NULL;
if (ninfo < 0)
goto endjob;
goto endjob;
}
- qemuDomainObjEnterAgent(vm);
- ret = qemuAgentSetVCPUs(qemuDomainGetAgent(vm), info, ninfo);
- qemuDomainObjExitAgent(vm);
+ if (!qemuDomainAgentAvailable(vm, true))
+ goto endjob;
+
+ agent = qemuDomainObjEnterAgent(vm);
+ ret = qemuAgentSetVCPUs(agent, info, ninfo);
+ qemuDomainObjExitAgent(vm, agent);
endjob:
qemuDomainObjEndJob(driver, vm);