---
src/vbox/vbox_common.c | 63 +++++++++++++++++++++++++++++------------
src/vbox/vbox_driver.c | 52 ++--------------------------------
src/vbox/vbox_tmpl.c | 24 ----------------
src/vbox/vbox_uniformed_api.h | 17 -----------
4 files changed, 47 insertions(+), 109 deletions(-)
diff --git a/src/vbox/vbox_common.c b/src/vbox/vbox_common.c
index e32bee5..b1136c7 100644
--- a/src/vbox/vbox_common.c
+++ b/src/vbox/vbox_common.c
@@ -8293,9 +8293,10 @@ static char *vboxNetworkGetXMLDesc(virNetworkPtr network, unsigned
int flags)
* The Storage Functions here on
*/
-virDrvOpenStatus vboxStorageOpen(virConnectPtr conn,
- virConnectAuthPtr auth ATTRIBUTE_UNUSED,
- unsigned int flags)
+static virDrvOpenStatus
+vboxStorageOpen(virConnectPtr conn,
+ virConnectAuthPtr auth ATTRIBUTE_UNUSED,
+ unsigned int flags)
{
vboxGlobalData *data = conn->privateData;
@@ -8314,14 +8315,14 @@ virDrvOpenStatus vboxStorageOpen(virConnectPtr conn,
return VIR_DRV_OPEN_SUCCESS;
}
-int vboxStorageClose(virConnectPtr conn)
+static int vboxStorageClose(virConnectPtr conn)
{
VIR_DEBUG("vbox storage uninitialized");
conn->storagePrivateData = NULL;
return 0;
}
-int vboxConnectNumOfStoragePools(virConnectPtr conn ATTRIBUTE_UNUSED)
+static int vboxConnectNumOfStoragePools(virConnectPtr conn ATTRIBUTE_UNUSED)
{
/** Currently only one pool supported, the default one
@@ -8331,8 +8332,8 @@ int vboxConnectNumOfStoragePools(virConnectPtr conn
ATTRIBUTE_UNUSED)
return 1;
}
-int vboxConnectListStoragePools(virConnectPtr conn ATTRIBUTE_UNUSED,
- char **const names, int nnames)
+static int vboxConnectListStoragePools(virConnectPtr conn ATTRIBUTE_UNUSED,
+ char **const names, int nnames)
{
int numActive = 0;
@@ -8342,7 +8343,8 @@ int vboxConnectListStoragePools(virConnectPtr conn
ATTRIBUTE_UNUSED,
return numActive;
}
-virStoragePoolPtr vboxStoragePoolLookupByName(virConnectPtr conn, const char *name)
+static virStoragePoolPtr
+vboxStoragePoolLookupByName(virConnectPtr conn, const char *name)
{
virStoragePoolPtr ret = NULL;
@@ -8362,7 +8364,7 @@ virStoragePoolPtr vboxStoragePoolLookupByName(virConnectPtr conn,
const char *na
return ret;
}
-int vboxStoragePoolNumOfVolumes(virStoragePoolPtr pool)
+static int vboxStoragePoolNumOfVolumes(virStoragePoolPtr pool)
{
VBOX_OBJECT_CHECK(pool->conn, int, -1);
vboxArray hardDisks = VBOX_ARRAY_INITIALIZER;
@@ -8398,7 +8400,8 @@ int vboxStoragePoolNumOfVolumes(virStoragePoolPtr pool)
return ret;
}
-int vboxStoragePoolListVolumes(virStoragePoolPtr pool, char **const names, int nnames)
+static int vboxStoragePoolListVolumes(virStoragePoolPtr pool,
+ char **const names, int nnames)
{
VBOX_OBJECT_CHECK(pool->conn, int, -1);
vboxArray hardDisks = VBOX_ARRAY_INITIALIZER;
@@ -8449,7 +8452,8 @@ int vboxStoragePoolListVolumes(virStoragePoolPtr pool, char **const
names, int n
return ret;
}
-virStorageVolPtr vboxStorageVolLookupByName(virStoragePoolPtr pool, const char *name)
+static virStorageVolPtr vboxStorageVolLookupByName(virStoragePoolPtr pool,
+ const char *name)
{
VBOX_OBJECT_CHECK(pool->conn, virStorageVolPtr, NULL);
vboxArray hardDisks = VBOX_ARRAY_INITIALIZER;
@@ -8517,7 +8521,8 @@ virStorageVolPtr vboxStorageVolLookupByName(virStoragePoolPtr pool,
const char *
return ret;
}
-virStorageVolPtr vboxStorageVolLookupByKey(virConnectPtr conn, const char *key)
+static virStorageVolPtr
+vboxStorageVolLookupByKey(virConnectPtr conn, const char *key)
{
VBOX_OBJECT_CHECK(conn, virStorageVolPtr, NULL);
vboxIIDUnion hddIID;
@@ -8579,7 +8584,8 @@ virStorageVolPtr vboxStorageVolLookupByKey(virConnectPtr conn, const
char *key)
return ret;
}
-virStorageVolPtr vboxStorageVolLookupByPath(virConnectPtr conn, const char *path)
+static virStorageVolPtr
+vboxStorageVolLookupByPath(virConnectPtr conn, const char *path)
{
VBOX_OBJECT_CHECK(conn, virStorageVolPtr, NULL);
PRUnichar *hddPathUtf16 = NULL;
@@ -8651,7 +8657,7 @@ virStorageVolPtr vboxStorageVolLookupByPath(virConnectPtr conn,
const char *path
return ret;
}
-virStorageVolPtr vboxStorageVolCreateXML(virStoragePoolPtr pool,
+static virStorageVolPtr vboxStorageVolCreateXML(virStoragePoolPtr pool,
const char *xml, unsigned int flags)
{
VBOX_OBJECT_CHECK(pool->conn, virStorageVolPtr, NULL);
@@ -8755,7 +8761,7 @@ virStorageVolPtr vboxStorageVolCreateXML(virStoragePoolPtr pool,
return ret;
}
-int vboxStorageVolDelete(virStorageVolPtr vol, unsigned int flags)
+static int vboxStorageVolDelete(virStorageVolPtr vol, unsigned int flags)
{
VBOX_OBJECT_CHECK(vol->conn, int, -1);
unsigned char uuid[VIR_UUID_BUFLEN];
@@ -8910,7 +8916,8 @@ int vboxStorageVolDelete(virStorageVolPtr vol, unsigned int flags)
return ret;
}
-int vboxStorageVolGetInfo(virStorageVolPtr vol, virStorageVolInfoPtr info)
+static int
+vboxStorageVolGetInfo(virStorageVolPtr vol, virStorageVolInfoPtr info)
{
VBOX_OBJECT_CHECK(vol->conn, int, -1);
IHardDisk *hardDisk = NULL;
@@ -8961,7 +8968,7 @@ int vboxStorageVolGetInfo(virStorageVolPtr vol, virStorageVolInfoPtr
info)
return ret;
}
-char *vboxStorageVolGetXMLDesc(virStorageVolPtr vol, unsigned int flags)
+static char *vboxStorageVolGetXMLDesc(virStorageVolPtr vol, unsigned int flags)
{
VBOX_OBJECT_CHECK(vol->conn, char *, NULL);
IHardDisk *hardDisk = NULL;
@@ -9049,7 +9056,7 @@ char *vboxStorageVolGetXMLDesc(virStorageVolPtr vol, unsigned int
flags)
return ret;
}
-char *vboxStorageVolGetPath(virStorageVolPtr vol)
+static char *vboxStorageVolGetPath(virStorageVolPtr vol)
{
VBOX_OBJECT_CHECK(vol->conn, char *, NULL);
IHardDisk *hardDisk = NULL;
@@ -9190,6 +9197,26 @@ virNetworkDriver vboxCommonNetworkDriver = {
.networkGetXMLDesc = vboxNetworkGetXMLDesc, /* 0.6.4 */
};
+virStorageDriver vboxCommonStorageDriver = {
+ .name = "VBOX",
+ .storageOpen = vboxStorageOpen, /* 0.7.1 */
+ .storageClose = vboxStorageClose, /* 0.7.1 */
+ .connectNumOfStoragePools = vboxConnectNumOfStoragePools, /* 0.7.1 */
+ .connectListStoragePools = vboxConnectListStoragePools, /* 0.7.1 */
+ .storagePoolLookupByName = vboxStoragePoolLookupByName, /* 0.7.1 */
+ .storagePoolNumOfVolumes = vboxStoragePoolNumOfVolumes, /* 0.7.1 */
+ .storagePoolListVolumes = vboxStoragePoolListVolumes, /* 0.7.1 */
+
+ .storageVolLookupByName = vboxStorageVolLookupByName, /* 0.7.1 */
+ .storageVolLookupByKey = vboxStorageVolLookupByKey, /* 0.7.1 */
+ .storageVolLookupByPath = vboxStorageVolLookupByPath, /* 0.7.1 */
+ .storageVolCreateXML = vboxStorageVolCreateXML, /* 0.7.1 */
+ .storageVolDelete = vboxStorageVolDelete, /* 0.7.1 */
+ .storageVolGetInfo = vboxStorageVolGetInfo, /* 0.7.1 */
+ .storageVolGetXMLDesc = vboxStorageVolGetXMLDesc, /* 0.7.1 */
+ .storageVolGetPath = vboxStorageVolGetPath /* 0.7.1 */
+};
+
static void updateDriver(void)
{
/* Update the vboxDriver according to the vboxUniformedAPI.
diff --git a/src/vbox/vbox_driver.c b/src/vbox/vbox_driver.c
index 6c86973..7874e35 100644
--- a/src/vbox/vbox_driver.c
+++ b/src/vbox/vbox_driver.c
@@ -48,19 +48,9 @@
VIR_LOG_INIT("vbox.vbox_driver");
-extern virStorageDriver vbox22StorageDriver;
-extern virStorageDriver vbox30StorageDriver;
-extern virStorageDriver vbox31StorageDriver;
-extern virStorageDriver vbox32StorageDriver;
-extern virStorageDriver vbox40StorageDriver;
-extern virStorageDriver vbox41StorageDriver;
-extern virStorageDriver vbox42StorageDriver;
-extern virStorageDriver vbox42_20StorageDriver;
-extern virStorageDriver vbox43StorageDriver;
-extern virStorageDriver vbox43_4StorageDriver;
-
extern virDriver vboxCommonDriver;
extern virNetworkDriver vboxCommonNetworkDriver;
+extern virStorageDriver vboxCommonStorageDriver;
static virDriver vboxDriverDummy;
@@ -81,7 +71,7 @@ int vboxRegister(void)
*/
driver = &vboxDriverDummy;
networkDriver = &vboxCommonNetworkDriver;
- storageDriver = &vbox22StorageDriver;
+ storageDriver = &vboxCommonStorageDriver;
/* Init the glue and get the API version. */
if (VBoxCGlueInit(&uVersion) == 0) {
@@ -91,44 +81,6 @@ int vboxRegister(void)
uVersion % 1000,
uVersion);
- /* Select driver implementation based on version.
- * Note that the VirtualBox development usually happens at build
- * number 51, thus the version ranges in the if statements below.
- */
- if (uVersion >= 2001052 && uVersion < 2002051) {
- VIR_DEBUG("VirtualBox API version: 2.2");
- storageDriver = &vbox22StorageDriver;
- } else if (uVersion >= 2002051 && uVersion < 3000051) {
- VIR_DEBUG("VirtualBox API version: 3.0");
- storageDriver = &vbox30StorageDriver;
- } else if (uVersion >= 3000051 && uVersion < 3001051) {
- VIR_DEBUG("VirtualBox API version: 3.1");
- storageDriver = &vbox31StorageDriver;
- } else if (uVersion >= 3001051 && uVersion < 3002051) {
- VIR_DEBUG("VirtualBox API version: 3.2");
- storageDriver = &vbox32StorageDriver;
- } else if (uVersion >= 3002051 && uVersion < 4000051) {
- VIR_DEBUG("VirtualBox API version: 4.0");
- storageDriver = &vbox40StorageDriver;
- } else if (uVersion >= 4000051 && uVersion < 4001051) {
- VIR_DEBUG("VirtualBox API version: 4.1");
- storageDriver = &vbox41StorageDriver;
- } else if (uVersion >= 4001051 && uVersion < 4002020) {
- VIR_DEBUG("VirtualBox API version: 4.2");
- storageDriver = &vbox42StorageDriver;
- } else if (uVersion >= 4002020 && uVersion < 4002051) {
- VIR_DEBUG("VirtualBox API version: 4.2.20 or higher");
- storageDriver = &vbox42_20StorageDriver;
- } else if (uVersion >= 4002051 && uVersion < 4003004) {
- VIR_DEBUG("VirtualBox API version: 4.3");
- storageDriver = &vbox43StorageDriver;
- } else if (uVersion >= 4003004 && uVersion < 4003051) {
- VIR_DEBUG("VirtualBox API version: 4.3.4 or higher");
- storageDriver = &vbox43_4StorageDriver;
- } else {
- VIR_DEBUG("Unsupported VirtualBox API version: %u", uVersion);
- }
- /* Register vboxUniformedAPI. */
if (vboxRegisterUniformedAPI(uVersion) == 0)
/* Only if successfully register the uniformed api,
* can we use the vboxCommonDriver. Or use the
diff --git a/src/vbox/vbox_tmpl.c b/src/vbox/vbox_tmpl.c
index 73a72c7..0bce8c4 100644
--- a/src/vbox/vbox_tmpl.c
+++ b/src/vbox/vbox_tmpl.c
@@ -5116,27 +5116,3 @@ void NAME(InstallUniformedAPI)(vboxUniformedAPI *pVBoxAPI)
pVBoxAPI->networkRemoveInterface = 1;
#endif /* VBOX_API_VERSION > 2002000 */
}
-
-/**
- * Function Tables
- */
-
-virStorageDriver NAME(StorageDriver) = {
- .name = "VBOX",
- .storageOpen = vboxStorageOpen, /* 0.7.1 */
- .storageClose = vboxStorageClose, /* 0.7.1 */
- .connectNumOfStoragePools = vboxConnectNumOfStoragePools, /* 0.7.1 */
- .connectListStoragePools = vboxConnectListStoragePools, /* 0.7.1 */
- .storagePoolLookupByName = vboxStoragePoolLookupByName, /* 0.7.1 */
- .storagePoolNumOfVolumes = vboxStoragePoolNumOfVolumes, /* 0.7.1 */
- .storagePoolListVolumes = vboxStoragePoolListVolumes, /* 0.7.1 */
-
- .storageVolLookupByName = vboxStorageVolLookupByName, /* 0.7.1 */
- .storageVolLookupByKey = vboxStorageVolLookupByKey, /* 0.7.1 */
- .storageVolLookupByPath = vboxStorageVolLookupByPath, /* 0.7.1 */
- .storageVolCreateXML = vboxStorageVolCreateXML, /* 0.7.1 */
- .storageVolDelete = vboxStorageVolDelete, /* 0.7.1 */
- .storageVolGetInfo = vboxStorageVolGetInfo, /* 0.7.1 */
- .storageVolGetXMLDesc = vboxStorageVolGetXMLDesc, /* 0.7.1 */
- .storageVolGetPath = vboxStorageVolGetPath /* 0.7.1 */
-};
diff --git a/src/vbox/vbox_uniformed_api.h b/src/vbox/vbox_uniformed_api.h
index 5ec0dee..a638d5c 100644
--- a/src/vbox/vbox_uniformed_api.h
+++ b/src/vbox/vbox_uniformed_api.h
@@ -608,23 +608,6 @@ typedef struct {
virDomainPtr vboxDomainLookupByUUID(virConnectPtr conn,
const unsigned char *uuid);
-virDrvOpenStatus vboxStorageOpen(virConnectPtr conn, virConnectAuthPtr auth,
- unsigned int flags);
-int vboxStorageClose(virConnectPtr conn);
-int vboxConnectNumOfStoragePools(virConnectPtr conn);
-int vboxConnectListStoragePools(virConnectPtr conn, char **const names, int nnames);
-virStoragePoolPtr vboxStoragePoolLookupByName(virConnectPtr conn, const char *name);
-int vboxStoragePoolNumOfVolumes(virStoragePoolPtr pool);
-int vboxStoragePoolListVolumes(virStoragePoolPtr pool, char **const names, int nnames);
-virStorageVolPtr vboxStorageVolLookupByName(virStoragePoolPtr pool, const char *name);
-virStorageVolPtr vboxStorageVolLookupByKey(virConnectPtr conn, const char *key);
-virStorageVolPtr vboxStorageVolLookupByPath(virConnectPtr conn, const char *path);
-virStorageVolPtr vboxStorageVolCreateXML(virStoragePoolPtr pool,
- const char *xml, unsigned int flags);
-int vboxStorageVolDelete(virStorageVolPtr vol, unsigned int flags);
-int vboxStorageVolGetInfo(virStorageVolPtr vol, virStorageVolInfoPtr info);
-char *vboxStorageVolGetXMLDesc(virStorageVolPtr vol, unsigned int flags);
-char *vboxStorageVolGetPath(virStorageVolPtr vol);
/* Version specified functions for installing uniformed API */
void vbox22InstallUniformedAPI(vboxUniformedAPI *pVBoxAPI);
--
1.7.9.5