X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=daemon%2Faugeas.c;h=0dbf0e728fb1ca6da5778d643f24d0ea2d35445d;hp=76b85d934833495129c6b7b8c2956e5c34ed87fc;hb=e02066bcb33a2aed5f23dd18c3168dc66efddb18;hpb=1c8f9c274adb342b263d083f0ac0c24e4b600974 diff --git a/daemon/augeas.c b/daemon/augeas.c index 76b85d9..0dbf0e7 100644 --- a/daemon/augeas.c +++ b/daemon/augeas.c @@ -22,16 +22,21 @@ #include #include #include + +#ifdef HAVE_AUGEAS #include +#endif #include "daemon.h" #include "actions.h" +#ifdef HAVE_AUGEAS /* The Augeas handle. We maintain a single handle per daemon, which * is all that is necessary and reduces the complexity of the API * considerably. */ static augeas *aug = NULL; +#endif #define NEED_AUG(errcode) \ do { \ @@ -46,6 +51,7 @@ static augeas *aug = NULL; int do_aug_init (const char *root, int flags) { +#ifdef HAVE_AUGEAS char *buf; int len; @@ -74,22 +80,32 @@ do_aug_init (const char *root, int flags) } return 0; +#else + reply_with_error ("%s is not available", __func__); + return -1; +#endif } int do_aug_close (void) { +#ifdef HAVE_AUGEAS NEED_AUG(-1); aug_close (aug); aug = NULL; return 0; +#else + reply_with_error ("%s is not available", __func__); + return -1; +#endif } int do_aug_defvar (const char *name, const char *expr) { +#ifdef HAVE_AUG_DEFVAR int r; NEED_AUG (-1); @@ -100,11 +116,16 @@ do_aug_defvar (const char *name, const char *expr) return -1; } return r; +#else + reply_with_error ("%s is not available", __func__); + 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,11 +138,16 @@ do_aug_defnode (const char *name, const char *expr, const char *val) } r.created = created; return &r; +#else + reply_with_error ("%s is not available", __func__); + return NULL; +#endif } char * do_aug_get (const char *path) { +#ifdef HAVE_AUGEAS const char *value = NULL; char *v; int r; @@ -155,11 +181,16 @@ do_aug_get (const char *path) } return v; /* Caller frees. */ +#else + reply_with_error ("%s is not available", __func__); + return NULL; +#endif } int do_aug_set (const char *path, const char *val) { +#ifdef HAVE_AUGEAS int r; NEED_AUG (-1); @@ -171,11 +202,16 @@ do_aug_set (const char *path, const char *val) } return 0; +#else + reply_with_error ("%s is not available", __func__); + return -1; +#endif } int do_aug_insert (const char *path, const char *label, int before) { +#ifdef HAVE_AUGEAS int r; NEED_AUG (-1); @@ -187,11 +223,16 @@ do_aug_insert (const char *path, const char *label, int before) } return 0; +#else + reply_with_error ("%s is not available", __func__); + return -1; +#endif } int do_aug_rm (const char *path) { +#ifdef HAVE_AUGEAS int r; NEED_AUG (-1); @@ -203,11 +244,16 @@ do_aug_rm (const char *path) } return r; +#else + reply_with_error ("%s is not available", __func__); + return -1; +#endif } int do_aug_mv (const char *src, const char *dest) { +#ifdef HAVE_AUGEAS int r; NEED_AUG (-1); @@ -219,11 +265,16 @@ do_aug_mv (const char *src, const char *dest) } return 0; +#else + reply_with_error ("%s is not available", __func__); + return -1; +#endif } char ** do_aug_match (const char *path) { +#ifdef HAVE_AUGEAS char **matches = NULL; void *vp; int r; @@ -249,11 +300,16 @@ do_aug_match (const char *path) matches[r] = NULL; return matches; /* Caller frees. */ +#else + reply_with_error ("%s is not available", __func__); + return NULL; +#endif } int do_aug_save (void) { +#ifdef HAVE_AUGEAS NEED_AUG (-1); if (aug_save (aug) == -1) { @@ -262,11 +318,16 @@ do_aug_save (void) } return 0; +#else + reply_with_error ("%s is not available", __func__); + return -1; +#endif } int do_aug_load (void) { +#ifdef HAVE_AUG_LOAD NEED_AUG (-1); if (aug_load (aug) == -1) { @@ -275,12 +336,17 @@ do_aug_load (void) } return 0; +#else + reply_with_error ("%s is not available", __func__); + return -1; +#endif } /* Simpler version of aug-match, which also sorts the output. */ char ** do_aug_ls (const char *path) { +#ifdef HAVE_AUGEAS char **matches; char *buf; int len; @@ -318,4 +384,8 @@ do_aug_ls (const char *path) sort_strings (matches, count_strings (matches)); return matches; /* Caller frees. */ +#else + reply_with_error ("%s is not available", __func__); + return NULL; +#endif }