From 848fd706616ca65be7f74b48b39c95363640a187 Mon Sep 17 00:00:00 2001 From: Richard Jones Date: Mon, 13 Apr 2009 00:51:56 +0100 Subject: [PATCH] Old versions of augeas lack aug_load, aug_defvar, aug_node. Check for those calls. --- configure.ac | 2 +- daemon/augeas.c | 15 +++++++++++++++ daemon/configure.ac | 5 ++++- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index 4c9a593..3f8807f 100644 --- a/configure.ac +++ b/configure.ac @@ -15,7 +15,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -AC_INIT([libguestfs],[0.8.1]) +AC_INIT([libguestfs],[0.8.2]) AM_INIT_AUTOMAKE AC_CONFIG_MACRO_DIR([m4]) diff --git a/daemon/augeas.c b/daemon/augeas.c index 76b85d9..3595f8d 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. */ diff --git a/daemon/configure.ac b/daemon/configure.ac index 7ce03ab..8edcb2d 100644 --- a/daemon/configure.ac +++ b/daemon/configure.ac @@ -15,7 +15,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -AC_INIT([libguestfs-daemon],[0.7]) +AC_INIT([libguestfs-daemon],[0.8.2]) AM_INIT_AUTOMAKE AC_CONFIG_MACRO_DIR([m4]) @@ -42,6 +42,9 @@ AC_CHECK_LIB([augeas],[aug_match],,[ AC_MSG_ERROR([Augeas library not found]) ]) +dnl Check for functions not available in earlier versions of Augeas. +AC_CHECK_FUNC([aug_load aug_defvar aug_defnode]) + dnl Check for XDR library. AC_CHECK_LIB([portablexdr],[xdrmem_create],[],[ AC_SEARCH_LIBS([xdrmem_create],[rpc xdr nsl]) -- 1.8.3.1