Driver support matrix

This page documents which libvirt calls work on which libvirt drivers / hypervisors, and which version the API appeared in.

This information changes frequently. This page was last checked or updated on 2008-06-05.

Domain functions

x = not supported; empty cell means no information

Function Since Xen QEMU KVM Remote VirtualBox ONE
virConnectClose All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virConnectGetCapabilities 0.2.1 ≥ 0.2.1 ≥ 0.2.1 ≥ 0.2.1 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virConnectGetHostname 0.3.0 ≥ 0.3.0 ≥ 0.3.3 ≥ 0.3.3 ≥ 0.3.0 ≥ 0.6.3 x
virConnectGetMaxVcpus 0.2.1 ≥ 0.2.1 x x ≥ 0.3.0 x x
virConnectGetType All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virConnectGetURI 0.3.0 ≥ 0.3.0 ≥ 0.3.0 ≥ 0.3.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virConnectGetVersion All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virConnectListDefinedDomains 0.1.5 ≥ 0.1.9 ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virConnectListDomains All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virConnectNumOfDefinedDomains 0.1.5 ≥ 0.1.9 ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virConnectNumOfDomains All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virConnectOpen All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virConnectOpenAuth
virConnectOpenReadOnly All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 x x
virDomainAttachDevice 0.1.9 ≥ 0.1.9 x x ≥ 0.3.0 ≥ 0.6.3 x
virDomainBlockPeek 0.4.3 0.4.3 0.4.3 0.4.3 x x x
virDomainBlockStats 0.3.2 ≥ 0.3.2 x x ≥ 0.3.2 x x
virDomainCoreDump 0.1.9 ≥ 0.1.9 x x ≥ 0.3.0 x x
virDomainCreate 0.1.5 ≥ 0.1.9 ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainCreateLinux All ≥ 0.0.5 x x ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainDefineXML 0.1.5 ≥ 0.1.9 ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainDestroy All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainDetachDevice 0.1.9 ≥ 0.1.9 x x ≥ 0.3.0 ≥ 0.6.3 x
virDomainFree All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainGetAutostart 0.2.1 x ≥ 0.2.1 ≥ 0.2.1 ≥ 0.3.0 x x
virDomainGetConnect 0.3.0 not a HV function
virDomainGetID All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainGetInfo All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainGetMaxMemory All All x x ≥ 0.3.0 ≥ 0.6.3 x
virDomainGetMaxVcpus 0.2.1 ≥ 0.2.1 x x ≥ 0.3.0 x x
virDomainGetName All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainGetOSType All All x x ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainGetSchedulerParameters 0.2.3 ≥ 0.2.3 x x ≥ 0.3.0 x x
virDomainGetSchedulerType 0.2.3 ≥ 0.2.3 x x ≥ 0.3.0 x x
virDomainGetUUID 0.1.10 ≥ 0.1.10 ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainGetUUIDString 0.1.10 ≥ 0.1.10 ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainGetVcpus 0.1.4 ≥ 0.1.4 x x ≥ 0.3.0 x x
virDomainInterfaceStats 0.3.2 ≥ 0.3.2 x x ≥ 0.3.2 x x
virDomainGetXMLDesc All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 x
virDomainLookupByID All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainLookupByName All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainLookupByUUID 0.1.10 ≥ 0.1.10 ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainLookupByUUIDString 0.1.10 ≥ 0.1.10 ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainMigrate 0.3.2 ≥ 0.3.2 x x 0.3.2 x x
virDomainPinVcpu 0.1.4 ≥ 0.1.4 x x ≥ 0.3.0 x x
virDomainReboot 0.1.0 ≥ 0.1.0 x x ≥ 0.3.0 ≥ 0.6.3 x
virDomainRestore All All x ≥ 0.3.2 ≥ 0.3.0 x x
virDomainResume All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainSave All All x ≥ 0.3.2 ≥ 0.3.0 ≥ 0.6.3 x
virDomainSetAutostart 0.2.1 x ≥ 0.2.1 ≥ 0.2.1 ≥ 0.3.0 x x
virDomainSetMaxMemory All All x x ≥ 0.3.0 x
virDomainSetMemory 0.1.1 ≥ 0.1.1 x x ≥ 0.3.0 ≥ 0.6.3 x
virDomainSetSchedulerParameters 0.2.3 ≥ 0.2.3 x x ≥ 0.3.0 x x
virDomainSetVcpus 0.1.4 ≥ 0.1.4 x x ≥ 0.3.0 x x
virDomainShutdown All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainSuspend All All ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virDomainUndefine 0.1.5 ≥ 0.1.9 ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 ≥ 0.6.4
virGetVersion All All Returns -1 if HV unsupported.
virInitialize 0.1.0 not a HV function
virDomainMemoryPeek 0.4.3 x 0.4.3 0.4.3 x x x
virNodeGetInfo 0.1.0 ≥ 0.1.0 ≥ 0.2.0 ≥ 0.2.0 ≥ 0.3.0 ≥ 0.6.3 x
virNodeGetFreeMemory 0.3.3 ≥ 0.3.3 x x x x x
virNodeGetCellsFreeMemory 0.3.3 ≥ 0.3.3 x x x x x

Network functions

Network functions are not hypervisor-specific.They require the libvirtd daemon to be running. Most network functions first appeared in libvirt 0.2.0.

Function Since
virConnectNumOfNetworks 0.2.0
virConnectListNetworks 0.2.0
virConnectNumOfDefinedNetworks 0.2.0
virConnectListDefinedNetworks 0.2.0
virNetworkCreate 0.2.0
virNetworkCreateXML 0.2.0
virNetworkDefineXML 0.2.0
virNetworkDestroy 0.2.0
virNetworkFree 0.2.0
virNetworkGetAutostart 0.2.1
virNetworkGetConnect 0.3.0
virNetworkGetBridgeName 0.2.0
virNetworkGetName 0.2.0
virNetworkGetUUID 0.2.0
virNetworkGetUUIDString 0.2.0
virNetworkGetXMLDesc 0.2.0
virNetworkLookupByName 0.2.0
virNetworkLookupByUUID 0.2.0
virNetworkLookupByUUIDString 0.2.0
virNetworkSetAutostart 0.2.1
virNetworkUndefine 0.2.0