#include "virlog.h"
#include "virtime.h"
#include "virsystemd.h"
+#include "datatypes.h"
#define VIR_FROM_THIS VIR_FROM_CH
return ret;
}
+
+/**
+ * virCHDomainObjFromDomain:
+ * @domain: Domain pointer that has to be looked up
+ *
+ * This function looks up @domain and returns the appropriate virDomainObjPtr
+ * that has to be released by calling virDomainObjEndAPI().
+ *
+ * Returns the domain object with incremented reference counter which is locked
+ * on success, NULL otherwise.
+ */
+virDomainObj *
+virCHDomainObjFromDomain(virDomainPtr domain)
+{
+ virDomainObj *vm;
+ virCHDriver *driver = domain->conn->privateData;
+ char uuidstr[VIR_UUID_STRING_BUFLEN];
+
+ vm = virDomainObjListFindByUUID(driver->domains, domain->uuid);
+ if (!vm) {
+ virUUIDFormat(domain->uuid, uuidstr);
+ virReportError(VIR_ERR_NO_DOMAIN,
+ _("no domain with matching uuid '%s' (%s)"),
+ uuidstr, domain->name);
+ return NULL;
+ }
+
+ return vm;
+}
virCHDriver *ch_driver = NULL;
-static virDomainObj *
-chDomObjFromDomain(virDomain *domain)
-{
- virDomainObj *vm;
- virCHDriver *driver = domain->conn->privateData;
- char uuidstr[VIR_UUID_STRING_BUFLEN];
-
- vm = virDomainObjListFindByUUID(driver->domains, domain->uuid);
- if (!vm) {
- virUUIDFormat(domain->uuid, uuidstr);
- virReportError(VIR_ERR_NO_DOMAIN,
- _("no domain with matching uuid '%s' (%s)"),
- uuidstr, domain->name);
- return NULL;
- }
-
- return vm;
-}
-
/* Functions */
static int
chConnectURIProbe(char **uri)
virCheckFlags(0, -1);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
if (virDomainCreateWithFlagsEnsureACL(dom->conn, vm->def) < 0)
virCheckFlags(0, -1);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
if (virDomainUndefineFlagsEnsureACL(dom->conn, vm->def) < 0)
int ret = -1;
chDriverLock(driver);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
if (virDomainIsActiveEnsureACL(dom->conn, vm->def) < 0)
virCheckFlags(VIR_DOMAIN_SHUTDOWN_ACPI_POWER_BTN, -1);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
priv = vm->privateData;
virCheckFlags(VIR_DOMAIN_REBOOT_ACPI_POWER_BTN, -1);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
priv = vm->privateData;
virDomainObj *vm;
int ret = -1;
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
priv = vm->privateData;
virDomainObj *vm;
int ret = -1;
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
priv = vm->privateData;
virCheckFlags(0, -1);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
if (virDomainDestroyFlagsEnsureACL(dom->conn, vm->def) < 0)
virCheckFlags(0, -1);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
if (virDomainGetStateEnsureACL(dom->conn, vm->def) < 0)
virCheckFlags(VIR_DOMAIN_XML_COMMON_FLAGS, NULL);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
if (virDomainGetXMLDescEnsureACL(dom->conn, vm->def, flags) < 0)
virDomainObj *vm;
int ret = -1;
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
if (virDomainGetInfoEnsureACL(dom->conn, vm->def) < 0)
virCheckFlags(VIR_DOMAIN_CONSOLE_SAFE | VIR_DOMAIN_CONSOLE_FORCE, -1);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
if (virDomainOpenConsoleEnsureACL(dom->conn, vm->def) < 0)
VIR_DOMAIN_AFFECT_CONFIG |
VIR_DOMAIN_VCPU_MAXIMUM | VIR_DOMAIN_VCPU_GUEST, -1);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
return -1;
if (virDomainGetVcpusFlagsEnsureACL(dom->conn, vm->def, flags) < 0)
virCheckFlags(VIR_DOMAIN_AFFECT_LIVE | VIR_DOMAIN_AFFECT_CONFIG, -1);
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
if (virDomainGetVcpuPinInfoEnsureACL(dom->conn, vm->def) < 0)
virDomainObj *vm;
int ret = -1;
- if (!(vm = chDomObjFromDomain(dom)))
+ if (!(vm = virCHDomainObjFromDomain(dom)))
goto cleanup;
if (virDomainGetVcpusEnsureACL(dom->conn, vm->def) < 0)