X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=daemon%2Faugeas.c;h=3628219f053e09a3f86d87e2e5eb4c6746bb4a02;hp=9b45f976922d9263437c25948d6e2223cba67ebb;hb=ac2a53bbab44fe94306092b47aeddb899c55345a;hpb=887290e949d54c6ac4c9b787231e588f84f2367c diff --git a/daemon/augeas.c b/daemon/augeas.c index 9b45f97..3628219 100644 --- a/daemon/augeas.c +++ b/daemon/augeas.c @@ -1,5 +1,5 @@ /* libguestfs - the guestfsd daemon - * Copyright (C) 2009 Red Hat Inc. + * Copyright (C) 2009 Red Hat Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -49,27 +49,21 @@ static augeas *aug = NULL; /* We need to rewrite the root path so it is based at /sysroot. */ int -do_aug_init (char *root, int flags) +do_aug_init (const char *root, int flags) { #ifdef HAVE_AUGEAS char *buf; - int len; - - NEED_ROOT (-1); - ABS_PATH (root, -1); if (aug) { aug_close (aug); aug = NULL; } - len = strlen (root) + 9; - buf = malloc (len); + buf = sysroot_path (root); if (!buf) { reply_with_perror ("malloc"); return -1; } - snprintf (buf, len, "/sysroot%s", root); aug = aug_init (buf, NULL, flags); free (buf); @@ -103,7 +97,7 @@ do_aug_close (void) } int -do_aug_defvar (char *name, char *expr) +do_aug_defvar (const char *name, const char *expr) { #ifdef HAVE_AUG_DEFVAR int r; @@ -122,21 +116,21 @@ do_aug_defvar (char *name, char *expr) #endif } -guestfs_aug_defnode_ret * -do_aug_defnode (char *name, char *expr, char *val) +guestfs_int_int_bool * +do_aug_defnode (const char *name, const char *expr, const char *val) { #ifdef HAVE_AUG_DEFNODE - static guestfs_aug_defnode_ret r; + static guestfs_int_int_bool r; int created; NEED_AUG (NULL); - r.nrnodes = aug_defnode (aug, name, expr, val, &created); - if (r.nrnodes == -1) { + r.i = aug_defnode (aug, name, expr, val, &created); + if (r.i == -1) { reply_with_error ("Augeas defnode failed"); return NULL; } - r.created = created; + r.b = created; return &r; #else reply_with_error ("%s is not available", __func__); @@ -145,7 +139,7 @@ do_aug_defnode (char *name, char *expr, char *val) } char * -do_aug_get (char *path) +do_aug_get (const char *path) { #ifdef HAVE_AUGEAS const char *value = NULL; @@ -188,7 +182,7 @@ do_aug_get (char *path) } int -do_aug_set (char *path, char *val) +do_aug_set (const char *path, const char *val) { #ifdef HAVE_AUGEAS int r; @@ -209,7 +203,7 @@ do_aug_set (char *path, char *val) } int -do_aug_insert (char *path, char *label, int before) +do_aug_insert (const char *path, const char *label, int before) { #ifdef HAVE_AUGEAS int r; @@ -230,7 +224,7 @@ do_aug_insert (char *path, char *label, int before) } int -do_aug_rm (char *path) +do_aug_rm (const char *path) { #ifdef HAVE_AUGEAS int r; @@ -251,7 +245,7 @@ do_aug_rm (char *path) } int -do_aug_mv (char *src, char *dest) +do_aug_mv (const char *src, const char *dest) { #ifdef HAVE_AUGEAS int r; @@ -272,7 +266,7 @@ do_aug_mv (char *src, char *dest) } char ** -do_aug_match (char *path) +do_aug_match (const char *path) { #ifdef HAVE_AUGEAS char **matches = NULL; @@ -344,7 +338,7 @@ do_aug_load (void) /* Simpler version of aug-match, which also sorts the output. */ char ** -do_aug_ls (char *path) +do_aug_ls (const char *path) { #ifdef HAVE_AUGEAS char **matches; @@ -353,7 +347,7 @@ do_aug_ls (char *path) NEED_AUG (NULL); - ABS_PATH (path, NULL); + ABS_PATH (path, return NULL); len = strlen (path); @@ -382,7 +376,7 @@ do_aug_ls (char *path) if (matches == NULL) return NULL; /* do_aug_match has already sent the error */ - sort_strings (matches, count_strings (matches)); + sort_strings (matches, count_strings ((void *) matches)); return matches; /* Caller frees. */ #else reply_with_error ("%s is not available", __func__);