<?xml version="1.0"?> <html> <body> <h1>Driver support matrix</h1> <p> This page documents which <a href="html/">libvirt calls</a> work on which libvirt drivers / hypervisors, and which version the API appeared in. </p> <p> This information changes frequently. This page was last checked or updated on <i>2008-06-05</i>. </p> <h3>Domain functions</h3> <p> x = not supported; empty cell means no information </p> <table class="top_table"> <tr> <th> Function </th> <th> Since </th> <th><a href="drvxen.html">Xen</a></th> <th><a href="drvqemu.html">QEMU</a></th> <th><a href="drvkvm.html">KVM</a></th> <th><a href="remote.html">Remote</a></th> <th><a href="drvvbox.html">VirtualBox</a></th> <th><a href="drvone.html">ONE</a></th> </tr> <tr> <td> virConnectClose </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virConnectGetCapabilities </td> <td> 0.2.1 </td> <td> ≥ 0.2.1 </td> <td> ≥ 0.2.1 </td> <td> ≥ 0.2.1 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virConnectGetHostname </td> <td> 0.3.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.3.3 </td> <td> ≥ 0.3.3 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> x </td> </tr> <tr> <td> virConnectGetMaxVcpus </td> <td> 0.2.1 </td> <td> ≥ 0.2.1 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virConnectGetType </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virConnectGetURI </td> <td> 0.3.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virConnectGetVersion </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virConnectListDefinedDomains </td> <td> 0.1.5 </td> <td> ≥ 0.1.9 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virConnectListDomains </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virConnectNumOfDefinedDomains </td> <td> 0.1.5 </td> <td> ≥ 0.1.9 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virConnectNumOfDomains </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virConnectOpen </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virConnectOpenAuth </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr> <tr> <td> virConnectOpenReadOnly </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainAttachDevice </td> <td> 0.1.9 </td> <td> ≥ 0.1.9 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> x </td> </tr> <tr> <td> virDomainBlockPeek </td> <td> 0.4.3 </td> <td> 0.4.3 </td> <td> 0.4.3 </td> <td> 0.4.3 </td> <td> x </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainBlockStats </td> <td> 0.3.2 </td> <td> ≥ 0.3.2 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.2 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainCoreDump </td> <td> 0.1.9 </td> <td> ≥ 0.1.9 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainCreate </td> <td> 0.1.5 </td> <td> ≥ 0.1.9 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainCreateLinux </td> <td> All </td> <td> ≥ 0.0.5 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainDefineXML </td> <td> 0.1.5 </td> <td> ≥ 0.1.9 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainDestroy </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainDetachDevice </td> <td> 0.1.9 </td> <td> ≥ 0.1.9 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> x </td> </tr> <tr> <td> virDomainFree </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainGetAutostart </td> <td> 0.2.1 </td> <td> x </td> <td> ≥ 0.2.1 </td> <td> ≥ 0.2.1 </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainGetConnect </td> <td> 0.3.0 </td> <td colspan="6"> not a HV function </td> </tr> <tr> <td> virDomainGetID </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainGetInfo </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainGetMaxMemory </td> <td> All </td> <td> All </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> x </td> </tr> <tr> <td> virDomainGetMaxVcpus </td> <td> 0.2.1 </td> <td> ≥ 0.2.1 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainGetName </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainGetOSType </td> <td> All </td> <td> All </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainGetSchedulerParameters </td> <td> 0.2.3 </td> <td> ≥ 0.2.3 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainGetSchedulerType </td> <td> 0.2.3 </td> <td> ≥ 0.2.3 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainGetUUID </td> <td> 0.1.10 </td> <td> ≥ 0.1.10 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainGetUUIDString </td> <td> 0.1.10 </td> <td> ≥ 0.1.10 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainGetVcpus </td> <td> 0.1.4 </td> <td> ≥ 0.1.4 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainInterfaceStats </td> <td> 0.3.2 </td> <td> ≥ 0.3.2 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.2 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainGetXMLDesc </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> x </td> </tr> <tr> <td> virDomainLookupByID </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainLookupByName </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainLookupByUUID </td> <td> 0.1.10 </td> <td> ≥ 0.1.10 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainLookupByUUIDString </td> <td> 0.1.10 </td> <td> ≥ 0.1.10 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainMigrate </td> <td> 0.3.2 </td> <td> ≥ 0.3.2 </td> <td> x </td> <td> x </td> <td> 0.3.2 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainPinVcpu </td> <td> 0.1.4 </td> <td> ≥ 0.1.4 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainReboot </td> <td> 0.1.0 </td> <td> ≥ 0.1.0 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> x </td> </tr> <tr> <td> virDomainRestore </td> <td> All </td> <td> All </td> <td> x </td> <td> ≥ 0.3.2 </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainResume </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainSave </td> <td> All </td> <td> All </td> <td> x </td> <td> ≥ 0.3.2 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> x </td> </tr> <tr> <td> virDomainSetAutostart </td> <td> 0.2.1 </td> <td> x </td> <td> ≥ 0.2.1 </td> <td> ≥ 0.2.1 </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainSetMaxMemory </td> <td> All </td> <td> All </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> x </td> </tr> <tr> <td> virDomainSetMemory </td> <td> 0.1.1 </td> <td> ≥ 0.1.1 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> x </td> </tr> <tr> <td> virDomainSetSchedulerParameters </td> <td> 0.2.3 </td> <td> ≥ 0.2.3 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainSetVcpus </td> <td> 0.1.4 </td> <td> ≥ 0.1.4 </td> <td> x </td> <td> x </td> <td> ≥ 0.3.0 </td> <td> x </td> <td> x </td> </tr> <tr> <td> virDomainShutdown </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainSuspend </td> <td> All </td> <td> All </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virDomainUndefine </td> <td> 0.1.5 </td> <td> ≥ 0.1.9 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> ≥ 0.6.4 </td> </tr> <tr> <td> virGetVersion </td> <td> All </td> <td> All </td> <td colspan="5"> Returns -1 if HV unsupported. </td> </tr> <tr> <td> virInitialize </td> <td> 0.1.0 </td> <td colspan="6"> not a HV function </td> </tr> <tr> <td> virDomainMemoryPeek </td> <td> 0.4.3 </td> <td> x </td> <td> 0.4.3 </td> <td> 0.4.3 </td> <td> x </td> <td> x </td> <td> x </td> </tr> <tr> <td> virNodeGetInfo </td> <td> 0.1.0 </td> <td> ≥ 0.1.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.2.0 </td> <td> ≥ 0.3.0 </td> <td> ≥ 0.6.3 </td> <td> x </td> </tr> <tr> <td> virNodeGetFreeMemory </td> <td> 0.3.3 </td> <td> ≥ 0.3.3 </td> <td> x </td> <td> x </td> <td> x </td> <td> x </td> <td> x </td> </tr> <tr> <td> virNodeGetCellsFreeMemory </td> <td> 0.3.3 </td> <td> ≥ 0.3.3 </td> <td> x </td> <td> x </td> <td> x </td> <td> x </td> <td> x </td> </tr> </table> <h3>Network functions</h3> <p> Network functions are not hypervisor-specific.They require the libvirtd daemon to be running. Most network functions first appeared in libvirt 0.2.0. </p> <table class="top_table"> <tr> <th> Function </th> <th> Since </th> </tr> <tr> <td> virConnectNumOfNetworks </td> <td> 0.2.0 </td> </tr> <tr> <td> virConnectListNetworks </td> <td> 0.2.0 </td> </tr> <tr> <td> virConnectNumOfDefinedNetworks </td> <td> 0.2.0 </td> </tr> <tr> <td> virConnectListDefinedNetworks </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkCreate </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkCreateXML </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkDefineXML </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkDestroy </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkFree </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkGetAutostart </td> <td> 0.2.1 </td> </tr> <tr> <td> virNetworkGetConnect </td> <td> 0.3.0 </td> </tr> <tr> <td> virNetworkGetBridgeName </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkGetName </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkGetUUID </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkGetUUIDString </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkGetXMLDesc </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkLookupByName </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkLookupByUUID </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkLookupByUUIDString </td> <td> 0.2.0 </td> </tr> <tr> <td> virNetworkSetAutostart </td> <td> 0.2.1 </td> </tr> <tr> <td> virNetworkUndefine </td> <td> 0.2.0 </td> </tr> </table> </body> </html>