From: Peter Krempa Date: Wed, 25 Jun 2014 11:47:32 +0000 (+0200) Subject: util: storage: Add helper to determine whether storage is local X-Git-Tag: v1.2.7-rc1~228 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ea43f5f9b3a3899704d01aabfd3184fd0ef5c076;p=thirdparty%2Flibvirt.git util: storage: Add helper to determine whether storage is local There's a lot of places where we skip doing actions based on the locality of given storage type. The usual pattern is to skip it if: virStorageSourceGetActualType(src) == VIR_STORAGE_TYPE_NETWORK Add a simple helper to simplify the pattern to virStorageSourceIsLocalStorage(src) --- diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 8c02df17af..29e9db930e 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -1922,6 +1922,7 @@ virStorageSourceClear; virStorageSourceFree; virStorageSourceGetActualType; virStorageSourceGetSecurityLabelDef; +virStorageSourceIsLocalStorage; virStorageSourceNewFromBacking; virStorageSourcePoolDefFree; virStorageSourcePoolModeTypeFromString; diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c index 15043827b1..9208b77477 100644 --- a/src/util/virstoragefile.c +++ b/src/util/virstoragefile.c @@ -1742,6 +1742,13 @@ virStorageSourceGetActualType(virStorageSourcePtr def) } +bool +virStorageSourceIsLocalStorage(virStorageSourcePtr src) +{ + return virStorageSourceGetActualType(src) != VIR_STORAGE_TYPE_NETWORK; +} + + /** * virStorageSourceBackingStoreClear: * diff --git a/src/util/virstoragefile.h b/src/util/virstoragefile.h index 833fbe1c01..4f7357b229 100644 --- a/src/util/virstoragefile.h +++ b/src/util/virstoragefile.h @@ -339,6 +339,7 @@ virStorageNetHostDefPtr virStorageNetHostDefCopy(size_t nhosts, void virStorageSourcePoolDefFree(virStorageSourcePoolDefPtr def); void virStorageSourceClear(virStorageSourcePtr def); int virStorageSourceGetActualType(virStorageSourcePtr def); +bool virStorageSourceIsLocalStorage(virStorageSourcePtr src); void virStorageSourceFree(virStorageSourcePtr def); void virStorageSourceBackingStoreClear(virStorageSourcePtr def); virStorageSourcePtr virStorageSourceNewFromBacking(virStorageSourcePtr parent);