[libvirt] [PATCH 4/4] Add many version number annotations to drivers

Daniel P. Berrange berrange at redhat.com
Fri May 13 13:36:59 UTC 2011


Add many version number annotations to the internal driver
tables, to allow hvsupport.html to display more accurate
information
---
 src/esx/esx_driver.c           |   70 ++++++------
 src/interface/netcf_driver.c   |   28 ++--
 src/libxl/libxl_driver.c       |  102 ++++++++--------
 src/lxc/lxc_driver.c           |   28 ++--
 src/network/bridge_driver.c    |   38 +++---
 src/nwfilter/nwfilter_driver.c |   18 ++--
 src/openvz/openvz_driver.c     |   30 +++---
 src/phyp/phyp_driver.c         |   24 ++--
 src/qemu/qemu_driver.c         |   62 +++++-----
 src/remote/remote_driver.c     |  256 ++++++++++++++++++++--------------------
 src/secret/secret_driver.c     |   22 ++--
 src/storage/storage_driver.c   |   80 ++++++------
 src/test/test_driver.c         |   32 +++---
 src/uml/uml_driver.c           |   62 +++++-----
 src/vbox/vbox_tmpl.c           |   60 +++++-----
 src/vmware/vmware_driver.c     |   52 ++++----
 src/xen/xen_driver.c           |   92 +++++++-------
 src/xenapi/xenapi_driver.c     |   78 ++++++------
 18 files changed, 567 insertions(+), 567 deletions(-)

