Backport of the guestfs_aug_clear API from upstream development branch
(commit 66477d07e37ffe66c).
diff -ur libguestfs-1.2.2.orig/daemon/augeas.c libguestfs-1.2.2/daemon/augeas.c
--- libguestfs-1.2.2.orig/daemon/augeas.c 2010-04-12 19:03:41.000000000 +0100
+++ libguestfs-1.2.2/daemon/augeas.c 2010-04-14 10:03:10.307680521 +0100
@@ -210,6 +210,26 @@
}
int
+do_aug_clear (const char *path)
+{
+#ifdef HAVE_AUGEAS
+ int r;
+
+ NEED_AUG (-1);
+
+ r = aug_set (aug, path, NULL);
+ if (r == -1) {
+ reply_with_error ("Augeas clear failed");
+ return -1;
+ }
+
+ return 0;
+#else
+ NOT_AVAILABLE (-1);
+#endif
+}
+
+int
do_aug_insert (const char *path, const char *label, int before)
{
#ifdef HAVE_AUGEAS
diff -ur libguestfs-1.2.2.orig/src/generator.ml libguestfs-1.2.2/src/generator.ml
--- libguestfs-1.2.2.orig/src/generator.ml 2010-04-12 19:05:28.000000000 +0100
+++ libguestfs-1.2.2/src/generator.ml 2010-04-14 10:03:10.312679892 +0100
@@ -1238,7 +1238,12 @@
[], (* XXX Augeas code needs tests. *)
"set Augeas path to value",
"\
-Set the value associated with C<path> to C<value>.");
+Set the value associated with C<path> to C<val>.
+
+In the Augeas API, it is possible to clear a node by setting
+the value to NULL. Due to an oversight in the libguestfs API
+you cannot do that with this call. Instead you must use the
+C<guestfs_aug_clear> call.");
("aug_insert", (RErr, [String "augpath"; String "label"; Bool "before"]), 21, [Optional "augeas"],
[], (* XXX Augeas code needs tests. *)
@@ -4400,6 +4405,13 @@
You will get undefined results for other partition table
types (see C<guestfs_part_get_parttype>).");
+ ("aug_clear", (RErr, [String "augpath"]), 239, [Optional "augeas"],
+ [], (* XXX Augeas code needs tests. *)
+ "clear Augeas path",
+ "\
+Set the value associated with C<path> to C<NULL>. This
+is the same as the L<augtool(1)> C<clear> command.");
+
]
let all_functions = non_daemon_functions @ daemon_functions
diff -ur libguestfs-1.2.2.orig/src/MAX_PROC_NR libguestfs-1.2.2/src/MAX_PROC_NR
--- libguestfs-1.2.2.orig/src/MAX_PROC_NR 2010-04-12 19:06:21.000000000 +0100
+++ libguestfs-1.2.2/src/MAX_PROC_NR 2010-04-14 10:03:43.885055262 +0100
@@ -1 +1 @@
-236
+239