summaryrefslogtreecommitdiffstats
path: root/daemon/augeas.c
diff options
context:
space:
mode:
authorRichard Jones <rjones@redhat.com>2009-04-13 00:51:56 +0100
committerRichard Jones <rjones@redhat.com>2009-04-13 00:51:56 +0100
commit848fd706616ca65be7f74b48b39c95363640a187 (patch)
tree053730cd1e12cc1f347ffb62b59db2e2790f5ab5 /daemon/augeas.c
parentd68cce2e307fe13616a66c52f88ddf87bfae9c6a (diff)
downloadlibguestfs-848fd706616ca65be7f74b48b39c95363640a187.tar.gz
libguestfs-848fd706616ca65be7f74b48b39c95363640a187.tar.xz
libguestfs-848fd706616ca65be7f74b48b39c95363640a187.zip
Old versions of augeas lack aug_load, aug_defvar, aug_node. Check for those calls.
Diffstat (limited to 'daemon/augeas.c')
-rw-r--r--daemon/augeas.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/daemon/augeas.c b/daemon/augeas.c
index 76b85d93..3595f8dd 100644
--- a/daemon/augeas.c
+++ b/daemon/augeas.c
@@ -90,6 +90,7 @@ do_aug_close (void)
int
do_aug_defvar (const char *name, const char *expr)
{
+#ifdef HAVE_AUG_DEFVAR
int r;
NEED_AUG (-1);
@@ -100,11 +101,16 @@ do_aug_defvar (const char *name, const char *expr)
return -1;
}
return r;
+#else
+ reply_with_error ("aug_defvar is not available");
+ return -1;
+#endif
}
guestfs_aug_defnode_ret *
do_aug_defnode (const char *name, const char *expr, const char *val)
{
+#ifdef HAVE_AUG_DEFNODE
static guestfs_aug_defnode_ret r;
int created;
@@ -117,6 +123,10 @@ do_aug_defnode (const char *name, const char *expr, const char *val)
}
r.created = created;
return &r;
+#else
+ reply_with_error ("aug_defvar is not available");
+ return NULL;
+#endif
}
char *
@@ -267,6 +277,7 @@ do_aug_save (void)
int
do_aug_load (void)
{
+#ifdef HAVE_AUG_LOAD
NEED_AUG (-1);
if (aug_load (aug) == -1) {
@@ -275,6 +286,10 @@ do_aug_load (void)
}
return 0;
+#else
+ reply_with_error ("aug_load is not available");
+ return -1;
+#endif
}
/* Simpler version of aug-match, which also sorts the output. */