diff --git a/src/esx/esx_driver.c b/src/esx/esx_driver.c
index 4c9bed2..cb5330e 100644
--- a/src/esx/esx_driver.c
+++ b/src/esx/esx_driver.c
@@ -4591,52 +4591,52 @@ esxDomainGetMemoryParameters(virDomainPtr domain, virMemoryParameterPtr params,
 static virDriver esxDriver = {
     VIR_DRV_ESX,
     "ESX",
-    .open = esxOpen,
-    .close = esxClose,
-    .supports_feature = esxSupportsFeature,
-    .type = esxGetType,
-    .version = esxGetVersion,
-    .getHostname = esxGetHostname,
-    .nodeGetInfo = esxNodeGetInfo,
+    .open = esxOpen, /* 0.7.0 */
+    .close = esxClose, /* 0.7.0 */
+    .supports_feature = esxSupportsFeature, /* 0.7.0 */
+    .type = esxGetType, /* 0.7.0 */
+    .version = esxGetVersion, /* 0.7.0 */
+    .getHostname = esxGetHostname, /* 0.7.0 */
+    .nodeGetInfo = esxNodeGetInfo, /* 0.7.0 */
     .getCapabilities = esxGetCapabilities,
-    .listDomains = esxListDomains,
-    .numOfDomains = esxNumberOfDomains,
-    .domainLookupByID = esxDomainLookupByID,
-    .domainLookupByUUID = esxDomainLookupByUUID,
-    .domainLookupByName = esxDomainLookupByName,
-    .domainSuspend = esxDomainSuspend,
-    .domainResume = esxDomainResume,
-    .domainShutdown = esxDomainShutdown,
-    .domainReboot = esxDomainReboot,
-    .domainDestroy = esxDomainDestroy,
-    .domainGetOSType = esxDomainGetOSType,
-    .domainGetMaxMemory = esxDomainGetMaxMemory,
-    .domainSetMaxMemory = esxDomainSetMaxMemory,
-    .domainSetMemory = esxDomainSetMemory,
+    .listDomains = esxListDomains, /* 0.7.0 */
+    .numOfDomains = esxNumberOfDomains, /* 0.7.0 */
+    .domainLookupByID = esxDomainLookupByID, /* 0.7.0 */
+    .domainLookupByUUID = esxDomainLookupByUUID, /* 0.7.0 */
+    .domainLookupByName = esxDomainLookupByName, /* 0.7.0 */
+    .domainSuspend = esxDomainSuspend, /* 0.7.0 */
+    .domainResume = esxDomainResume, /* 0.7.0 */
+    .domainShutdown = esxDomainShutdown, /* 0.7.0 */
+    .domainReboot = esxDomainReboot, /* 0.7.0 */
+    .domainDestroy = esxDomainDestroy, /* 0.7.0 */
+    .domainGetOSType = esxDomainGetOSType, /* 0.7.0 */
+    .domainGetMaxMemory = esxDomainGetMaxMemory, /* 0.7.0 */
+    .domainSetMaxMemory = esxDomainSetMaxMemory, /* 0.7.0 */
+    .domainSetMemory = esxDomainSetMemory, /* 0.7.0 */
     .domainSetMemoryParameters = esxDomainSetMemoryParameters,
     .domainGetMemoryParameters = esxDomainGetMemoryParameters,
-    .domainGetInfo = esxDomainGetInfo,
-    .domainSetVcpus = esxDomainSetVcpus,
+    .domainGetInfo = esxDomainGetInfo, /* 0.7.0 */
+    .domainSetVcpus = esxDomainSetVcpus, /* 0.7.0 */
     .domainSetVcpusFlags = esxDomainSetVcpusFlags,
     .domainGetVcpusFlags = esxDomainGetVcpusFlags,
-    .domainGetMaxVcpus = esxDomainGetMaxVcpus,
-    .domainGetXMLDesc = esxDomainGetXMLDesc,
-    .domainXMLFromNative = esxDomainXMLFromNative,
+    .domainGetMaxVcpus = esxDomainGetMaxVcpus, /* 0.7.0 */
+    .domainGetXMLDesc = esxDomainGetXMLDesc, /* 0.7.0 */
+    .domainXMLFromNative = esxDomainXMLFromNative, /* 0.7.0 */
     .domainXMLToNative = esxDomainXMLToNative,
-    .listDefinedDomains = esxListDefinedDomains,
-    .numOfDefinedDomains = esxNumberOfDefinedDomains,
-    .domainCreate = esxDomainCreate,
+    .listDefinedDomains = esxListDefinedDomains, /* 0.7.0 */
+    .numOfDefinedDomains = esxNumberOfDefinedDomains, /* 0.7.0 */
+    .domainCreate = esxDomainCreate, /* 0.7.0 */
     .domainCreateWithFlags = esxDomainCreateWithFlags,
     .domainDefineXML = esxDomainDefineXML,
     .domainUndefine = esxDomainUndefine,
     .domainGetAutostart = esxDomainGetAutostart,
     .domainSetAutostart = esxDomainSetAutostart,
-    .domainGetSchedulerType = esxDomainGetSchedulerType,
-    .domainGetSchedulerParameters = esxDomainGetSchedulerParameters,
-    .domainSetSchedulerParameters = esxDomainSetSchedulerParameters,
-    .domainMigratePrepare = esxDomainMigratePrepare,
-    .domainMigratePerform = esxDomainMigratePerform,
-    .domainMigrateFinish = esxDomainMigrateFinish,
+    .domainGetSchedulerType = esxDomainGetSchedulerType, /* 0.7.0 */
+    .domainGetSchedulerParameters = esxDomainGetSchedulerParameters, /* 0.7.0 */
+    .domainSetSchedulerParameters = esxDomainSetSchedulerParameters, /* 0.7.0 */
+    .domainMigratePrepare = esxDomainMigratePrepare, /* 0.7.0 */
+    .domainMigratePerform = esxDomainMigratePerform, /* 0.7.0 */
+    .domainMigrateFinish = esxDomainMigrateFinish, /* 0.7.0 */
     .nodeGetFreeMemory = esxNodeGetFreeMemory,
     .isEncrypted = esxIsEncrypted,
     .isSecure = esxIsSecure,
diff --git a/src/interface/netcf_driver.c b/src/interface/netcf_driver.c
index 74b9638..d5b401a 100644
--- a/src/interface/netcf_driver.c
+++ b/src/interface/netcf_driver.c
@@ -542,20 +542,20 @@ cleanup:
 
 static virInterfaceDriver interfaceDriver = {
     "Interface",
-    .open = interfaceOpenInterface,
-    .close = interfaceCloseInterface,
-    .numOfInterfaces = interfaceNumOfInterfaces,
-    .listInterfaces = interfaceListInterfaces,
-    .numOfDefinedInterfaces = interfaceNumOfDefinedInterfaces,
-    .listDefinedInterfaces = interfaceListDefinedInterfaces,
-    .interfaceLookupByName = interfaceLookupByName,
-    .interfaceLookupByMACString = interfaceLookupByMACString,
-    .interfaceGetXMLDesc = interfaceGetXMLDesc,
-    .interfaceDefineXML = interfaceDefineXML,
-    .interfaceUndefine = interfaceUndefine,
-    .interfaceCreate = interfaceCreate,
-    .interfaceDestroy = interfaceDestroy,
-    .interfaceIsActive = interfaceIsActive,
+    .open = interfaceOpenInterface, /* 0.7.0 */
+    .close = interfaceCloseInterface, /* 0.7.0 */
+    .numOfInterfaces = interfaceNumOfInterfaces, /* 0.7.0 */
+    .listInterfaces = interfaceListInterfaces, /* 0.7.0 */
+    .numOfDefinedInterfaces = interfaceNumOfDefinedInterfaces, /* 0.7.0 */
+    .listDefinedInterfaces = interfaceListDefinedInterfaces, /* 0.7.0 */
+    .interfaceLookupByName = interfaceLookupByName, /* 0.7.0 */
+    .interfaceLookupByMACString = interfaceLookupByMACString, /* 0.7.0 */
+    .interfaceGetXMLDesc = interfaceGetXMLDesc, /* 0.7.0 */
+    .interfaceDefineXML = interfaceDefineXML, /* 0.7.0 */
+    .interfaceUndefine = interfaceUndefine, /* 0.7.0 */
+    .interfaceCreate = interfaceCreate, /* 0.7.0 */
+    .interfaceDestroy = interfaceDestroy, /* 0.7.0 */
+    .interfaceIsActive = interfaceIsActive, /* 0.7.3 */
 };
 
 int interfaceRegister(void) {
diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index bc54e3e..1d91276 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -2681,57 +2681,57 @@ libxlDomainEventDeregisterAny(virConnectPtr conn, int callbackID)
 static virDriver libxlDriver = {
     VIR_DRV_LIBXL,
     "xenlight",
-    .open = libxlOpen,
-    .close = libxlClose,
-    .type = libxlGetType,
-    .version = libxlGetVersion,
-    .getHostname = virGetHostname,
-    .getMaxVcpus = libxlGetMaxVcpus,
-    .nodeGetInfo = libxlNodeGetInfo,
-    .getCapabilities = libxlGetCapabilities,
-    .listDomains = libxlListDomains,
-    .numOfDomains = libxlNumDomains,
-    .domainCreateXML = libxlDomainCreateXML,
-    .domainLookupByID = libxlDomainLookupByID,
-    .domainLookupByUUID = libxlDomainLookupByUUID,
-    .domainLookupByName = libxlDomainLookupByName,
-    .domainSuspend = libxlDomainSuspend,
-    .domainResume = libxlDomainResume,
-    .domainShutdown = libxlDomainShutdown,
-    .domainReboot = libxlDomainReboot,
-    .domainDestroy = libxlDomainDestroy,
-    .domainGetOSType = libxlDomainGetOSType,
-    .domainGetMaxMemory = libxlDomainGetMaxMemory,
-    .domainSetMemory = libxlDomainSetMemory,
-    .domainSetMemoryFlags = libxlDomainSetMemoryFlags,
-    .domainGetInfo = libxlDomainGetInfo,
-    .domainSetVcpus = libxlDomainSetVcpus,
-    .domainSetVcpusFlags = libxlDomainSetVcpusFlags,
-    .domainGetVcpusFlags = libxlDomainGetVcpusFlags,
-    .domainPinVcpu = libxlDomainPinVcpu,
-    .domainGetVcpus = libxlDomainGetVcpus,
-    .domainGetXMLDesc = libxlDomainGetXMLDesc,
-    .domainXMLFromNative = libxlDomainXMLFromNative,
-    .domainXMLToNative = libxlDomainXMLToNative,
-    .listDefinedDomains = libxlListDefinedDomains,
-    .numOfDefinedDomains = libxlNumDefinedDomains,
-    .domainCreate = libxlDomainCreate,
-    .domainCreateWithFlags = libxlDomainCreateWithFlags,
-    .domainDefineXML = libxlDomainDefineXML,
-    .domainUndefine = libxlDomainUndefine,
-    .domainGetAutostart = libxlDomainGetAutostart,
-    .domainSetAutostart = libxlDomainSetAutostart,
-    .domainGetSchedulerType = libxlDomainGetSchedulerType,
-    .domainGetSchedulerParameters = libxlDomainGetSchedulerParameters,
-    .domainSetSchedulerParameters = libxlDomainSetSchedulerParameters,
-    .nodeGetFreeMemory = libxlNodeGetFreeMemory,
-    .domainEventRegister = libxlDomainEventRegister,
-    .domainEventDeregister = libxlDomainEventDeregister,
-    .domainIsActive = libxlDomainIsActive,
-    .domainIsPersistent = libxlDomainIsPersistent,
-    .domainIsUpdated = libxlDomainIsUpdated,
-    .domainEventRegisterAny = libxlDomainEventRegisterAny,
-    .domainEventDeregisterAny = libxlDomainEventDeregisterAny,
+    .open = libxlOpen, /* 0.9.0 */
+    .close = libxlClose, /* 0.9.0 */
+    .type = libxlGetType, /* 0.9.0 */
+    .version = libxlGetVersion, /* 0.9.0 */
+    .getHostname = virGetHostname, /* 0.9.0 */
+    .getMaxVcpus = libxlGetMaxVcpus, /* 0.9.0 */
+    .nodeGetInfo = libxlNodeGetInfo, /* 0.9.0 */
+    .getCapabilities = libxlGetCapabilities, /* 0.9.0 */
+    .listDomains = libxlListDomains, /* 0.9.0 */
+    .numOfDomains = libxlNumDomains, /* 0.9.0 */
+    .domainCreateXML = libxlDomainCreateXML, /* 0.9.0 */
+    .domainLookupByID = libxlDomainLookupByID, /* 0.9.0 */
+    .domainLookupByUUID = libxlDomainLookupByUUID, /* 0.9.0 */
+    .domainLookupByName = libxlDomainLookupByName, /* 0.9.0 */
+    .domainSuspend = libxlDomainSuspend, /* 0.9.0 */
+    .domainResume = libxlDomainResume, /* 0.9.0 */
+    .domainShutdown = libxlDomainShutdown, /* 0.9.0 */
+    .domainReboot = libxlDomainReboot, /* 0.9.0 */
+    .domainDestroy = libxlDomainDestroy, /* 0.9.0 */
+    .domainGetOSType = libxlDomainGetOSType, /* 0.9.0 */
+    .domainGetMaxMemory = libxlDomainGetMaxMemory, /* 0.9.0 */
+    .domainSetMemory = libxlDomainSetMemory, /* 0.9.0 */
+    .domainSetMemoryFlags = libxlDomainSetMemoryFlags, /* 0.9.0 */
+    .domainGetInfo = libxlDomainGetInfo, /* 0.9.0 */
+    .domainSetVcpus = libxlDomainSetVcpus, /* 0.9.0 */
+    .domainSetVcpusFlags = libxlDomainSetVcpusFlags, /* 0.9.0 */
+    .domainGetVcpusFlags = libxlDomainGetVcpusFlags, /* 0.9.0 */
+    .domainPinVcpu = libxlDomainPinVcpu, /* 0.9.0 */
+    .domainGetVcpus = libxlDomainGetVcpus, /* 0.9.0 */
+    .domainGetXMLDesc = libxlDomainGetXMLDesc, /* 0.9.0 */
+    .domainXMLFromNative = libxlDomainXMLFromNative, /* 0.9.0 */
+    .domainXMLToNative = libxlDomainXMLToNative, /* 0.9.0 */
+    .listDefinedDomains = libxlListDefinedDomains, /* 0.9.0 */
+    .numOfDefinedDomains = libxlNumDefinedDomains, /* 0.9.0 */
+    .domainCreate = libxlDomainCreate, /* 0.9.0 */
+    .domainCreateWithFlags = libxlDomainCreateWithFlags, /* 0.9.0 */
+    .domainDefineXML = libxlDomainDefineXML, /* 0.9.0 */
+    .domainUndefine = libxlDomainUndefine, /* 0.9.0 */
+    .domainGetAutostart = libxlDomainGetAutostart, /* 0.9.0 */
+    .domainSetAutostart = libxlDomainSetAutostart, /* 0.9.0 */
+    .domainGetSchedulerType = libxlDomainGetSchedulerType, /* 0.9.0 */
+    .domainGetSchedulerParameters = libxlDomainGetSchedulerParameters, /* 0.9.0 */
+    .domainSetSchedulerParameters = libxlDomainSetSchedulerParameters, /* 0.9.0 */
+    .nodeGetFreeMemory = libxlNodeGetFreeMemory, /* 0.9.0 */
+    .domainEventRegister = libxlDomainEventRegister, /* 0.9.0 */
+    .domainEventDeregister = libxlDomainEventDeregister, /* 0.9.0 */
+    .domainIsActive = libxlDomainIsActive, /* 0.9.0 */
+    .domainIsPersistent = libxlDomainIsPersistent, /* 0.9.0 */
+    .domainIsUpdated = libxlDomainIsUpdated, /* 0.9.0 */
+    .domainEventRegisterAny = libxlDomainEventRegisterAny, /* 0.9.0 */
+    .domainEventDeregisterAny = libxlDomainEventDeregisterAny, /* 0.9.0 */
 };
 
 static virStateDriver libxlStateDriver = {
diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c
index 1346336..5101dfd 100644
--- a/src/lxc/lxc_driver.c
+++ b/src/lxc/lxc_driver.c
@@ -2708,35 +2708,35 @@ cleanup:
 static virDriver lxcDriver = {
     VIR_DRV_LXC,
     "LXC",
-    .open = lxcOpen,
-    .close = lxcClose,
+    .open = lxcOpen, /* 0.4.2 */
+    .close = lxcClose, /* 0.4.2 */
     .version = lxcVersion,
     .getHostname = virGetHostname,
     .nodeGetInfo = nodeGetInfo,
     .getCapabilities = lxcGetCapabilities,
-    .listDomains = lxcListDomains,
-    .numOfDomains = lxcNumDomains,
+    .listDomains = lxcListDomains, /* 0.4.2 */
+    .numOfDomains = lxcNumDomains, /* 0.4.2 */
     .domainCreateXML = lxcDomainCreateAndStart,
-    .domainLookupByID = lxcDomainLookupByID,
-    .domainLookupByUUID = lxcDomainLookupByUUID,
-    .domainLookupByName = lxcDomainLookupByName,
+    .domainLookupByID = lxcDomainLookupByID, /* 0.4.2 */
+    .domainLookupByUUID = lxcDomainLookupByUUID, /* 0.4.2 */
+    .domainLookupByName = lxcDomainLookupByName, /* 0.4.2 */
     .domainSuspend = lxcDomainSuspend,
     .domainResume = lxcDomainResume,
     .domainDestroy = lxcDomainDestroy,
-    .domainGetOSType = lxcGetOSType,
+    .domainGetOSType = lxcGetOSType, /* 0.4.2 */
     .domainGetMaxMemory = lxcDomainGetMaxMemory,
     .domainSetMaxMemory = lxcDomainSetMaxMemory,
     .domainSetMemory = lxcDomainSetMemory,
     .domainSetMemoryParameters = lxcDomainSetMemoryParameters,
     .domainGetMemoryParameters = lxcDomainGetMemoryParameters,
-    .domainGetInfo = lxcDomainGetInfo,
-    .domainGetXMLDesc = lxcDomainGetXMLDesc,
-    .listDefinedDomains = lxcListDefinedDomains,
-    .numOfDefinedDomains = lxcNumDefinedDomains,
+    .domainGetInfo = lxcDomainGetInfo, /* 0.4.2 */
+    .domainGetXMLDesc = lxcDomainGetXMLDesc, /* 0.4.2 */
+    .listDefinedDomains = lxcListDefinedDomains, /* 0.4.2 */
+    .numOfDefinedDomains = lxcNumDefinedDomains, /* 0.4.2 */
     .domainCreate = lxcDomainStart,
     .domainCreateWithFlags = lxcDomainStartWithFlags,
-    .domainDefineXML = lxcDomainDefine,
-    .domainUndefine = lxcDomainUndefine,
+    .domainDefineXML = lxcDomainDefine, /* 0.4.2 */
+    .domainUndefine = lxcDomainUndefine, /* 0.4.2 */
     .domainGetAutostart = lxcDomainGetAutostart,
     .domainSetAutostart = lxcDomainSetAutostart,
     .domainGetSchedulerType = lxcGetSchedulerType,
diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c
index 00f32ad..5e4b4d9 100644
--- a/src/network/bridge_driver.c
+++ b/src/network/bridge_driver.c
@@ -2504,25 +2504,25 @@ cleanup:
 
 static virNetworkDriver networkDriver = {
     "Network",
-    .open = networkOpenNetwork,
-    .close = networkCloseNetwork,
-    .numOfNetworks = networkNumNetworks,
-    .listNetworks = networkListNetworks,
-    .numOfDefinedNetworks = networkNumDefinedNetworks,
-    .listDefinedNetworks = networkListDefinedNetworks,
-    .networkLookupByUUID = networkLookupByUUID,
-    .networkLookupByName = networkLookupByName,
-    .networkCreateXML = networkCreate,
-    .networkDefineXML = networkDefine,
-    .networkUndefine = networkUndefine,
-    .networkCreate = networkStart,
-    .networkDestroy = networkDestroy,
-    .networkGetXMLDesc = networkGetXMLDesc,
-    .networkGetBridgeName = networkGetBridgeName,
-    .networkGetAutostart = networkGetAutostart,
-    .networkSetAutostart = networkSetAutostart,
-    networkIsActive,
-    networkIsPersistent,
+    .open = networkOpenNetwork, /* 0.2.0 */
+    .close = networkCloseNetwork, /* 0.2.0 */
+    .numOfNetworks = networkNumNetworks, /* 0.2.0 */
+    .listNetworks = networkListNetworks, /* 0.2.0 */
+    .numOfDefinedNetworks = networkNumDefinedNetworks, /* 0.2.0 */
+    .listDefinedNetworks = networkListDefinedNetworks, /* 0.2.0 */
+    .networkLookupByUUID = networkLookupByUUID, /* 0.2.0 */
+    .networkLookupByName = networkLookupByName, /* 0.2.0 */
+    .networkCreateXML = networkCreate, /* 0.2.0 */
+    .networkDefineXML = networkDefine, /* 0.2.0 */
+    .networkUndefine = networkUndefine, /* 0.2.0 */
+    .networkCreate = networkStart, /* 0.2.0 */
+    .networkDestroy = networkDestroy, /* 0.2.0 */
+    .networkGetXMLDesc = networkGetXMLDesc, /* 0.2.0 */
+    .networkGetBridgeName = networkGetBridgeName, /* 0.2.0 */
+    .networkGetAutostart = networkGetAutostart, /* 0.2.1 */
+    .networkSetAutostart = networkSetAutostart, /* 0.2.1 */
+    .networkIsActive = networkIsActive, /* 0.7.3 */
+    .networkIsPersistent = networkIsPersistent, /* 0.7.3 */
 };
 
 static virStateDriver networkStateDriver = {
diff --git a/src/nwfilter/nwfilter_driver.c b/src/nwfilter/nwfilter_driver.c
index 18ea752..db3d789 100644
--- a/src/nwfilter/nwfilter_driver.c
+++ b/src/nwfilter/nwfilter_driver.c
@@ -449,15 +449,15 @@ nwfilterTeardownFilter(virDomainNetDefPtr net) {
 
 static virNWFilterDriver nwfilterDriver = {
     .name = "nwfilter",
-    .open = nwfilterOpen,
-    .close = nwfilterClose,
-    .numOfNWFilters = nwfilterNumNWFilters,
-    .listNWFilters = nwfilterListNWFilters,
-    .nwfilterLookupByName = nwfilterLookupByName,
-    .nwfilterLookupByUUID = nwfilterLookupByUUID,
-    .defineXML = nwfilterDefine,
-    .undefine = nwfilterUndefine,
-    .getXMLDesc = nwfilterGetXMLDesc,
+    .open = nwfilterOpen, /* 0.8.0 */
+    .close = nwfilterClose, /* 0.8.0 */
+    .numOfNWFilters = nwfilterNumNWFilters, /* 0.8.0 */
+    .listNWFilters = nwfilterListNWFilters, /* 0.8.0 */
+    .nwfilterLookupByName = nwfilterLookupByName, /* 0.8.0 */
+    .nwfilterLookupByUUID = nwfilterLookupByUUID, /* 0.8.0 */
+    .defineXML = nwfilterDefine, /* 0.8.0 */
+    .undefine = nwfilterUndefine, /* 0.8.0 */
+    .getXMLDesc = nwfilterGetXMLDesc, /* 0.8.0 */
 };
 
 
diff --git a/src/openvz/openvz_driver.c b/src/openvz/openvz_driver.c
index cac5d17..7cac0fc 100644
--- a/src/openvz/openvz_driver.c
+++ b/src/openvz/openvz_driver.c
@@ -1559,33 +1559,33 @@ cleanup:
 static virDriver openvzDriver = {
     VIR_DRV_OPENVZ,
     "OPENVZ",
-    .open = openvzOpen,
-    .close = openvzClose,
-    .type = openvzGetType,
+    .open = openvzOpen, /* 0.3.1 */
+    .close = openvzClose, /* 0.3.1 */
+    .type = openvzGetType, /* 0.3.1 */
     .version = openvzGetVersion,
     .getMaxVcpus = openvzGetMaxVCPUs,
     .nodeGetInfo = nodeGetInfo,
     .getCapabilities = openvzGetCapabilities,
-    .listDomains = openvzListDomains,
-    .numOfDomains = openvzNumDomains,
+    .listDomains = openvzListDomains, /* 0.3.1 */
+    .numOfDomains = openvzNumDomains, /* 0.3.1 */
     .domainCreateXML = openvzDomainCreateXML,
-    .domainLookupByID = openvzDomainLookupByID,
-    .domainLookupByUUID = openvzDomainLookupByUUID,
-    .domainLookupByName = openvzDomainLookupByName,
+    .domainLookupByID = openvzDomainLookupByID, /* 0.3.1 */
+    .domainLookupByUUID = openvzDomainLookupByUUID, /* 0.3.1 */
+    .domainLookupByName = openvzDomainLookupByName, /* 0.3.1 */
     .domainSuspend = openvzDomainSuspend,
     .domainResume = openvzDomainResume,
-    .domainShutdown = openvzDomainShutdown,
-    .domainReboot = openvzDomainReboot,
-    .domainDestroy = openvzDomainShutdown,
-    .domainGetOSType = openvzGetOSType,
-    .domainGetInfo = openvzDomainGetInfo,
+    .domainShutdown = openvzDomainShutdown, /* 0.3.1 */
+    .domainReboot = openvzDomainReboot, /* 0.3.1 */
+    .domainDestroy = openvzDomainShutdown, /* 0.3.1 */
+    .domainGetOSType = openvzGetOSType, /* 0.3.1 */
+    .domainGetInfo = openvzDomainGetInfo, /* 0.3.1 */
     .domainSetVcpus = openvzDomainSetVcpus,
     .domainSetVcpusFlags = openvzDomainSetVcpusFlags,
     .domainGetVcpusFlags = openvzDomainGetVcpusFlags,
     .domainGetMaxVcpus = openvzDomainGetMaxVcpus,
     .domainGetXMLDesc = openvzDomainGetXMLDesc,
-    .listDefinedDomains = openvzListDefinedDomains,
-    .numOfDefinedDomains = openvzNumDefinedDomains,
+    .listDefinedDomains = openvzListDefinedDomains, /* 0.3.1 */
+    .numOfDefinedDomains = openvzNumDefinedDomains, /* 0.3.1 */
     .domainCreate = openvzDomainCreate,
     .domainCreateWithFlags = openvzDomainCreateWithFlags,
     .domainDefineXML = openvzDomainDefineXML,
diff --git a/src/phyp/phyp_driver.c b/src/phyp/phyp_driver.c
index e147495..3c22e12 100644
--- a/src/phyp/phyp_driver.c
+++ b/src/phyp/phyp_driver.c
@@ -3722,26 +3722,26 @@ phypVIOSDriverClose(virConnectPtr conn ATTRIBUTE_UNUSED)
 static virDriver phypDriver = {
     VIR_DRV_PHYP,
     "PHYP",
-    .open = phypOpen,
-    .close = phypClose,
+    .open = phypOpen, /* 0.7.0 */
+    .close = phypClose, /* 0.7.0 */
     .getCapabilities = phypConnectGetCapabilities,
-    .listDomains = phypListDomains,
-    .numOfDomains = phypNumDomains,
+    .listDomains = phypListDomains, /* 0.7.0 */
+    .numOfDomains = phypNumDomains, /* 0.7.0 */
     .domainCreateXML = phypDomainCreateAndStart,
-    .domainLookupByID = phypDomainLookupByID,
-    .domainLookupByName = phypDomainLookupByName,
-    .domainResume = phypDomainResume,
-    .domainShutdown = phypDomainShutdown,
+    .domainLookupByID = phypDomainLookupByID, /* 0.7.0 */
+    .domainLookupByName = phypDomainLookupByName, /* 0.7.0 */
+    .domainResume = phypDomainResume, /* 0.7.0 */
+    .domainShutdown = phypDomainShutdown, /* 0.7.0 */
     .domainReboot = phypDomainReboot,
     .domainDestroy = phypDomainDestroy,
-    .domainGetInfo = phypDomainGetInfo,
+    .domainGetInfo = phypDomainGetInfo, /* 0.7.0 */
     .domainSetVcpus = phypDomainSetCPU,
     .domainSetVcpusFlags = phypDomainSetVcpusFlags,
     .domainGetVcpusFlags = phypDomainGetVcpusFlags,
     .domainGetMaxVcpus = phypGetLparCPUMAX,
-    .domainGetXMLDesc = phypDomainGetXMLDesc,
-    .listDefinedDomains = phypListDefinedDomains,
-    .numOfDefinedDomains = phypNumDefinedDomains,
+    .domainGetXMLDesc = phypDomainGetXMLDesc, /* 0.7.0 */
+    .listDefinedDomains = phypListDefinedDomains, /* 0.7.0 */
+    .numOfDefinedDomains = phypNumDefinedDomains, /* 0.7.0 */
     .domainAttachDevice = phypAttachDevice,
     .isEncrypted = phypIsEncrypted,
     .isSecure = phypIsSecure,
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 9156b79..34b80a1 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -7224,26 +7224,26 @@ cleanup:
 static virDriver qemuDriver = {
     VIR_DRV_QEMU,
     "QEMU",
-    .open = qemudOpen,
-    .close = qemudClose,
-    .supports_feature = qemudSupportsFeature,
-    .type = qemudGetType,
-    .version = qemudGetVersion,
-    .getHostname = virGetHostname,
-    .getSysinfo = qemuGetSysinfo,
-    .getMaxVcpus = qemudGetMaxVCPUs,
-    .nodeGetInfo = nodeGetInfo,
+    .open = qemudOpen, /* 0.2.0 */
+    .close = qemudClose, /* 0.2.0 */
+    .supports_feature = qemudSupportsFeature, /* 0.2.0 */
+    .type = qemudGetType, /* 0.2.0 */
+    .version = qemudGetVersion, /* 0.2.0 */
+    .getHostname = virGetHostname, /* 0.3.0 */
+    .getSysinfo = qemuGetSysinfo, /* 0.8.8 */
+    .getMaxVcpus = qemudGetMaxVCPUs, /* 0.2.1 */
+    .nodeGetInfo = nodeGetInfo, /* 0.2.0 */
     .getCapabilities = qemudGetCapabilities,
-    .listDomains = qemudListDomains,
-    .numOfDomains = qemudNumDomains,
-    .domainCreateXML = qemudDomainCreate,
-    .domainLookupByID = qemudDomainLookupByID,
-    .domainLookupByUUID = qemudDomainLookupByUUID,
-    .domainLookupByName = qemudDomainLookupByName,
-    .domainSuspend = qemudDomainSuspend,
-    .domainResume = qemudDomainResume,
-    .domainShutdown = qemudDomainShutdown,
-    .domainDestroy = qemudDomainDestroy,
+    .listDomains = qemudListDomains, /* 0.2.0 */
+    .numOfDomains = qemudNumDomains, /* 0.2.0 */
+    .domainCreateXML = qemudDomainCreate, /* 0.2.0 */
+    .domainLookupByID = qemudDomainLookupByID, /* 0.2.0 */
+    .domainLookupByUUID = qemudDomainLookupByUUID, /* 0.2.0 */
+    .domainLookupByName = qemudDomainLookupByName, /* 0.2.0 */
+    .domainSuspend = qemudDomainSuspend, /* 0.2.0 */
+    .domainResume = qemudDomainResume, /* 0.2.0 */
+    .domainShutdown = qemudDomainShutdown, /* 0.2.0 */
+    .domainDestroy = qemudDomainDestroy, /* 0.2.0 */
     .domainGetOSType = qemudDomainGetOSType,
     .domainGetMaxMemory = qemudDomainGetMaxMemory,
     .domainSetMaxMemory = qemudDomainSetMaxMemory,
@@ -7253,9 +7253,9 @@ static virDriver qemuDriver = {
     .domainGetMemoryParameters = qemuDomainGetMemoryParameters,
     .domainSetBlkioParameters = qemuDomainSetBlkioParameters,
     .domainGetBlkioParameters = qemuDomainGetBlkioParameters,
-    .domainGetInfo = qemudDomainGetInfo,
-    .domainSave = qemudDomainSave,
-    .domainRestore = qemuDomainRestore,
+    .domainGetInfo = qemudDomainGetInfo, /* 0.2.0 */
+    .domainSave = qemudDomainSave, /* 0.2.0 */
+    .domainRestore = qemuDomainRestore, /* 0.2.0 */
     .domainCoreDump = qemudDomainCoreDump,
     .domainScreenshot = qemuDomainScreenshot,
     .domainSetVcpus = qemudDomainSetVcpus,
@@ -7263,25 +7263,25 @@ static virDriver qemuDriver = {
     .domainGetVcpusFlags = qemudDomainGetVcpusFlags,
     .domainPinVcpu = qemudDomainPinVcpu,
     .domainGetVcpus = qemudDomainGetVcpus,
-    .domainGetMaxVcpus = qemudDomainGetMaxVcpus,
+    .domainGetMaxVcpus = qemudDomainGetMaxVcpus, /* 0.2.0 */
     .domainGetSecurityLabel = qemudDomainGetSecurityLabel,
     .nodeGetSecurityModel = qemudNodeGetSecurityModel,
-    .domainGetXMLDesc = qemuDomainGetXMLDesc,
+    .domainGetXMLDesc = qemuDomainGetXMLDesc, /* 0.2.0 */
     .domainXMLFromNative = qemuDomainXMLFromNative,
     .domainXMLToNative = qemuDomainXMLToNative,
-    .listDefinedDomains = qemudListDefinedDomains,
-    .numOfDefinedDomains = qemudNumDefinedDomains,
-    .domainCreate = qemudDomainStart,
+    .listDefinedDomains = qemudListDefinedDomains, /* 0.2.0 */
+    .numOfDefinedDomains = qemudNumDefinedDomains, /* 0.2.0 */
+    .domainCreate = qemudDomainStart, /* 0.2.0 */
     .domainCreateWithFlags = qemudDomainStartWithFlags,
-    .domainDefineXML = qemudDomainDefine,
-    .domainUndefine = qemudDomainUndefine,
+    .domainDefineXML = qemudDomainDefine, /* 0.2.0 */
+    .domainUndefine = qemudDomainUndefine, /* 0.2.0 */
     .domainAttachDevice = qemuDomainAttachDevice,
     .domainAttachDeviceFlags = qemuDomainAttachDeviceFlags,
     .domainDetachDevice = qemuDomainDetachDevice,
     .domainDetachDeviceFlags = qemuDomainDetachDeviceFlags,
     .domainUpdateDeviceFlags = qemuDomainUpdateDeviceFlags,
-    .domainGetAutostart = qemudDomainGetAutostart,
-    .domainSetAutostart = qemudDomainSetAutostart,
+    .domainGetAutostart = qemudDomainGetAutostart, /* 0.2.1 */
+    .domainSetAutostart = qemudDomainSetAutostart, /* 0.2.1 */
     .domainGetSchedulerType = qemuGetSchedulerType,
     .domainGetSchedulerParameters = qemuGetSchedulerParameters,
     .domainSetSchedulerParameters = qemuSetSchedulerParameters,
diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
index 09c1491..86a3537 100644
--- a/src/remote/remote_driver.c
+++ b/src/remote/remote_driver.c
@@ -6430,69 +6430,69 @@ unsigned long remoteVersion(void)
 static virDriver remote_driver = {
     VIR_DRV_REMOTE,
     "remote",
-    .open = remoteOpen,
-    .close = remoteClose,
-    .supports_feature = remoteSupportsFeature,
-    .type = remoteType,
-    .version = remoteGetVersion,
+    .open = remoteOpen, /* 0.3.0 */
+    .close = remoteClose, /* 0.3.0 */
+    .supports_feature = remoteSupportsFeature, /* 0.3.0 */
+    .type = remoteType, /* 0.3.0 */
+    .version = remoteGetVersion, /* 0.3.0 */
     .libvirtVersion = remoteGetLibVersion,
-    .getHostname = remoteGetHostname,
+    .getHostname = remoteGetHostname, /* 0.3.0 */
     .getSysinfo = remoteGetSysinfo,
-    .getMaxVcpus = remoteGetMaxVcpus,
-    .nodeGetInfo = remoteNodeGetInfo,
-    .getCapabilities = remoteGetCapabilities,
-    .listDomains = remoteListDomains,
-    .numOfDomains = remoteNumOfDomains,
-    .domainCreateXML = remoteDomainCreateXML,
-    .domainLookupByID = remoteDomainLookupByID,
-    .domainLookupByUUID = remoteDomainLookupByUUID,
-    .domainLookupByName = remoteDomainLookupByName,
-    .domainSuspend = remoteDomainSuspend,
-    .domainResume = remoteDomainResume,
-    .domainShutdown = remoteDomainShutdown,
-    .domainReboot = remoteDomainReboot,
-    .domainDestroy = remoteDomainDestroy,
-    .domainGetOSType = remoteDomainGetOSType,
-    .domainGetMaxMemory = remoteDomainGetMaxMemory,
-    .domainSetMaxMemory = remoteDomainSetMaxMemory,
-    .domainSetMemory = remoteDomainSetMemory,
+    .getMaxVcpus = remoteGetMaxVcpus, /* 0.3.0 */
+    .nodeGetInfo = remoteNodeGetInfo, /* 0.3.0 */
+    .getCapabilities = remoteGetCapabilities, /* 0.3.0 */
+    .listDomains = remoteListDomains, /* 0.3.0 */
+    .numOfDomains = remoteNumOfDomains, /* 0.3.0 */
+    .domainCreateXML = remoteDomainCreateXML, /* 0.3.0 */
+    .domainLookupByID = remoteDomainLookupByID, /* 0.3.0 */
+    .domainLookupByUUID = remoteDomainLookupByUUID, /* 0.3.0 */
+    .domainLookupByName = remoteDomainLookupByName, /* 0.3.0 */
+    .domainSuspend = remoteDomainSuspend, /* 0.3.0 */
+    .domainResume = remoteDomainResume, /* 0.3.0 */
+    .domainShutdown = remoteDomainShutdown, /* 0.3.0 */
+    .domainReboot = remoteDomainReboot, /* 0.3.0 */
+    .domainDestroy = remoteDomainDestroy, /* 0.3.0 */
+    .domainGetOSType = remoteDomainGetOSType, /* 0.3.0 */
+    .domainGetMaxMemory = remoteDomainGetMaxMemory, /* 0.3.0 */
+    .domainSetMaxMemory = remoteDomainSetMaxMemory, /* 0.3.0 */
+    .domainSetMemory = remoteDomainSetMemory, /* 0.3.0 */
     .domainSetMemoryFlags = remoteDomainSetMemoryFlags,
     .domainSetMemoryParameters = remoteDomainSetMemoryParameters,
     .domainGetMemoryParameters = remoteDomainGetMemoryParameters,
     .domainSetBlkioParameters = remoteDomainSetBlkioParameters,
     .domainGetBlkioParameters = remoteDomainGetBlkioParameters,
-    .domainGetInfo = remoteDomainGetInfo,
-    .domainSave = remoteDomainSave,
-    .domainRestore = remoteDomainRestore,
-    .domainCoreDump = remoteDomainCoreDump,
+    .domainGetInfo = remoteDomainGetInfo, /* 0.3.0 */
+    .domainSave = remoteDomainSave, /* 0.3.0 */
+    .domainRestore = remoteDomainRestore, /* 0.3.0 */
+    .domainCoreDump = remoteDomainCoreDump, /* 0.3.0 */
     .domainScreenshot = remoteDomainScreenshot,
-    .domainSetVcpus = remoteDomainSetVcpus,
+    .domainSetVcpus = remoteDomainSetVcpus, /* 0.3.0 */
     .domainSetVcpusFlags = remoteDomainSetVcpusFlags,
     .domainGetVcpusFlags = remoteDomainGetVcpusFlags,
-    .domainPinVcpu = remoteDomainPinVcpu,
-    .domainGetVcpus = remoteDomainGetVcpus,
-    .domainGetMaxVcpus = remoteDomainGetMaxVcpus,
+    .domainPinVcpu = remoteDomainPinVcpu, /* 0.3.0 */
+    .domainGetVcpus = remoteDomainGetVcpus, /* 0.3.0 */
+    .domainGetMaxVcpus = remoteDomainGetMaxVcpus, /* 0.3.0 */
     .domainGetSecurityLabel = remoteDomainGetSecurityLabel,
     .nodeGetSecurityModel = remoteNodeGetSecurityModel,
-    .domainGetXMLDesc = remoteDomainGetXMLDesc,
+    .domainGetXMLDesc = remoteDomainGetXMLDesc, /* 0.3.0 */
     .domainXMLFromNative = remoteDomainXMLFromNative,
     .domainXMLToNative = remoteDomainXMLToNative,
-    .listDefinedDomains = remoteListDefinedDomains,
-    .numOfDefinedDomains = remoteNumOfDefinedDomains,
-    .domainCreate = remoteDomainCreate,
+    .listDefinedDomains = remoteListDefinedDomains, /* 0.3.0 */
+    .numOfDefinedDomains = remoteNumOfDefinedDomains, /* 0.3.0 */
+    .domainCreate = remoteDomainCreate, /* 0.3.0 */
     .domainCreateWithFlags = remoteDomainCreateWithFlags,
-    .domainDefineXML = remoteDomainDefineXML,
-    .domainUndefine = remoteDomainUndefine,
-    .domainAttachDevice = remoteDomainAttachDevice,
+    .domainDefineXML = remoteDomainDefineXML, /* 0.3.0 */
+    .domainUndefine = remoteDomainUndefine, /* 0.3.0 */
+    .domainAttachDevice = remoteDomainAttachDevice, /* 0.3.0 */
     .domainAttachDeviceFlags = remoteDomainAttachDeviceFlags,
-    .domainDetachDevice = remoteDomainDetachDevice,
+    .domainDetachDevice = remoteDomainDetachDevice, /* 0.3.0 */
     .domainDetachDeviceFlags = remoteDomainDetachDeviceFlags,
     .domainUpdateDeviceFlags = remoteDomainUpdateDeviceFlags,
-    .domainGetAutostart = remoteDomainGetAutostart,
-    .domainSetAutostart = remoteDomainSetAutostart,
-    .domainGetSchedulerType = remoteDomainGetSchedulerType,
-    .domainGetSchedulerParameters = remoteDomainGetSchedulerParameters,
-    .domainSetSchedulerParameters = remoteDomainSetSchedulerParameters,
+    .domainGetAutostart = remoteDomainGetAutostart, /* 0.3.0 */
+    .domainSetAutostart = remoteDomainSetAutostart, /* 0.3.0 */
+    .domainGetSchedulerType = remoteDomainGetSchedulerType, /* 0.3.0 */
+    .domainGetSchedulerParameters = remoteDomainGetSchedulerParameters, /* 0.3.0 */
+    .domainSetSchedulerParameters = remoteDomainSetSchedulerParameters, /* 0.3.0 */
     .domainMigratePrepare = remoteDomainMigratePrepare,
     .domainMigratePerform = remoteDomainMigratePerform,
     .domainMigrateFinish = remoteDomainMigrateFinish,
@@ -6512,11 +6512,11 @@ static virDriver remote_driver = {
     .nodeDeviceReAttach = remoteNodeDeviceReAttach,
     .nodeDeviceReset = remoteNodeDeviceReset,
     .domainMigratePrepareTunnel = remoteDomainMigratePrepareTunnel,
-    .isEncrypted = remoteIsEncrypted,
-    .isSecure = remoteIsSecure,
-    .domainIsActive = remoteDomainIsActive,
-    .domainIsPersistent = remoteDomainIsPersistent,
-    .domainIsUpdated = remoteDomainIsUpdated,
+    .isEncrypted = remoteIsEncrypted, /* 0.7.3 */
+    .isSecure = remoteIsSecure, /* 0.7.3 */
+    .domainIsActive = remoteDomainIsActive, /* 0.7.3 */
+    .domainIsPersistent = remoteDomainIsPersistent, /* 0.7.3 */
+    .domainIsUpdated = remoteDomainIsUpdated, /* 0.8.6 */
     .cpuCompare = remoteCPUCompare,
     .cpuBaseline = remoteCPUBaseline,
     .domainGetJobInfo = remoteDomainGetJobInfo,
@@ -6544,101 +6544,101 @@ static virDriver remote_driver = {
 
 static virNetworkDriver network_driver = {
     .name = "remote",
-    .open = remoteNetworkOpen,
-    .close = remoteNetworkClose,
-    .numOfNetworks = remoteNumOfNetworks,
-    .listNetworks = remoteListNetworks,
-    .numOfDefinedNetworks = remoteNumOfDefinedNetworks,
-    .listDefinedNetworks = remoteListDefinedNetworks,
-    .networkLookupByUUID = remoteNetworkLookupByUUID,
-    .networkLookupByName = remoteNetworkLookupByName,
-    .networkCreateXML = remoteNetworkCreateXML,
-    .networkDefineXML = remoteNetworkDefineXML,
-    .networkUndefine = remoteNetworkUndefine,
-    .networkCreate = remoteNetworkCreate,
-    .networkDestroy = remoteNetworkDestroy,
-    .networkGetXMLDesc = remoteNetworkGetXMLDesc,
-    .networkGetBridgeName = remoteNetworkGetBridgeName,
-    .networkGetAutostart = remoteNetworkGetAutostart,
-    .networkSetAutostart = remoteNetworkSetAutostart,
-    .networkIsActive = remoteNetworkIsActive,
-    .networkIsPersistent = remoteNetworkIsPersistent,
+    .open = remoteNetworkOpen, /* 0.3.0 */
+    .close = remoteNetworkClose, /* 0.3.0 */
+    .numOfNetworks = remoteNumOfNetworks, /* 0.3.0 */
+    .listNetworks = remoteListNetworks, /* 0.3.0 */
+    .numOfDefinedNetworks = remoteNumOfDefinedNetworks, /* 0.3.0 */
+    .listDefinedNetworks = remoteListDefinedNetworks, /* 0.3.0 */
+    .networkLookupByUUID = remoteNetworkLookupByUUID, /* 0.3.0 */
+    .networkLookupByName = remoteNetworkLookupByName, /* 0.3.0 */
+    .networkCreateXML = remoteNetworkCreateXML, /* 0.3.0 */
+    .networkDefineXML = remoteNetworkDefineXML, /* 0.3.0 */
+    .networkUndefine = remoteNetworkUndefine, /* 0.3.0 */
+    .networkCreate = remoteNetworkCreate, /* 0.3.0 */
+    .networkDestroy = remoteNetworkDestroy, /* 0.3.0 */
+    .networkGetXMLDesc = remoteNetworkGetXMLDesc, /* 0.3.0 */
+    .networkGetBridgeName = remoteNetworkGetBridgeName, /* 0.3.0 */
+    .networkGetAutostart = remoteNetworkGetAutostart, /* 0.3.0 */
+    .networkSetAutostart = remoteNetworkSetAutostart, /* 0.3.0 */
+    .networkIsActive = remoteNetworkIsActive, /* 0.7.3 */
+    .networkIsPersistent = remoteNetworkIsPersistent, /* 0.7.3 */
 };
 
 static virInterfaceDriver interface_driver = {
     .name = "remote",
-    .open = remoteInterfaceOpen,
-    .close = remoteInterfaceClose,
-    .numOfInterfaces = remoteNumOfInterfaces,
-    .listInterfaces = remoteListInterfaces,
-    .numOfDefinedInterfaces = remoteNumOfDefinedInterfaces,
-    .listDefinedInterfaces = remoteListDefinedInterfaces,
-    .interfaceLookupByName = remoteInterfaceLookupByName,
-    .interfaceLookupByMACString = remoteInterfaceLookupByMACString,
-    .interfaceGetXMLDesc = remoteInterfaceGetXMLDesc,
-    .interfaceDefineXML = remoteInterfaceDefineXML,
-    .interfaceUndefine = remoteInterfaceUndefine,
-    .interfaceCreate = remoteInterfaceCreate,
-    .interfaceDestroy = remoteInterfaceDestroy,
-    .interfaceIsActive = remoteInterfaceIsActive,
+    .open = remoteInterfaceOpen, /* 0.7.2 */
+    .close = remoteInterfaceClose, /* 0.7.2 */
+    .numOfInterfaces = remoteNumOfInterfaces, /* 0.7.2 */
+    .listInterfaces = remoteListInterfaces, /* 0.7.2 */
+    .numOfDefinedInterfaces = remoteNumOfDefinedInterfaces, /* 0.7.2 */
+    .listDefinedInterfaces = remoteListDefinedInterfaces, /* 0.7.2 */
+    .interfaceLookupByName = remoteInterfaceLookupByName, /* 0.7.2 */
+    .interfaceLookupByMACString = remoteInterfaceLookupByMACString, /* 0.7.2 */
+    .interfaceGetXMLDesc = remoteInterfaceGetXMLDesc, /* 0.7.2 */
+    .interfaceDefineXML = remoteInterfaceDefineXML, /* 0.7.2 */
+    .interfaceUndefine = remoteInterfaceUndefine, /* 0.7.2 */
+    .interfaceCreate = remoteInterfaceCreate, /* 0.7.2 */
+    .interfaceDestroy = remoteInterfaceDestroy, /* 0.7.2 */
+    .interfaceIsActive = remoteInterfaceIsActive, /* 0.7.3 */
 };
 
 static virStorageDriver storage_driver = {
     .name = "remote",
-    .open = remoteStorageOpen,
-    .close = remoteStorageClose,
-    .numOfPools = remoteNumOfStoragePools,
-    .listPools = remoteListStoragePools,
-    .numOfDefinedPools = remoteNumOfDefinedStoragePools,
-    .listDefinedPools = remoteListDefinedStoragePools,
+    .open = remoteStorageOpen, /* 0.4.1 */
+    .close = remoteStorageClose, /* 0.4.1 */
+    .numOfPools = remoteNumOfStoragePools, /* 0.4.1 */
+    .listPools = remoteListStoragePools, /* 0.4.1 */
+    .numOfDefinedPools = remoteNumOfDefinedStoragePools, /* 0.4.1 */
+    .listDefinedPools = remoteListDefinedStoragePools, /* 0.4.1 */
     .findPoolSources = remoteFindStoragePoolSources,
-    .poolLookupByName = remoteStoragePoolLookupByName,
-    .poolLookupByUUID = remoteStoragePoolLookupByUUID,
-    .poolLookupByVolume = remoteStoragePoolLookupByVolume,
-    .poolCreateXML = remoteStoragePoolCreateXML,
-    .poolDefineXML = remoteStoragePoolDefineXML,
-    .poolBuild = remoteStoragePoolBuild,
-    .poolUndefine = remoteStoragePoolUndefine,
-    .poolCreate = remoteStoragePoolCreate,
-    .poolDestroy = remoteStoragePoolDestroy,
-    .poolDelete = remoteStoragePoolDelete,
-    .poolRefresh = remoteStoragePoolRefresh,
-    .poolGetInfo = remoteStoragePoolGetInfo,
-    .poolGetXMLDesc = remoteStoragePoolGetXMLDesc,
-    .poolGetAutostart = remoteStoragePoolGetAutostart,
-    .poolSetAutostart = remoteStoragePoolSetAutostart,
-    .poolNumOfVolumes = remoteStoragePoolNumOfVolumes,
-    .poolListVolumes = remoteStoragePoolListVolumes,
-
-    .volLookupByName = remoteStorageVolLookupByName,
-    .volLookupByKey = remoteStorageVolLookupByKey,
-    .volLookupByPath = remoteStorageVolLookupByPath,
-    .volCreateXML = remoteStorageVolCreateXML,
+    .poolLookupByName = remoteStoragePoolLookupByName, /* 0.4.1 */
+    .poolLookupByUUID = remoteStoragePoolLookupByUUID, /* 0.4.1 */
+    .poolLookupByVolume = remoteStoragePoolLookupByVolume, /* 0.4.1 */
+    .poolCreateXML = remoteStoragePoolCreateXML, /* 0.4.1 */
+    .poolDefineXML = remoteStoragePoolDefineXML, /* 0.4.1 */
+    .poolBuild = remoteStoragePoolBuild, /* 0.4.1 */
+    .poolUndefine = remoteStoragePoolUndefine, /* 0.4.1 */
+    .poolCreate = remoteStoragePoolCreate, /* 0.4.1 */
+    .poolDestroy = remoteStoragePoolDestroy, /* 0.4.1 */
+    .poolDelete = remoteStoragePoolDelete, /* 0.4.1 */
+    .poolRefresh = remoteStoragePoolRefresh, /* 0.4.1 */
+    .poolGetInfo = remoteStoragePoolGetInfo, /* 0.4.1 */
+    .poolGetXMLDesc = remoteStoragePoolGetXMLDesc, /* 0.4.1 */
+    .poolGetAutostart = remoteStoragePoolGetAutostart, /* 0.4.1 */
+    .poolSetAutostart = remoteStoragePoolSetAutostart, /* 0.4.1 */
+    .poolNumOfVolumes = remoteStoragePoolNumOfVolumes, /* 0.4.1 */
+    .poolListVolumes = remoteStoragePoolListVolumes, /* 0.4.1 */
+
+    .volLookupByName = remoteStorageVolLookupByName, /* 0.4.1 */
+    .volLookupByKey = remoteStorageVolLookupByKey, /* 0.4.1 */
+    .volLookupByPath = remoteStorageVolLookupByPath, /* 0.4.1 */
+    .volCreateXML = remoteStorageVolCreateXML, /* 0.4.1 */
     .volCreateXMLFrom = remoteStorageVolCreateXMLFrom,
     .volDownload = remoteStorageVolDownload,
     .volUpload = remoteStorageVolUpload,
-    .volDelete = remoteStorageVolDelete,
+    .volDelete = remoteStorageVolDelete, /* 0.4.1 */
     .volWipe = remoteStorageVolWipe,
-    .volGetInfo = remoteStorageVolGetInfo,
-    .volGetXMLDesc = remoteStorageVolGetXMLDesc,
-    .volGetPath = remoteStorageVolGetPath,
-    .poolIsActive = remoteStoragePoolIsActive,
-    .poolIsPersistent = remoteStoragePoolIsPersistent,
+    .volGetInfo = remoteStorageVolGetInfo, /* 0.4.1 */
+    .volGetXMLDesc = remoteStorageVolGetXMLDesc, /* 0.4.1 */
+    .volGetPath = remoteStorageVolGetPath, /* 0.4.1 */
+    .poolIsActive = remoteStoragePoolIsActive, /* 0.7.3 */
+    .poolIsPersistent = remoteStoragePoolIsPersistent, /* 0.7.3 */
 };
 
 static virSecretDriver secret_driver = {
     .name = "remote",
-    .open = remoteSecretOpen,
-    .close = remoteSecretClose,
-    .numOfSecrets = remoteNumOfSecrets,
-    .listSecrets = remoteListSecrets,
-    .lookupByUUID = remoteSecretLookupByUUID,
-    .lookupByUsage = remoteSecretLookupByUsage,
-    .defineXML = remoteSecretDefineXML,
-    .getXMLDesc = remoteSecretGetXMLDesc,
-    .setValue = remoteSecretSetValue,
-    .getValue = remoteSecretGetValue,
-    .undefine = remoteSecretUndefine
+    .open = remoteSecretOpen, /* 0.7.2 */
+    .close = remoteSecretClose, /* 0.7.2 */
+    .numOfSecrets = remoteNumOfSecrets, /* 0.7.2 */
+    .listSecrets = remoteListSecrets, /* 0.7.2 */
+    .lookupByUUID = remoteSecretLookupByUUID, /* 0.7.2 */
+    .lookupByUsage = remoteSecretLookupByUsage, /* 0.7.2 */
+    .defineXML = remoteSecretDefineXML, /* 0.7.2 */
+    .getXMLDesc = remoteSecretGetXMLDesc, /* 0.7.2 */
+    .setValue = remoteSecretSetValue, /* 0.7.2 */
+    .getValue = remoteSecretGetValue, /* 0.7.2 */
+    .undefine = remoteSecretUndefine /* 0.7.2 */
 };
 
 static virDeviceMonitor dev_monitor = {
diff --git a/src/secret/secret_driver.c b/src/secret/secret_driver.c
index 752da98..8f5e735 100644
--- a/src/secret/secret_driver.c
+++ b/src/secret/secret_driver.c
@@ -1062,17 +1062,17 @@ secretDriverReload(void)
 
 static virSecretDriver secretDriver = {
     .name = "secret",
-    .open = secretOpen,
-    .close = secretClose,
-    .numOfSecrets = secretNumOfSecrets,
-    .listSecrets = secretListSecrets,
-    .lookupByUUID = secretLookupByUUID,
-    .lookupByUsage = secretLookupByUsage,
-    .defineXML = secretDefineXML,
-    .getXMLDesc = secretGetXMLDesc,
-    .setValue = secretSetValue,
-    .getValue = secretGetValue,
-    .undefine = secretUndefine
+    .open = secretOpen, /* 0.7.1 */
+    .close = secretClose, /* 0.7.1 */
+    .numOfSecrets = secretNumOfSecrets, /* 0.7.1 */
+    .listSecrets = secretListSecrets, /* 0.7.1 */
+    .lookupByUUID = secretLookupByUUID, /* 0.7.1 */
+    .lookupByUsage = secretLookupByUsage, /* 0.7.1 */
+    .defineXML = secretDefineXML, /* 0.7.1 */
+    .getXMLDesc = secretGetXMLDesc, /* 0.7.1 */
+    .setValue = secretSetValue, /* 0.7.1 */
+    .getValue = secretGetValue, /* 0.7.1 */
+    .undefine = secretUndefine, /* 0.7.1 */
 };
 
 static virStateDriver stateDriver = {
diff --git a/src/storage/storage_driver.c b/src/storage/storage_driver.c
index 6542579..2da2feb 100644
--- a/src/storage/storage_driver.c
+++ b/src/storage/storage_driver.c
@@ -2103,46 +2103,46 @@ cleanup:
 
 static virStorageDriver storageDriver = {
     .name = "storage",
-    .open = storageOpen,
-    .close = storageClose,
-    .numOfPools = storageNumPools,
-    .listPools = storageListPools,
-    .numOfDefinedPools = storageNumDefinedPools,
-    .listDefinedPools = storageListDefinedPools,
-    .findPoolSources = storageFindPoolSources,
-    .poolLookupByName = storagePoolLookupByName,
-    .poolLookupByUUID = storagePoolLookupByUUID,
-    .poolLookupByVolume = storagePoolLookupByVolume,
-    .poolCreateXML = storagePoolCreate,
-    .poolDefineXML = storagePoolDefine,
-    .poolBuild = storagePoolBuild,
-    .poolUndefine = storagePoolUndefine,
-    .poolCreate = storagePoolStart,
-    .poolDestroy = storagePoolDestroy,
-    .poolDelete = storagePoolDelete,
-    .poolRefresh = storagePoolRefresh,
-    .poolGetInfo = storagePoolGetInfo,
-    .poolGetXMLDesc = storagePoolGetXMLDesc,
-    .poolGetAutostart = storagePoolGetAutostart,
-    .poolSetAutostart = storagePoolSetAutostart,
-    .poolNumOfVolumes = storagePoolNumVolumes,
-    .poolListVolumes = storagePoolListVolumes,
-
-    .volLookupByName = storageVolumeLookupByName,
-    .volLookupByKey = storageVolumeLookupByKey,
-    .volLookupByPath = storageVolumeLookupByPath,
-    .volCreateXML = storageVolumeCreateXML,
-    .volCreateXMLFrom = storageVolumeCreateXMLFrom,
-    .volDownload = storageVolumeDownload,
-    .volUpload = storageVolumeUpload,
-    .volDelete = storageVolumeDelete,
-    .volWipe = storageVolumeWipe,
-    .volGetInfo = storageVolumeGetInfo,
-    .volGetXMLDesc = storageVolumeGetXMLDesc,
-    .volGetPath = storageVolumeGetPath,
-
-    .poolIsActive = storagePoolIsActive,
-    .poolIsPersistent = storagePoolIsPersistent,
+    .open = storageOpen, /* 0.4.0 */
+    .close = storageClose, /* 0.4.0 */
+    .numOfPools = storageNumPools, /* 0.4.0 */
+    .listPools = storageListPools, /* 0.4.0 */
+    .numOfDefinedPools = storageNumDefinedPools, /* 0.4.0 */
+    .listDefinedPools = storageListDefinedPools, /* 0.4.0 */
+    .findPoolSources = storageFindPoolSources, /* 0.4.0 */
+    .poolLookupByName = storagePoolLookupByName, /* 0.4.0 */
+    .poolLookupByUUID = storagePoolLookupByUUID, /* 0.4.0 */
+    .poolLookupByVolume = storagePoolLookupByVolume, /* 0.4.0 */
+    .poolCreateXML = storagePoolCreate, /* 0.4.0 */
+    .poolDefineXML = storagePoolDefine, /* 0.4.0 */
+    .poolBuild = storagePoolBuild, /* 0.4.0 */
+    .poolUndefine = storagePoolUndefine, /* 0.4.0 */
+    .poolCreate = storagePoolStart, /* 0.4.0 */
+    .poolDestroy = storagePoolDestroy, /* 0.4.0 */
+    .poolDelete = storagePoolDelete, /* 0.4.0 */
+    .poolRefresh = storagePoolRefresh, /* 0.4.0 */
+    .poolGetInfo = storagePoolGetInfo, /* 0.4.0 */
+    .poolGetXMLDesc = storagePoolGetXMLDesc, /* 0.4.0 */
+    .poolGetAutostart = storagePoolGetAutostart, /* 0.4.0 */
+    .poolSetAutostart = storagePoolSetAutostart, /* 0.4.0 */
+    .poolNumOfVolumes = storagePoolNumVolumes, /* 0.4.0 */
+    .poolListVolumes = storagePoolListVolumes, /* 0.4.0 */
+
+    .volLookupByName = storageVolumeLookupByName, /* 0.4.0 */
+    .volLookupByKey = storageVolumeLookupByKey, /* 0.4.0 */
+    .volLookupByPath = storageVolumeLookupByPath, /* 0.4.0 */
+    .volCreateXML = storageVolumeCreateXML, /* 0.4.0 */
+    .volCreateXMLFrom = storageVolumeCreateXMLFrom, /* 0.6.4 */
+    .volDownload = storageVolumeDownload, /* 0.9.0 */
+    .volUpload = storageVolumeUpload, /* 0.9.0 */
+    .volDelete = storageVolumeDelete, /* 0.4.0 */
+    .volWipe = storageVolumeWipe, /* 0.8.0 */
+    .volGetInfo = storageVolumeGetInfo, /* 0.4.0 */
+    .volGetXMLDesc = storageVolumeGetXMLDesc, /* 0.4.0 */
+    .volGetPath = storageVolumeGetPath, /* 0.4.0 */
+
+    .poolIsActive = storagePoolIsActive, /* 0.7.3 */
+    .poolIsPersistent = storagePoolIsPersistent, /* 0.7.3 */
 };
 
 
diff --git a/src/test/test_driver.c b/src/test/test_driver.c
index 0e8d2bc..451d97a 100644
--- a/src/test/test_driver.c
+++ b/src/test/test_driver.c
@@ -5339,29 +5339,29 @@ static int testNWFilterClose(virConnectPtr conn) {
 static virDriver testDriver = {
     VIR_DRV_TEST,
     "Test",
-    .open = testOpen,
-    .close = testClose,
-    .version = testGetVersion,
+    .open = testOpen, /* 0.1.1 */
+    .close = testClose, /* 0.1.1 */
+    .version = testGetVersion, /* 0.1.1 */
     .getHostname = virGetHostname,
     .getMaxVcpus = testGetMaxVCPUs,
-    .nodeGetInfo = testNodeGetInfo,
+    .nodeGetInfo = testNodeGetInfo, /* 0.1.1 */
     .getCapabilities = testGetCapabilities,
-    .listDomains = testListDomains,
-    .numOfDomains = testNumOfDomains,
+    .listDomains = testListDomains, /* 0.1.1 */
+    .numOfDomains = testNumOfDomains, /* 0.1.1 */
     .domainCreateXML = testDomainCreateXML,
-    .domainLookupByID = testLookupDomainByID,
-    .domainLookupByUUID = testLookupDomainByUUID,
-    .domainLookupByName = testLookupDomainByName,
-    .domainSuspend = testPauseDomain,
-    .domainResume = testResumeDomain,
-    .domainShutdown = testShutdownDomain,
-    .domainReboot = testRebootDomain,
-    .domainDestroy = testDestroyDomain,
+    .domainLookupByID = testLookupDomainByID, /* 0.1.1 */
+    .domainLookupByUUID = testLookupDomainByUUID, /* 0.1.1 */
+    .domainLookupByName = testLookupDomainByName, /* 0.1.1 */
+    .domainSuspend = testPauseDomain, /* 0.1.1 */
+    .domainResume = testResumeDomain, /* 0.1.1 */
+    .domainShutdown = testShutdownDomain, /* 0.1.1 */
+    .domainReboot = testRebootDomain, /* 0.1.1 */
+    .domainDestroy = testDestroyDomain, /* 0.1.1 */
     .domainGetOSType = testGetOSType,
     .domainGetMaxMemory = testGetMaxMemory,
-    .domainSetMaxMemory = testSetMaxMemory,
+    .domainSetMaxMemory = testSetMaxMemory, /* 0.1.1 */
     .domainSetMemory = testSetMemory,
-    .domainGetInfo = testGetDomainInfo,
+    .domainGetInfo = testGetDomainInfo, /* 0.1.1 */
     .domainSave = testDomainSave,
     .domainRestore = testDomainRestore,
     .domainCoreDump = testDomainCoreDump,
diff --git a/src/uml/uml_driver.c b/src/uml/uml_driver.c
index 9813972..ebfd065 100644
--- a/src/uml/uml_driver.c
+++ b/src/uml/uml_driver.c
@@ -2146,42 +2146,42 @@ cleanup:
 static virDriver umlDriver = {
     VIR_DRV_UML,
     "UML",
-    .open = umlOpen,
-    .close = umlClose,
-    .type = umlGetType,
-    .version = umlGetVersion,
-    .getHostname = virGetHostname,
-    .nodeGetInfo = nodeGetInfo,
-    .getCapabilities = umlGetCapabilities,
-    .listDomains = umlListDomains,
-    .numOfDomains = umlNumDomains,
-    .domainCreateXML = umlDomainCreate,
-    .domainLookupByID = umlDomainLookupByID,
-    .domainLookupByUUID = umlDomainLookupByUUID,
-    .domainLookupByName = umlDomainLookupByName,
-    .domainShutdown = umlDomainShutdown,
-    .domainDestroy = umlDomainDestroy,
-    .domainGetOSType = umlDomainGetOSType,
-    .domainGetMaxMemory = umlDomainGetMaxMemory,
-    .domainSetMaxMemory = umlDomainSetMaxMemory,
-    .domainSetMemory = umlDomainSetMemory,
-    .domainGetInfo = umlDomainGetInfo,
-    .domainGetXMLDesc = umlDomainGetXMLDesc,
-    .listDefinedDomains = umlListDefinedDomains,
-    .numOfDefinedDomains = umlNumDefinedDomains,
-    .domainCreate = umlDomainStart,
+    .open = umlOpen, /* 0.5.0 */
+    .close = umlClose, /* 0.5.0 */
+    .type = umlGetType, /* 0.5.0 */
+    .version = umlGetVersion, /* 0.5.0 */
+    .getHostname = virGetHostname, /* 0.5.0 */
+    .nodeGetInfo = nodeGetInfo, /* 0.5.0 */
+    .getCapabilities = umlGetCapabilities, /* 0.5.0 */
+    .listDomains = umlListDomains, /* 0.5.0 */
+    .numOfDomains = umlNumDomains, /* 0.5.0 */
+    .domainCreateXML = umlDomainCreate, /* 0.5.0 */
+    .domainLookupByID = umlDomainLookupByID, /* 0.5.0 */
+    .domainLookupByUUID = umlDomainLookupByUUID, /* 0.5.0 */
+    .domainLookupByName = umlDomainLookupByName, /* 0.5.0 */
+    .domainShutdown = umlDomainShutdown, /* 0.5.0 */
+    .domainDestroy = umlDomainDestroy, /* 0.5.0 */
+    .domainGetOSType = umlDomainGetOSType, /* 0.5.0 */
+    .domainGetMaxMemory = umlDomainGetMaxMemory, /* 0.5.0 */
+    .domainSetMaxMemory = umlDomainSetMaxMemory, /* 0.5.0 */
+    .domainSetMemory = umlDomainSetMemory, /* 0.5.0 */
+    .domainGetInfo = umlDomainGetInfo, /* 0.5.0 */
+    .domainGetXMLDesc = umlDomainGetXMLDesc, /* 0.5.0 */
+    .listDefinedDomains = umlListDefinedDomains, /* 0.5.0 */
+    .numOfDefinedDomains = umlNumDefinedDomains, /* 0.5.0 */
+    .domainCreate = umlDomainStart, /* 0.5.0 */
     .domainCreateWithFlags = umlDomainStartWithFlags,
-    .domainDefineXML = umlDomainDefine,
-    .domainUndefine = umlDomainUndefine,
+    .domainDefineXML = umlDomainDefine, /* 0.5.0 */
+    .domainUndefine = umlDomainUndefine, /* 0.5.0 */
     .domainAttachDevice = umlDomainAttachDevice,
     .domainAttachDeviceFlags = umlDomainAttachDeviceFlags,
     .domainDetachDevice = umlDomainDetachDevice,
     .domainDetachDeviceFlags = umlDomainDetachDeviceFlags,
-    .domainGetAutostart = umlDomainGetAutostart,
-    .domainSetAutostart = umlDomainSetAutostart,
-    .domainBlockPeek = umlDomainBlockPeek,
-    .nodeGetCellsFreeMemory = nodeGetCellsFreeMemory,
-    .nodeGetFreeMemory = nodeGetFreeMemory,
+    .domainGetAutostart = umlDomainGetAutostart, /* 0.5.0 */
+    .domainSetAutostart = umlDomainSetAutostart, /* 0.5.0 */
+    .domainBlockPeek = umlDomainBlockPeek, /* 0.5.0 */
+    .nodeGetCellsFreeMemory = nodeGetCellsFreeMemory, /* 0.5.0 */
+    .nodeGetFreeMemory = nodeGetFreeMemory, /* 0.5.0 */
     .isEncrypted = umlIsEncrypted,
     .isSecure = umlIsSecure,
     .domainIsActive = umlDomainIsActive,
diff --git a/src/vbox/vbox_tmpl.c b/src/vbox/vbox_tmpl.c
index c737263..a97d783 100644
--- a/src/vbox/vbox_tmpl.c
+++ b/src/vbox/vbox_tmpl.c
@@ -8663,42 +8663,42 @@ endjob:
 virDriver NAME(Driver) = {
     VIR_DRV_VBOX,
     "VBOX",
-    .open = vboxOpen,
-    .close = vboxClose,
-    .version = vboxGetVersion,
-    .getHostname = virGetHostname,
-    .getMaxVcpus = vboxGetMaxVcpus,
-    .nodeGetInfo = nodeGetInfo,
-    .getCapabilities = vboxGetCapabilities,
-    .listDomains = vboxListDomains,
-    .numOfDomains = vboxNumOfDomains,
-    .domainCreateXML = vboxDomainCreateXML,
-    .domainLookupByID = vboxDomainLookupByID,
-    .domainLookupByUUID = vboxDomainLookupByUUID,
-    .domainLookupByName = vboxDomainLookupByName,
-    .domainSuspend = vboxDomainSuspend,
-    .domainResume = vboxDomainResume,
-    .domainShutdown = vboxDomainShutdown,
-    .domainReboot = vboxDomainReboot,
-    .domainDestroy = vboxDomainDestroy,
-    .domainGetOSType = vboxDomainGetOSType,
-    .domainSetMemory = vboxDomainSetMemory,
-    .domainGetInfo = vboxDomainGetInfo,
-    .domainSave = vboxDomainSave,
+    .open = vboxOpen, /* 0.6.3 */
+    .close = vboxClose, /* 0.6.3 */
+    .version = vboxGetVersion, /* 0.6.3 */
+    .getHostname = virGetHostname, /* 0.6.3 */
+    .getMaxVcpus = vboxGetMaxVcpus, /* 0.6.3 */
+    .nodeGetInfo = nodeGetInfo, /* 0.6.3 */
+    .getCapabilities = vboxGetCapabilities, /* 0.6.3 */
+    .listDomains = vboxListDomains, /* 0.6.3 */
+    .numOfDomains = vboxNumOfDomains, /* 0.6.3 */
+    .domainCreateXML = vboxDomainCreateXML, /* 0.6.3 */
+    .domainLookupByID = vboxDomainLookupByID, /* 0.6.3 */
+    .domainLookupByUUID = vboxDomainLookupByUUID, /* 0.6.3 */
+    .domainLookupByName = vboxDomainLookupByName, /* 0.6.3 */
+    .domainSuspend = vboxDomainSuspend, /* 0.6.3 */
+    .domainResume = vboxDomainResume, /* 0.6.3 */
+    .domainShutdown = vboxDomainShutdown, /* 0.6.3 */
+    .domainReboot = vboxDomainReboot, /* 0.6.3 */
+    .domainDestroy = vboxDomainDestroy, /* 0.6.3 */
+    .domainGetOSType = vboxDomainGetOSType, /* 0.6.3 */
+    .domainSetMemory = vboxDomainSetMemory, /* 0.6.3 */
+    .domainGetInfo = vboxDomainGetInfo, /* 0.6.3 */
+    .domainSave = vboxDomainSave, /* 0.6.3 */
     .domainSetVcpus = vboxDomainSetVcpus,
     .domainSetVcpusFlags = vboxDomainSetVcpusFlags,
     .domainGetVcpusFlags = vboxDomainGetVcpusFlags,
     .domainGetMaxVcpus = vboxDomainGetMaxVcpus,
-    .domainGetXMLDesc = vboxDomainGetXMLDesc,
-    .listDefinedDomains = vboxListDefinedDomains,
-    .numOfDefinedDomains = vboxNumOfDefinedDomains,
-    .domainCreate = vboxDomainCreate,
+    .domainGetXMLDesc = vboxDomainGetXMLDesc, /* 0.6.3 */
+    .listDefinedDomains = vboxListDefinedDomains, /* 0.6.3 */
+    .numOfDefinedDomains = vboxNumOfDefinedDomains, /* 0.6.3 */
+    .domainCreate = vboxDomainCreate, /* 0.6.3 */
     .domainCreateWithFlags = vboxDomainCreateWithFlags,
-    .domainDefineXML = vboxDomainDefineXML,
-    .domainUndefine = vboxDomainUndefine,
-    .domainAttachDevice = vboxDomainAttachDevice,
+    .domainDefineXML = vboxDomainDefineXML, /* 0.6.3 */
+    .domainUndefine = vboxDomainUndefine, /* 0.6.3 */
+    .domainAttachDevice = vboxDomainAttachDevice, /* 0.6.3 */
     .domainAttachDeviceFlags = vboxDomainAttachDeviceFlags,
-    .domainDetachDevice = vboxDomainDetachDevice,
+    .domainDetachDevice = vboxDomainDetachDevice, /* 0.6.3 */
     .domainDetachDeviceFlags = vboxDomainDetachDeviceFlags,
     .domainUpdateDeviceFlags = vboxDomainUpdateDeviceFlags,
     .nodeGetCellsFreeMemory = nodeGetCellsFreeMemory,
diff --git a/src/vmware/vmware_driver.c b/src/vmware/vmware_driver.c
index 44876ba..19b0db4 100644
--- a/src/vmware/vmware_driver.c
+++ b/src/vmware/vmware_driver.c
@@ -899,32 +899,32 @@ vmwareDomainGetInfo(virDomainPtr dom, virDomainInfoPtr info)
 static virDriver vmwareDriver = {
     VIR_DRV_VMWARE,
     "VMWARE",
-    .open = vmwareOpen,
-    .close = vmwareClose,
-    .type = vmwareGetType,
-    .version = vmwareGetVersion,
-    .listDomains = vmwareListDomains,
-    .numOfDomains = vmwareNumDomains,
-    .domainCreateXML = vmwareDomainCreateXML,
-    .domainLookupByID = vmwareDomainLookupByID,
-    .domainLookupByUUID = vmwareDomainLookupByUUID,
-    .domainLookupByName = vmwareDomainLookupByName,
-    .domainSuspend = vmwareDomainSuspend,
-    .domainResume = vmwareDomainResume,
-    .domainShutdown = vmwareDomainShutdown,
-    .domainReboot = vmwareDomainReboot,
-    .domainDestroy = vmwareDomainShutdown,
-    .domainGetOSType = vmwareGetOSType,
-    .domainGetInfo = vmwareDomainGetInfo,
-    .domainGetXMLDesc = vmwareDomainGetXMLDesc,
-    .listDefinedDomains = vmwareListDefinedDomains,
-    .numOfDefinedDomains = vmwareNumDefinedDomains,
-    .domainCreate = vmwareDomainCreate,
-    .domainCreateWithFlags = vmwareDomainCreateWithFlags,
-    .domainDefineXML = vmwareDomainDefineXML,
-    .domainUndefine = vmwareDomainUndefine,
-    .domainIsActive = vmwareDomainIsActive,
-    .domainIsPersistent = vmwareDomainIsPersistent,
+    .open = vmwareOpen, /* 0.8.7 */
+    .close = vmwareClose, /* 0.8.7 */
+    .type = vmwareGetType, /* 0.8.7 */
+    .version = vmwareGetVersion, /* 0.8.7 */
+    .listDomains = vmwareListDomains, /* 0.8.7 */
+    .numOfDomains = vmwareNumDomains, /* 0.8.7 */
+    .domainCreateXML = vmwareDomainCreateXML, /* 0.8.7 */
+    .domainLookupByID = vmwareDomainLookupByID, /* 0.8.7 */
+    .domainLookupByUUID = vmwareDomainLookupByUUID, /* 0.8.7 */
+    .domainLookupByName = vmwareDomainLookupByName, /* 0.8.7 */
+    .domainSuspend = vmwareDomainSuspend, /* 0.8.7 */
+    .domainResume = vmwareDomainResume, /* 0.8.7 */
+    .domainShutdown = vmwareDomainShutdown, /* 0.8.7 */
+    .domainReboot = vmwareDomainReboot, /* 0.8.7 */
+    .domainDestroy = vmwareDomainShutdown, /* 0.8.7 */
+    .domainGetOSType = vmwareGetOSType, /* 0.8.7 */
+    .domainGetInfo = vmwareDomainGetInfo, /* 0.8.7 */
+    .domainGetXMLDesc = vmwareDomainGetXMLDesc, /* 0.8.7 */
+    .listDefinedDomains = vmwareListDefinedDomains, /* 0.8.7 */
+    .numOfDefinedDomains = vmwareNumDefinedDomains, /* 0.8.7 */
+    .domainCreate = vmwareDomainCreate, /* 0.8.7 */
+    .domainCreateWithFlags = vmwareDomainCreateWithFlags, /* 0.8.7 */
+    .domainDefineXML = vmwareDomainDefineXML, /* 0.8.7 */
+    .domainUndefine = vmwareDomainUndefine, /* 0.8.7 */
+    .domainIsActive = vmwareDomainIsActive, /* 0.8.7 */
+    .domainIsPersistent = vmwareDomainIsPersistent, /* 0.8.7 */
 };
 
 int
diff --git a/src/xen/xen_driver.c b/src/xen/xen_driver.c
index 953d09e..8c3b153 100644
--- a/src/xen/xen_driver.c
+++ b/src/xen/xen_driver.c
@@ -2101,52 +2101,52 @@ cleanup:
 static virDriver xenUnifiedDriver = {
     VIR_DRV_XEN_UNIFIED,
     "Xen",
-    .open = xenUnifiedOpen,
-    .close = xenUnifiedClose,
+    .open = xenUnifiedOpen, /* 0.0.3 */
+    .close = xenUnifiedClose, /* 0.0.3 */
     .supports_feature = xenUnifiedSupportsFeature,
-    .type = xenUnifiedType,
-    .version = xenUnifiedGetVersion,
+    .type = xenUnifiedType, /* 0.0.3 */
+    .version = xenUnifiedGetVersion, /* 0.0.3 */
     .getHostname = virGetHostname,
     .getMaxVcpus = xenUnifiedGetMaxVcpus,
-    .nodeGetInfo = xenUnifiedNodeGetInfo,
+    .nodeGetInfo = xenUnifiedNodeGetInfo, /* 0.1.0 */
     .getCapabilities = xenUnifiedGetCapabilities,
-    .listDomains = xenUnifiedListDomains,
-    .numOfDomains = xenUnifiedNumOfDomains,
-    .domainCreateXML = xenUnifiedDomainCreateXML,
-    .domainLookupByID = xenUnifiedDomainLookupByID,
-    .domainLookupByUUID = xenUnifiedDomainLookupByUUID,
-    .domainLookupByName = xenUnifiedDomainLookupByName,
-    .domainSuspend = xenUnifiedDomainSuspend,
-    .domainResume = xenUnifiedDomainResume,
-    .domainShutdown = xenUnifiedDomainShutdown,
-    .domainReboot = xenUnifiedDomainReboot,
-    .domainDestroy = xenUnifiedDomainDestroy,
-    .domainGetOSType = xenUnifiedDomainGetOSType,
-    .domainGetMaxMemory = xenUnifiedDomainGetMaxMemory,
-    .domainSetMaxMemory = xenUnifiedDomainSetMaxMemory,
-    .domainSetMemory = xenUnifiedDomainSetMemory,
-    .domainGetInfo = xenUnifiedDomainGetInfo,
-    .domainSave = xenUnifiedDomainSave,
-    .domainRestore = xenUnifiedDomainRestore,
-    .domainCoreDump = xenUnifiedDomainCoreDump,
-    .domainSetVcpus = xenUnifiedDomainSetVcpus,
+    .listDomains = xenUnifiedListDomains, /* 0.0.3 */
+    .numOfDomains = xenUnifiedNumOfDomains, /* 0.0.3 */
+    .domainCreateXML = xenUnifiedDomainCreateXML, /* 0.0.3 */
+    .domainLookupByID = xenUnifiedDomainLookupByID, /* 0.0.3 */
+    .domainLookupByUUID = xenUnifiedDomainLookupByUUID, /* 0.0.5 */
+    .domainLookupByName = xenUnifiedDomainLookupByName, /* 0.0.3 */
+    .domainSuspend = xenUnifiedDomainSuspend, /* 0.0.3 */
+    .domainResume = xenUnifiedDomainResume, /* 0.0.3 */
+    .domainShutdown = xenUnifiedDomainShutdown, /* 0.0.3 */
+    .domainReboot = xenUnifiedDomainReboot, /* 0.1.0 */
+    .domainDestroy = xenUnifiedDomainDestroy, /* 0.0.3 */
+    .domainGetOSType = xenUnifiedDomainGetOSType, /* 0.0.3 */
+    .domainGetMaxMemory = xenUnifiedDomainGetMaxMemory, /* 0.0.3 */
+    .domainSetMaxMemory = xenUnifiedDomainSetMaxMemory, /* 0.0.3 */
+    .domainSetMemory = xenUnifiedDomainSetMemory, /* 0.1.1 */
+    .domainGetInfo = xenUnifiedDomainGetInfo, /* 0.0.3 */
+    .domainSave = xenUnifiedDomainSave, /* 0.0.3 */
+    .domainRestore = xenUnifiedDomainRestore, /* 0.0.3 */
+    .domainCoreDump = xenUnifiedDomainCoreDump, /* 0.1.9 */
+    .domainSetVcpus = xenUnifiedDomainSetVcpus, /* 0.1.4 */
     .domainSetVcpusFlags = xenUnifiedDomainSetVcpusFlags,
     .domainGetVcpusFlags = xenUnifiedDomainGetVcpusFlags,
-    .domainPinVcpu = xenUnifiedDomainPinVcpu,
-    .domainGetVcpus = xenUnifiedDomainGetVcpus,
+    .domainPinVcpu = xenUnifiedDomainPinVcpu, /* 0.1.4 */
+    .domainGetVcpus = xenUnifiedDomainGetVcpus, /* 0.1.4 */
     .domainGetMaxVcpus = xenUnifiedDomainGetMaxVcpus,
-    .domainGetXMLDesc = xenUnifiedDomainGetXMLDesc,
+    .domainGetXMLDesc = xenUnifiedDomainGetXMLDesc, /* 0.0.3 */
     .domainXMLFromNative = xenUnifiedDomainXMLFromNative,
     .domainXMLToNative = xenUnifiedDomainXMLToNative,
-    .listDefinedDomains = xenUnifiedListDefinedDomains,
-    .numOfDefinedDomains = xenUnifiedNumOfDefinedDomains,
-    .domainCreate = xenUnifiedDomainCreate,
+    .listDefinedDomains = xenUnifiedListDefinedDomains, /* 0.1.1 */
+    .numOfDefinedDomains = xenUnifiedNumOfDefinedDomains, /* 0.1.5 */
+    .domainCreate = xenUnifiedDomainCreate, /* 0.1.1 */
     .domainCreateWithFlags = xenUnifiedDomainCreateWithFlags,
-    .domainDefineXML = xenUnifiedDomainDefineXML,
-    .domainUndefine = xenUnifiedDomainUndefine,
-    .domainAttachDevice = xenUnifiedDomainAttachDevice,
+    .domainDefineXML = xenUnifiedDomainDefineXML, /* 0.1.1 */
+    .domainUndefine = xenUnifiedDomainUndefine, /* 0.1.1 */
+    .domainAttachDevice = xenUnifiedDomainAttachDevice, /* 0.1.9 */
     .domainAttachDeviceFlags = xenUnifiedDomainAttachDeviceFlags,
-    .domainDetachDevice = xenUnifiedDomainDetachDevice,
+    .domainDetachDevice = xenUnifiedDomainDetachDevice, /* 0.1.9 */
     .domainDetachDeviceFlags = xenUnifiedDomainDetachDeviceFlags,
     .domainUpdateDeviceFlags = xenUnifiedDomainUpdateDeviceFlags,
     .domainGetAutostart = xenUnifiedDomainGetAutostart,
@@ -2164,17 +2164,17 @@ static virDriver xenUnifiedDriver = {
     .nodeGetFreeMemory = xenUnifiedNodeGetFreeMemory,
     .domainEventRegister = xenUnifiedDomainEventRegister,
     .domainEventDeregister = xenUnifiedDomainEventDeregister,
-    .nodeDeviceDettach = xenUnifiedNodeDeviceDettach,
-    .nodeDeviceReAttach = xenUnifiedNodeDeviceReAttach,
-    .nodeDeviceReset = xenUnifiedNodeDeviceReset,
-    .isEncrypted = xenUnifiedIsEncrypted,
-    .isSecure = xenUnifiedIsSecure,
-    .domainIsActive = xenUnifiedDomainIsActive,
-    .domainIsPersistent = xenUnifiedDomainIsPersistent,
-    .domainIsUpdated = xenUnifiedDomainIsUpdated,
-    .domainEventRegisterAny = xenUnifiedDomainEventRegisterAny,
-    .domainEventDeregisterAny = xenUnifiedDomainEventDeregisterAny,
-    .domainOpenConsole = xenUnifiedDomainOpenConsole,
+    .nodeDeviceDettach = xenUnifiedNodeDeviceDettach, /* 0.6.1 */
+    .nodeDeviceReAttach = xenUnifiedNodeDeviceReAttach, /* 0.6.1 */
+    .nodeDeviceReset = xenUnifiedNodeDeviceReset, /* 0.6.1 */
+    .isEncrypted = xenUnifiedIsEncrypted, /* 0.7.3 */
+    .isSecure = xenUnifiedIsSecure, /* 0.7.3 */
+    .domainIsActive = xenUnifiedDomainIsActive, /* 0.7.3 */
+    .domainIsPersistent = xenUnifiedDomainIsPersistent, /* 0.7.3 */
+    .domainIsUpdated = xenUnifiedDomainIsUpdated, /* 0.8.6 */
+    .domainEventRegisterAny = xenUnifiedDomainEventRegisterAny, /* 0.8.0 */
+    .domainEventDeregisterAny = xenUnifiedDomainEventDeregisterAny, /* 0.8.0 */
+    .domainOpenConsole = xenUnifiedDomainOpenConsole, /* 0.8.6 */
 };
 
 /**
diff --git a/src/xenapi/xenapi_driver.c b/src/xenapi/xenapi_driver.c
index 6bfc163..7a00367 100644
--- a/src/xenapi/xenapi_driver.c
+++ b/src/xenapi/xenapi_driver.c
@@ -1781,48 +1781,48 @@ xenapiNodeGetCellsFreeMemory (virConnectPtr conn, unsigned long long *freeMems,
 static virDriver xenapiDriver = {
     VIR_DRV_XENAPI,
     "XenAPI",
-    .open = xenapiOpen,
-    .close = xenapiClose,
-    .supports_feature = xenapiSupportsFeature,
-    .type = xenapiType,
-    .version = xenapiGetVersion,
-    .getHostname = xenapiGetHostname,
-    .getMaxVcpus = xenapiGetMaxVcpus,
-    .nodeGetInfo = xenapiNodeGetInfo,
-    .getCapabilities = xenapiGetCapabilities,
-    .listDomains = xenapiListDomains,
-    .numOfDomains = xenapiNumOfDomains,
-    .domainCreateXML = xenapiDomainCreateXML,
-    .domainLookupByID = xenapiDomainLookupByID,
-    .domainLookupByUUID = xenapiDomainLookupByUUID,
-    .domainLookupByName = xenapiDomainLookupByName,
-    .domainSuspend = xenapiDomainSuspend,
-    .domainResume = xenapiDomainResume,
-    .domainShutdown = xenapiDomainShutdown,
-    .domainReboot = xenapiDomainReboot,
-    .domainDestroy = xenapiDomainDestroy,
-    .domainGetOSType = xenapiDomainGetOSType,
-    .domainGetMaxMemory = xenapiDomainGetMaxMemory,
-    .domainSetMaxMemory = xenapiDomainSetMaxMemory,
-    .domainGetInfo = xenapiDomainGetInfo,
-    .domainSetVcpus = xenapiDomainSetVcpus,
+    .open = xenapiOpen, /* 0.8.0 */
+    .close = xenapiClose, /* 0.8.0 */
+    .supports_feature = xenapiSupportsFeature, /* 0.8.0 */
+    .type = xenapiType, /* 0.8.0 */
+    .version = xenapiGetVersion, /* 0.8.0 */
+    .getHostname = xenapiGetHostname, /* 0.8.0 */
+    .getMaxVcpus = xenapiGetMaxVcpus, /* 0.8.0 */
+    .nodeGetInfo = xenapiNodeGetInfo, /* 0.8.0 */
+    .getCapabilities = xenapiGetCapabilities, /* 0.8.0 */
+    .listDomains = xenapiListDomains, /* 0.8.0 */
+    .numOfDomains = xenapiNumOfDomains, /* 0.8.0 */
+    .domainCreateXML = xenapiDomainCreateXML, /* 0.8.0 */
+    .domainLookupByID = xenapiDomainLookupByID, /* 0.8.0 */
+    .domainLookupByUUID = xenapiDomainLookupByUUID, /* 0.8.0 */
+    .domainLookupByName = xenapiDomainLookupByName, /* 0.8.0 */
+    .domainSuspend = xenapiDomainSuspend, /* 0.8.0 */
+    .domainResume = xenapiDomainResume, /* 0.8.0 */
+    .domainShutdown = xenapiDomainShutdown, /* 0.8.0 */
+    .domainReboot = xenapiDomainReboot, /* 0.8.0 */
+    .domainDestroy = xenapiDomainDestroy, /* 0.8.0 */
+    .domainGetOSType = xenapiDomainGetOSType, /* 0.8.0 */
+    .domainGetMaxMemory = xenapiDomainGetMaxMemory, /* 0.8.0 */
+    .domainSetMaxMemory = xenapiDomainSetMaxMemory, /* 0.8.0 */
+    .domainGetInfo = xenapiDomainGetInfo, /* 0.8.0 */
+    .domainSetVcpus = xenapiDomainSetVcpus, /* 0.8.0 */
     .domainSetVcpusFlags = xenapiDomainSetVcpusFlags,
     .domainGetVcpusFlags = xenapiDomainGetVcpusFlags,
-    .domainPinVcpu = xenapiDomainPinVcpu,
-    .domainGetVcpus = xenapiDomainGetVcpus,
-    .domainGetMaxVcpus = xenapiDomainGetMaxVcpus,
-    .domainGetXMLDesc = xenapiDomainGetXMLDesc,
-    .listDefinedDomains = xenapiListDefinedDomains,
-    .numOfDefinedDomains = xenapiNumOfDefinedDomains,
-    .domainCreate = xenapiDomainCreate,
+    .domainPinVcpu = xenapiDomainPinVcpu, /* 0.8.0 */
+    .domainGetVcpus = xenapiDomainGetVcpus, /* 0.8.0 */
+    .domainGetMaxVcpus = xenapiDomainGetMaxVcpus, /* 0.8.0 */
+    .domainGetXMLDesc = xenapiDomainGetXMLDesc, /* 0.8.0 */
+    .listDefinedDomains = xenapiListDefinedDomains, /* 0.8.0 */
+    .numOfDefinedDomains = xenapiNumOfDefinedDomains, /* 0.8.0 */
+    .domainCreate = xenapiDomainCreate, /* 0.8.0 */
     .domainCreateWithFlags = xenapiDomainCreateWithFlags,
-    .domainDefineXML = xenapiDomainDefineXML,
-    .domainUndefine = xenapiDomainUndefine,
-    .domainGetAutostart = xenapiDomainGetAutostart,
-    .domainSetAutostart = xenapiDomainSetAutostart,
-    .domainGetSchedulerType = xenapiDomainGetSchedulerType,
-    .nodeGetCellsFreeMemory = xenapiNodeGetCellsFreeMemory,
-    .nodeGetFreeMemory = xenapiNodeGetFreeMemory,
+    .domainDefineXML = xenapiDomainDefineXML, /* 0.8.0 */
+    .domainUndefine = xenapiDomainUndefine, /* 0.8.0 */
+    .domainGetAutostart = xenapiDomainGetAutostart, /* 0.8.0 */
+    .domainSetAutostart = xenapiDomainSetAutostart, /* 0.8.0 */
+    .domainGetSchedulerType = xenapiDomainGetSchedulerType, /* 0.8.0 */
+    .nodeGetCellsFreeMemory = xenapiNodeGetCellsFreeMemory, /* 0.8.0 */
+    .nodeGetFreeMemory = xenapiNodeGetFreeMemory, /* 0.8.0 */
     .domainIsUpdated = xenapiDomainIsUpdated,
 };
 
-- 
1.7.4.4




More information about the libvir-list mailing list