storage: Directory shouldn't be listed as type 'file'

Fix internals of libvirt for new storage volume type.
Libvirt reported an invalid type of the volume.

BZ #727088
This commit is contained in:
Peter Krempa 2011-08-11 11:37:17 +02:00 committed by Eric Blake
parent 98369d314b
commit 6c55124f37
2 changed files with 5 additions and 0 deletions

View File

@ -1705,6 +1705,7 @@ typedef virStorageVol *virStorageVolPtr;
typedef enum {
VIR_STORAGE_VOL_FILE = 0, /* Regular file based volumes */
VIR_STORAGE_VOL_BLOCK = 1, /* Block based volumes */
VIR_STORAGE_VOL_DIR = 2, /* Directory-passthrough based volume */
} virStorageVolType;
typedef enum {

View File

@ -675,6 +675,10 @@ virStorageBackendFileSystemRefresh(virConnectPtr conn ATTRIBUTE_UNUSED,
goto cleanup;
}
/* directory based volume */
if (vol->target.format == VIR_STORAGE_FILE_DIR)
vol->type = VIR_STORAGE_VOL_DIR;
if (backingStore != NULL) {
vol->backingStore.path = backingStore;
vol->backingStore.format = backingStoreFormat;