
On 03/28/2014 11:01 PM, Peter Krempa wrote:
https://bugzilla.redhat.com/show_bug.cgi?id=1072714
Use the "gluster" command line tool to retrieve information about remote volumes on a gluster server to allow storage pool source lookup.
Unfortunately gluster doesn't provide a management library so that we could use that directly, instead the RPC calls are hardcoded in the command line tool. --- configure.ac | 6 +++ src/storage/storage_backend.c | 86 ++++++++++++++++++++++++++++++++++++++++ src/storage/storage_backend.h | 4 ++ src/storage/storage_backend_fs.c | 5 +++ 4 files changed, 101 insertions(+)
diff --git a/src/storage/storage_backend.c b/src/storage/storage_backend.c index 5b3b536..c7e4688 100644 --- a/src/storage/storage_backend.c +++ b/src/storage/storage_backend.c @@ -1640,3 +1640,89 @@ virStorageBackendStablePath(virStoragePoolObjPtr pool,
return stablepath; } + +#ifdef GLUSTER_CLI +int +virStorageBackendFindGlusterPoolSources(const char *host, + int pooltype, + virStoragePoolSourceListPtr list) +{ + char *outbuf = NULL; + virCommandPtr cmd = NULL;
+ xmlDocPtr doc = NULL; + xmlXPathContextPtr ctxt = NULL; + xmlNodePtr *nodes = NULL;
These three are never freed. Jan