From 8c5d7c7a2c3081c8c069dfb243389cc7aaed9b54 Mon Sep 17 00:00:00 2001 From: Roman Bogorodskiy Date: Tue, 20 Oct 2015 20:32:42 +0300 Subject: [PATCH] bhyve: implement domainGetOSType --- src/bhyve/bhyve_driver.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/bhyve/bhyve_driver.c b/src/bhyve/bhyve_driver.c index e5d56e98d..4840a0eb8 100644 --- a/src/bhyve/bhyve_driver.c +++ b/src/bhyve/bhyve_driver.c @@ -464,6 +464,27 @@ bhyveDomainIsPersistent(virDomainPtr domain) return ret; } +static char * +bhyveDomainGetOSType(virDomainPtr dom) +{ + virDomainObjPtr vm; + char *ret = NULL; + + if (!(vm = bhyveDomObjFromDomain(dom))) + goto cleanup; + + if (virDomainGetOSTypeEnsureACL(dom->conn, vm->def) < 0) + goto cleanup; + + if (VIR_STRDUP(ret, virDomainOSTypeToString(vm->def->os.type)) < 0) + goto cleanup; + + cleanup: + if (vm) + virObjectUnlock(vm); + return ret; +} + static char * bhyveDomainGetXMLDesc(virDomainPtr domain, unsigned int flags) { @@ -1487,6 +1508,7 @@ static virHypervisorDriver bhyveHypervisorDriver = { .domainDefineXML = bhyveDomainDefineXML, /* 1.2.2 */ .domainDefineXMLFlags = bhyveDomainDefineXMLFlags, /* 1.2.12 */ .domainUndefine = bhyveDomainUndefine, /* 1.2.2 */ + .domainGetOSType = bhyveDomainGetOSType, /* 1.2.21 */ .domainGetXMLDesc = bhyveDomainGetXMLDesc, /* 1.2.2 */ .domainIsActive = bhyveDomainIsActive, /* 1.2.2 */ .domainIsPersistent = bhyveDomainIsPersistent, /* 1.2.2 */ -- 2.39.5