[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [lvm-devel] [PATCH 1/2] lvm2app: Add function to retrieve the origin.



Dne 11.4.2013 22:58, Tony Asleson napsal(a):
Signed-off-by: Tony Asleson <tasleson redhat com>
---
  liblvm/lvm2app.h | 16 ++++++++++++++++
  liblvm/lvm_lv.c  |  5 +++++
  2 files changed, 21 insertions(+)

diff --git a/liblvm/lvm2app.h b/liblvm/lvm2app.h
index 15827ac..369c300 100644
--- a/liblvm/lvm2app.h
+++ b/liblvm/lvm2app.h
@@ -1223,6 +1223,22 @@ const char *lvm_lv_get_name(const lv_t lv);
  const char *lvm_lv_get_attr(const lv_t lv);

  /**
+ * Get the origin of a snapshot.
+ *
+ * \memberof lv_t
+ *
+ * The memory allocated for the name is tied to the vg_t handle and will be
+ * released when lvm_vg_close() is called.
+ *
+ * \param   lv
+ * Logical volume handle.
+ *
+ * \return
+ * Null if the logical volume is not a snapshot, else origin name.
+ */
+const char *lvm_lv_get_origin(const lv_t lv);
+
+/**
   * Get the current size in bytes of a logical volume.
   *
   * \memberof lv_t
diff --git a/liblvm/lvm_lv.c b/liblvm/lvm_lv.c
index 9d3ae79..f244a60 100644
--- a/liblvm/lvm_lv.c
+++ b/liblvm/lvm_lv.c
@@ -53,6 +53,11 @@ const char *lvm_lv_get_attr(const lv_t lv)
  	return lv_attr_dup(lv->vg->vgmem, lv);
  }

+const char *lvm_lv_get_origin(const lv_t lv)
+{
+	return lv_origin_dup(lv->vg->vgmem, lv);
+}
+

If you need just 'const' pointer - it would be probably better,
to directly return the name - instead of duplication.

i.e. lv_origin_dup() ->  rewrite to  'const char *lv_get_origin(.)' ->
and use it for  lv_name_dup() in lv_origin_dup() which returns char *.
as well as for  lvm_lv_get_origin().



  struct lvm_property_value lvm_lv_get_property(const lv_t lv, const char *name)
  {
  	return get_property(NULL, NULL, lv, NULL, NULL, name);



Zdenek


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]