summaryrefslogtreecommitdiffstats
path: root/api/src/glfs.h
diff options
context:
space:
mode:
authorJeff Darcy <jdarcy@redhat.com>2014-03-04 16:53:33 +0000
committerAnand Avati <avati@redhat.com>2014-03-05 21:29:42 -0800
commit1fbffa0aa45560889e29a74c4c6ff16d526de700 (patch)
treee723a7d539ba40812bdb98149ef2435d2ead175e /api/src/glfs.h
parentd6c1468b2779b6247e44b75276436021a3469a59 (diff)
api: add glfs_get_volfile
From the API-header description: > Sometimes it's useful e.g. for scripts to see the volfile, so that > they can parse it and find subvolumes to do things like split-brain > resolution or custom layouts. The API here was specifically intended > to make access e.g. from Python as simple as possible. > > Note that the volume must be started (not necessarily mounted) for > this to work. Change-Id: If3f55ee9611cdf4b77aa53659f0af0d21957817d Signed-off-by: Jeff Darcy <jdarcy@redhat.com> Reviewed-on: http://review.gluster.org/7183 Reviewed-by: Anand Avati <avati@redhat.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
Diffstat (limited to 'api/src/glfs.h')
-rw-r--r--api/src/glfs.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/api/src/glfs.h b/api/src/glfs.h
index 20fb18c9ecf..af6b4899037 100644
--- a/api/src/glfs.h
+++ b/api/src/glfs.h
@@ -253,6 +253,36 @@ int glfs_init (glfs_t *fs) __THROW;
int glfs_fini (glfs_t *fs) __THROW;
/*
+ SYNOPSIS
+
+ glfs_getvol: Get the volfile associated with a 'virtual mount'
+
+ DESCRIPTION
+
+ Sometimes it's useful e.g. for scripts to see the volfile, so that they
+ can parse it and find subvolumes to do things like split-brain resolution
+ or custom layouts. The API here was specifically intended to make access
+ e.g. from Python as simple as possible.
+
+ Note that the volume must be started (not necessarily mounted) for this
+ to work.
+
+ PARAMETERS
+
+ @fs: The 'virtual mount' object for which a volfile is desired
+ @buf: Pointer to a place for the volfile length to be stored
+ @len: Length of @buf
+
+ RETURN VALUES
+
+ >0: filled N bytes of buffer
+ 0: no volfile available
+ <0: volfile length exceeds @len by N bytes (@buf unchanged)
+*/
+
+ssize_t glfs_get_volfile (glfs_t *fs, void *buf, size_t len) __THROW;
+
+/*
* FILE OPERATION
*
* What follows are filesystem operations performed on the