b2e815a
From df13becf4eaaa541ba56f0a30dd31a54d7b00e9c Mon Sep 17 00:00:00 2001
b2e815a
From: Vratislav Podzimek <vpodzime@redhat.com>
b2e815a
Date: Thu, 15 Sep 2016 14:56:10 +0200
b2e815a
Subject: [PATCH] Make sure all object paths are passed and extracted as such
b2e815a
b2e815a
The type signature for a DBus object path is "o". Now that the LVM DBus API
b2e815a
properly sets types of its accepted and returned values, we can finally safely
b2e815a
use the signature in all expected places.
b2e815a
b2e815a
(cherry picked from commit e8117786aad76773d96b9a8d977e53077535b9bc)
b2e815a
---
b2e815a
 src/plugins/lvm-dbus.c | 14 +++++++-------
b2e815a
 1 file changed, 7 insertions(+), 7 deletions(-)
b2e815a
b2e815a
diff --git a/src/plugins/lvm-dbus.c b/src/plugins/lvm-dbus.c
b2e815a
index 9500dcb..1276548 100644
b2e815a
--- a/src/plugins/lvm-dbus.c
b2e815a
+++ b/src/plugins/lvm-dbus.c
b2e815a
@@ -711,7 +711,7 @@ static BDLVMPVdata* get_pv_data_from_props (GVariant *props, GError **error) {
b2e815a
     g_variant_dict_lookup (&dict, "PeStart", "t", &(data->pe_start));
b2e815a
 
b2e815a
     /* returns an object path for the VG */
b2e815a
-    g_variant_dict_lookup (&dict, "Vg", "s", &value);
b2e815a
+    g_variant_dict_lookup (&dict, "Vg", "o", &value);
b2e815a
     if (g_strcmp0 (value, "/") == 0) {
b2e815a
         /* no VG, the PV is not part of any VG */
b2e815a
         g_variant_dict_clear (&dict);
b2e815a
@@ -1152,10 +1152,10 @@ gboolean bd_lvm_pvmove (gchar *src, gchar *dest, GError **error) {
b2e815a
         g_free (src_path);
b2e815a
         return FALSE;
b2e815a
     }
b2e815a
-    g_variant_get (prop, "s", &vg_obj_path);
b2e815a
+    g_variant_get (prop, "o", &vg_obj_path);
b2e815a
 
b2e815a
     g_variant_builder_init (&builder, G_VARIANT_TYPE_TUPLE);
b2e815a
-    g_variant_builder_add_value (&builder, g_variant_new ("s", src_path));
b2e815a
+    g_variant_builder_add_value (&builder, g_variant_new ("o", src_path));
b2e815a
     g_variant_builder_add_value (&builder, g_variant_new ("(tt)", (guint64) 0, (guint64) 0));
b2e815a
     if (dest) {
b2e815a
         dest_var = g_variant_new ("(ott)", dest_path, (guint64) 0, (guint64) 0);
b2e815a
@@ -2367,7 +2367,7 @@ gboolean bd_lvm_cache_attach (gchar *vg_name, gchar *data_lv, gchar *cache_pool_
b2e815a
     if (!lv_obj_path)
b2e815a
         return FALSE;
b2e815a
     g_variant_builder_init (&builder, G_VARIANT_TYPE_TUPLE);
b2e815a
-    g_variant_builder_add_value (&builder, g_variant_new ("s", lv_obj_path));
b2e815a
+    g_variant_builder_add_value (&builder, g_variant_new ("o", lv_obj_path));
b2e815a
     params = g_variant_builder_end (&builder);
b2e815a
     g_variant_builder_clear (&builder);
b2e815a
 
b2e815a
@@ -2476,7 +2476,7 @@ gchar* bd_lvm_cache_pool_name (gchar *vg_name, gchar *cached_lv, GError **error)
b2e815a
     g_free (lv_spec);
b2e815a
     if (!prop)
b2e815a
         return NULL;
b2e815a
-    g_variant_get (prop, "s", &pool_obj_path);
b2e815a
+    g_variant_get (prop, "o", &pool_obj_path);
b2e815a
     prop = get_object_property (pool_obj_path, LV_CMN_INTF, "Name", error);
b2e815a
     g_free (pool_obj_path);
b2e815a
     if (!prop)
b2e815a
@@ -2650,7 +2650,7 @@ gchar* bd_lvm_data_lv_name (gchar *vg_name, gchar *lv_name, GError **error) {
b2e815a
         g_clear_error (error);
b2e815a
         return NULL;
b2e815a
     }
b2e815a
-    g_variant_get (prop, "s", &obj_path);
b2e815a
+    g_variant_get (prop, "o", &obj_path);
b2e815a
     g_variant_unref (prop);
b2e815a
 
b2e815a
     if (g_strcmp0 (obj_path, "/") == 0) {
b2e815a
@@ -2699,7 +2699,7 @@ gchar* bd_lvm_metadata_lv_name (gchar *vg_name, gchar *lv_name, GError **error)
b2e815a
         g_clear_error (error);
b2e815a
         return NULL;
b2e815a
     }
b2e815a
-    g_variant_get (prop, "s", &obj_path);
b2e815a
+    g_variant_get (prop, "o", &obj_path);
b2e815a
     g_variant_unref (prop);
b2e815a
 
b2e815a
     if (g_strcmp0 (obj_path, "/") == 0) {
b2e815a
-- 
b2e815a
2.9.3
b2e815a