Now we don't need to skip backing chain detection for remote disks.
int ret = 0;
uid_t uid;
gid_t gid;
- const char *src = virDomainDiskGetSource(disk);
- int type = virDomainDiskGetType(disk);
+ int type = virStorageSourceGetActualType(&disk->src);
- if (!src ||
- type == VIR_STORAGE_TYPE_NETWORK ||
- type == VIR_STORAGE_TYPE_VOLUME)
+ if (type != VIR_STORAGE_TYPE_NETWORK &&
+ !disk->src.path)
goto cleanup;
if (disk->src.backingStore) {
if (!(cycle = virHashCreate(5, NULL)))
return -1;
- if (virStorageSourceGetActualType(src) != VIR_STORAGE_TYPE_NETWORK) {
- if (!src->relPath &&
- VIR_STRDUP(src->relPath, src->path) < 0)
- goto cleanup;
+ if (!src->relPath &&
+ VIR_STRDUP(src->relPath, src->path) < 0)
+ goto cleanup;
- if (!src->relDir &&
- !(src->relDir = mdir_name(src->path))) {
- virReportOOMError();
- goto cleanup;
- }
- } else {
- /* TODO: currently unimplemented for non-local storage */
- ret = 0;
+ if (!src->relDir &&
+ !(src->relDir = mdir_name(src->path))) {
+ virReportOOMError();
goto cleanup;
}