false, false)) == NULL)
return NULL;
- if ((guest = virCapabilitiesAddGuest(caps, "hvm",
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_X86_64,
"bhyve",
NULL, 0, NULL)) == NULL)
/**
* virCapabilitiesAddGuest:
* @caps: capabilities to extend
- * @ostype: guest operating system type ('hvm' or 'xen')
+ * @ostype: guest operating system type, of enum VIR_DOMAIN_OSTYPE
* @arch: guest CPU architecture
* @wordsize: number of bits in CPU word
* @emulator: path to default device emulator for arch/ostype
*/
virCapsGuestPtr
virCapabilitiesAddGuest(virCapsPtr caps,
- const char *ostypestr,
+ int ostype,
virArch arch,
const char *emulator,
const char *loader,
virCapsGuestMachinePtr *machines)
{
virCapsGuestPtr guest;
- int ostype;
if (VIR_ALLOC(guest) < 0)
goto error;
- if ((ostype = virDomainOSTypeFromString(ostypestr)) < 0) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- _("unknown OS type '%s'"), ostypestr);
- goto error;
- }
-
guest->ostype = ostype;
guest->arch.id = arch;
guest->arch.wordsize = virArchGetWordSize(arch);
extern virCapsGuestPtr
virCapabilitiesAddGuest(virCapsPtr caps,
- const char *ostype,
+ int ostype,
virArch arch,
const char *emulator,
const char *loader,
goto failure;
/* i686 */
- guest = virCapabilitiesAddGuest(caps, "hvm",
+ guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_I686,
NULL, NULL, 0,
NULL);
/* x86_64 */
if (supportsLongMode == esxVI_Boolean_True) {
- guest = virCapabilitiesAddGuest(caps, "hvm",
+ guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_X86_64,
NULL, NULL,
0, NULL);
return -1;
if ((guest = virCapabilitiesAddGuest(caps,
- guest_archs[i].hvm ? "hvm" : "xen",
+ guest_archs[i].hvm ? VIR_DOMAIN_OSTYPE_HVM : VIR_DOMAIN_OSTYPE_XEN,
guest_archs[i].arch,
LIBXL_EXECBIN_DIR "/qemu-system-i386",
(guest_archs[i].hvm ?
goto error;
if ((guest = virCapabilitiesAddGuest(caps,
- "exe",
+ VIR_DOMAIN_OSTYPE_EXE,
caps->host.arch,
lxc_path,
NULL,
/* On 64-bit hosts, we can use personality() to request a 32bit process */
if ((altArch = lxcContainerGetAlt32bitArch(caps->host.arch)) != VIR_ARCH_NONE) {
if ((guest = virCapabilitiesAddGuest(caps,
- "exe",
+ VIR_DOMAIN_OSTYPE_EXE,
altArch,
lxc_path,
NULL,
goto no_memory;
if ((guest = virCapabilitiesAddGuest(caps,
- "exe",
+ VIR_DOMAIN_OSTYPE_EXE,
caps->host.arch,
NULL,
NULL,
if (nodeCapsInitNUMA(caps) < 0)
goto error;
- if ((guest = virCapabilitiesAddGuest(caps, "hvm",
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_X86_64,
"parallels",
NULL, 0, NULL)) == NULL)
goto error;
- if ((guest = virCapabilitiesAddGuest(caps, "hvm",
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_I686,
"parallels",
NULL, 0, NULL)) == NULL)
"parallels", NULL, NULL, 0, NULL) == NULL)
goto error;
- if ((guest = virCapabilitiesAddGuest(caps, "exe",
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_EXE,
VIR_ARCH_X86_64,
"parallels",
NULL, 0, NULL)) == NULL)
}
if ((guest = virCapabilitiesAddGuest(caps,
- "linux",
+ VIR_DOMAIN_OSTYPE_LINUX,
caps->host.arch,
NULL, NULL, 0, NULL)) == NULL)
goto no_memory;
/* We register kvm as the base emulator too, since we can
* just give -no-kvm to disable acceleration if required */
if ((guest = virCapabilitiesAddGuest(caps,
- "hvm",
+ VIR_DOMAIN_OSTYPE_HVM,
guestarch,
binary,
NULL,
static int
get_definition(vahControl * ctl, const char *xmlStr)
{
- int rc = -1;
+ int rc = -1, ostype;
virCapsGuestPtr guest; /* this is freed when caps is freed */
/*
goto exit;
}
+ if ((ostype = virDomainOSTypeFromString(ctl->hvm)) < 0) {
+ vah_error(ctl, 0, _("unknown OS type"));
+ goto exit;
+ }
+
if ((guest = virCapabilitiesAddGuest(ctl->caps,
- ctl->hvm,
+ ostype,
ctl->arch,
NULL,
NULL,
testConnPtr privconn = conn->privateData;
virCapsPtr caps;
virCapsGuestPtr guest;
- const char *const guest_types[] = { "hvm", "xen" };
+ int guest_types[] = { VIR_DOMAIN_OSTYPE_HVM,
+ VIR_DOMAIN_OSTYPE_XEN };
size_t i;
if ((caps = virCapabilitiesNew(VIR_ARCH_I686, false, false)) == NULL)
}
if ((guest = virCapabilitiesAddGuest(caps,
- "uml",
+ VIR_DOMAIN_OSTYPE_UML,
caps->host.arch,
NULL,
NULL,
goto no_memory;
if ((guest = virCapabilitiesAddGuest(caps,
- "hvm",
+ VIR_DOMAIN_OSTYPE_HVM,
caps->host.arch,
NULL,
NULL,
/* i686 guests are always supported */
if ((guest = virCapabilitiesAddGuest(caps,
- "hvm",
+ VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_I686,
NULL, NULL, 0, NULL)) == NULL)
goto error;
cpuHasFeature(data, "svm")))) {
if ((guest = virCapabilitiesAddGuest(caps,
- "hvm",
+ VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_X86_64,
NULL, NULL, 0, NULL)) == NULL)
goto error;
goto no_memory;
if ((guest = virCapabilitiesAddGuest(caps,
- guest_archs[i].hvm ? "hvm" : "xen",
+ guest_archs[i].hvm ? VIR_DOMAIN_OSTYPE_HVM : VIR_DOMAIN_OSTYPE_XEN,
guest_archs[i].arch,
(hostarch == VIR_ARCH_X86_64 ?
"/usr/lib64/xen/bin/qemu-dm" :
if (!caps)
return NULL;
- guest1 = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_X86_64, "", "", 0, NULL);
+ guest1 = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_X86_64, "", "", 0, NULL);
if (!guest1)
goto error_cleanup;
domain1 = virCapabilitiesAddGuestDomain(guest1, "xen", "", "", 0, NULL);
if (!domain1)
goto error_cleanup;
- guest2 = virCapabilitiesAddGuest(caps, "xen", VIR_ARCH_X86_64, "", "", 0, NULL);
+ guest2 = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_XEN, VIR_ARCH_X86_64, "", "", 0, NULL);
if (!guest2)
goto error_cleanup;
domain2 = virCapabilitiesAddGuestDomain(guest2, "xen", "", "", 0, NULL);
false, false)) == NULL)
return NULL;
- if ((guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_I686,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_I686,
"/usr/bin/acme-virt", NULL,
0, NULL)) == NULL)
goto error;
goto error;
- if ((guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_X86_64,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_X86_64,
"/usr/bin/acme-virt", NULL,
0, NULL)) == NULL)
goto error;
false, false)) == NULL)
return NULL;
- if ((guest = virCapabilitiesAddGuest(caps, "exe", VIR_ARCH_I686,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_EXE,
+ VIR_ARCH_I686,
"/usr/libexec/libvirt_lxc", NULL,
0, NULL)) == NULL)
goto error;
goto error;
- if ((guest = virCapabilitiesAddGuest(caps, "exe", VIR_ARCH_X86_64,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_EXE,
+ VIR_ARCH_X86_64,
"/usr/libexec/libvirt_lxc", NULL,
0, NULL)) == NULL)
goto error;
if (!machines)
goto error;
- guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_PPC64,
+ guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_PPC64,
"/usr/bin/qemu-system-ppc64", NULL,
1, machines);
if (!guest)
if (!machines)
goto error;
- guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_PPC64LE,
+ guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_PPC64LE,
"/usr/bin/qemu-system-ppc64", NULL,
1, machines);
if (!guest)
if (!machines)
goto error;
- guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_PPC,
+ guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_PPC,
"/usr/bin/qemu-system-ppc", NULL,
1, machines);
if (!guest)
if (!machines)
goto error;
- guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_S390X,
+ guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_S390X,
"/usr/bin/qemu-system-s390x", NULL,
ARRAY_CARDINALITY(s390_machines),
machines);
if (!capsmachines)
goto error;
- guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_ARMV7L,
+ guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_ARMV7L,
"/usr/bin/qemu-system-arm", NULL,
ARRAY_CARDINALITY(machines),
capsmachines);
if (!capsmachines)
goto error;
- guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_AARCH64,
+ guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_AARCH64,
"/usr/bin/qemu-system-aarch64", NULL,
ARRAY_CARDINALITY(machines),
capsmachines);
if ((machines = testQemuAllocMachines(&nmachines)) == NULL)
goto cleanup;
- if ((guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_I686,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_I686,
"/usr/bin/qemu", NULL,
nmachines, machines)) == NULL ||
!virCapabilitiesAddGuestFeature(guest, "cpuselection", true, false))
if ((machines = testQemuAllocNewerMachines(&nmachines)) == NULL)
goto cleanup;
- if ((guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_X86_64,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_X86_64,
"/usr/bin/qemu-system-x86_64", NULL,
nmachines, machines)) == NULL ||
!virCapabilitiesAddGuestFeature(guest, "cpuselection", true, false))
if ((machines = virCapabilitiesAllocMachines(xen_machines, nmachines)) == NULL)
goto cleanup;
- if ((guest = virCapabilitiesAddGuest(caps, "xen", VIR_ARCH_X86_64,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_XEN, VIR_ARCH_X86_64,
"/usr/bin/xenner", NULL,
nmachines, machines)) == NULL)
goto cleanup;
if ((machines = virCapabilitiesAllocMachines(x86_machines, nmachines)) == NULL)
goto cleanup;
- if ((guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_I686,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_I686,
"/usr/lib/xen/bin/qemu-dm", NULL,
nmachines, machines)) == NULL)
goto cleanup;
if ((machines = virCapabilitiesAllocMachines(xen_machines, nmachines)) == NULL)
goto cleanup;
- if ((guest = virCapabilitiesAddGuest(caps, "xen", VIR_ARCH_I686,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_XEN, VIR_ARCH_I686,
"/usr/lib/xen/bin/qemu-dm", NULL,
nmachines, machines)) == NULL)
goto cleanup;
nmachines = ARRAY_CARDINALITY(x86_machines);
if ((machines = virCapabilitiesAllocMachines(x86_machines, nmachines)) == NULL)
goto cleanup;
- if ((guest = virCapabilitiesAddGuest(caps, "hvm", VIR_ARCH_X86_64,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM,
+ VIR_ARCH_X86_64,
"/usr/lib/xen/bin/qemu-system-i386",
"/usr/lib/xen/boot/hvmloader",
nmachines, machines)) == NULL)
if ((machines = virCapabilitiesAllocMachines(xen_machines, nmachines)) == NULL)
goto cleanup;
- if ((guest = virCapabilitiesAddGuest(caps, "xen", VIR_ARCH_X86_64,
+ if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_XEN,
+ VIR_ARCH_X86_64,
"/usr/lib/xen/bin/qemu-system-i386",
NULL,
nmachines, machines)) == NULL)
/* i686 guest */
guest =
- virCapabilitiesAddGuest(caps, "hvm",
+ virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_I686,
NULL, NULL, 0, NULL);
/* x86_64 guest */
guest =
- virCapabilitiesAddGuest(caps, "hvm",
+ virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_X86_64,
NULL, NULL, 0, NULL);
/* i686 guest */
guest =
- virCapabilitiesAddGuest(caps, "hvm",
+ virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_I686,
NULL, NULL, 0, NULL);
/* x86_64 guest */
guest =
- virCapabilitiesAddGuest(caps, "hvm",
+ virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM,
VIR_ARCH_X86_64,
NULL, NULL, 0, NULL);