1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
From 2b2fcf80841972b70ad695a5a1ed74487d4fd37a Mon Sep 17 00:00:00 2001
From: David Zeuthen <davidz@redhat.com>
Date: Wed, 19 May 2010 17:01:31 +0000
Subject: Update to latest LVM2 API
See
http://lists.freedesktop.org/archives/devkit-devel/2010-April/000783.html
---
diff --git a/configure.ac b/configure.ac
index 469be5f..a9141bf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -170,7 +170,7 @@ AC_SUBST(DEVMAPPER_LIBS)
have_lvm2=no
AC_ARG_ENABLE(lvm2, AS_HELP_STRING([--disable-lvm2], [disable LVM2 support]))
if test "x$enable_lvm2" != "xno"; then
- PKG_CHECK_MODULES(LVM2, lvm2app >= 2.1,
+ PKG_CHECK_MODULES(LVM2, lvm2app >= 2.2,
[AC_DEFINE(HAVE_LVM2, 1, [Define if LVM2 is available]) have_lvm2=yes],
have_lvm2=no)
AC_SUBST(LVM2_CFLAGS)
diff --git a/src/probers/udisks-lvm-pv-export.c b/src/probers/udisks-lvm-pv-export.c
index 5675fb8..ee6d8ed 100644
--- a/src/probers/udisks-lvm-pv-export.c
+++ b/src/probers/udisks-lvm-pv-export.c
@@ -47,7 +47,7 @@ find_vg_for_pv_uuid (lvm_t lvm_ctx,
struct lvm_pv_list *pv_list;
dm_list_iterate_items (pv_list, pvs)
{
- char *uuid;
+ const char *uuid;
pv_t pv = pv_list->pv;
uuid = lvm_pv_get_uuid (pv);
@@ -58,10 +58,8 @@ find_vg_for_pv_uuid (lvm_t lvm_ctx,
if (out_pv != NULL)
*out_pv = pv;
ret = vg;
- dm_free (uuid);
goto out;
}
- dm_free (uuid);
}
}
}
@@ -79,12 +77,12 @@ find_vg_for_pv_uuid (lvm_t lvm_ctx,
static void
print_vg (vg_t vg)
{
- char *s;
+ const char *s;
struct dm_list *pvs;
struct dm_list *lvs;
- s = lvm_vg_get_uuid (vg); g_print ("UDISKS_LVM2_PV_VG_UUID=%s\n", s); dm_free (s);
- s = lvm_vg_get_name (vg); g_print ("UDISKS_LVM2_PV_VG_NAME=%s\n", s); dm_free (s);
+ s = lvm_vg_get_uuid (vg); g_print ("UDISKS_LVM2_PV_VG_UUID=%s\n", s);
+ s = lvm_vg_get_name (vg); g_print ("UDISKS_LVM2_PV_VG_NAME=%s\n", s);
g_print ("UDISKS_LVM2_PV_VG_SIZE=%" G_GUINT64_FORMAT "\n", lvm_vg_get_size (vg));
g_print ("UDISKS_LVM2_PV_VG_FREE_SIZE=%" G_GUINT64_FORMAT "\n", lvm_vg_get_free_size (vg));
g_print ("UDISKS_LVM2_PV_VG_EXTENT_SIZE=%" G_GUINT64_FORMAT "\n", lvm_vg_get_extent_size (vg));
@@ -117,17 +115,14 @@ print_vg (vg_t vg)
str = g_string_new (NULL);
dm_list_iterate_items (pv_list, pvs)
{
- char *uuid;
+ const char *uuid;
guint64 size;
guint64 free_size;
pv_t pv = pv_list->pv;
uuid = lvm_pv_get_uuid (pv);
if (uuid != NULL)
- {
- g_string_append_printf (str, "uuid=%s", uuid);
- dm_free (uuid);
- }
+ g_string_append_printf (str, "uuid=%s", uuid);
size = lvm_pv_get_size (pv);
g_string_append_printf (str, ";size=%" G_GUINT64_FORMAT, size);
free_size = lvm_pv_get_free (pv);
@@ -173,8 +168,8 @@ print_vg (vg_t vg)
str = g_string_new (NULL);
dm_list_iterate_items (lv_list, lvs)
{
- char *uuid;
- char *name;
+ const char *uuid;
+ const char *name;
gboolean is_active;
guint64 size;
lv_t lv = lv_list->lv;
@@ -195,11 +190,6 @@ print_vg (vg_t vg)
g_string_append_printf (str, "active=%d", is_active);
g_string_append_c (str, ' ');
}
-
- if (uuid != NULL)
- dm_free (uuid);
- if (name != NULL)
- dm_free (name);
}
g_print ("UDISKS_LVM2_PV_VG_LV_LIST=%s\n", str->str);
g_string_free (str, TRUE);
@@ -212,9 +202,9 @@ print_vg (vg_t vg)
static void
print_pv (pv_t pv)
{
- char *s;
+ const char *s;
- s = lvm_pv_get_uuid (pv); g_print ("UDISKS_LVM2_PV_UUID=%s\n", s); dm_free (s);
+ s = lvm_pv_get_uuid (pv); g_print ("UDISKS_LVM2_PV_UUID=%s\n", s);
g_print ("UDISKS_LVM2_PV_NUM_MDA=%" G_GUINT64_FORMAT "\n", lvm_pv_get_mda_count (pv));
/* TODO: ask for more API in liblvm - pvdisplay(8) suggests more information
--
cgit v0.8.3-6-g21f6
|