Remove generated code from git.
authorRichard W.M. Jones <rjones@redhat.com>
Thu, 2 Jul 2009 10:38:36 +0000 (11:38 +0100)
committerRichard W.M. Jones <rjones@redhat.com>
Thu, 2 Jul 2009 10:51:16 +0000 (11:51 +0100)
Git users now require the OCaml compiler in order to regenerate
the generated code after a checkout.

Generated code will remain in the tarball, so users of the
source tarball will not need the OCaml compiler.

38 files changed:
.gitignore
capitests/tests.c [deleted file]
daemon/actions.h [deleted file]
daemon/stubs.c [deleted file]
fish/cmds.c [deleted file]
fish/completion.c [deleted file]
guestfish-actions.pod [deleted file]
guestfs-actions.pod [deleted file]
guestfs-structs.pod [deleted file]
haskell/Bindtests.hs [deleted file]
haskell/Guestfs.hs [deleted file]
java/Bindtests.java [deleted file]
java/com/redhat/et/libguestfs/Dirent.java [deleted file]
java/com/redhat/et/libguestfs/GuestFS.java [deleted file]
java/com/redhat/et/libguestfs/LV.java [deleted file]
java/com/redhat/et/libguestfs/PV.java [deleted file]
java/com/redhat/et/libguestfs/Stat.java [deleted file]
java/com/redhat/et/libguestfs/StatVFS.java [deleted file]
java/com/redhat/et/libguestfs/VG.java [deleted file]
java/com_redhat_et_libguestfs_GuestFS.c [deleted file]
ocaml/bindtests.ml [deleted file]
ocaml/guestfs.ml [deleted file]
ocaml/guestfs.mli [deleted file]
ocaml/guestfs_c_actions.c [deleted file]
perl/Guestfs.xs [deleted file]
perl/bindtests.pl [deleted file]
perl/lib/Sys/Guestfs.pm [deleted file]
python/bindtests.py [deleted file]
python/guestfs-py.c [deleted file]
python/guestfs.py [deleted file]
ruby/bindtests.rb [deleted file]
ruby/ext/guestfs/_guestfs.c [deleted file]
src/MAX_PROC_NR [deleted file]
src/guestfs-actions.c [deleted file]
src/guestfs-actions.h [deleted file]
src/guestfs-bindtests.c [deleted file]
src/guestfs-structs.h [deleted file]
src/guestfs_protocol.x [deleted file]

index fbb723f..4655de5 100644 (file)
@@ -35,6 +35,7 @@ autom4te.cache
 capitests/test-command
 capitests/test*.img
 capitests/test*.tmp
+capitests/tests.c
 capitests/tests
 compile
 config.h
@@ -44,17 +45,26 @@ config.sub
 config.log
 config.status
 configure
+daemon/actions.h
 daemon/guestfsd
 daemon/install-sh
 daemon/missing
+daemon/stubs.c
 depcomp
 emptydisk
 examples/hello
 examples/to-xml
+fish/cmds.c
+fish/completion.c
 fish/guestfish
 guestfish.1
+guestfish-actions.pod
+guestfs-actions.pod
+guestfs-structs.pod
 guestfs.3
+haskell/Bindtests.hs
 haskell/Bindtests
+haskell/Guestfs.hs
 haskell/Guestfs005Load
 haskell/Guestfs010Launch
 haskell/Guestfs050LVCreate
@@ -74,7 +84,16 @@ initramfs.timestamp
 inspector/virt-inspector.1
 install-sh
 java/api
+java/Bindtests.java
 java/com_redhat_et_libguestfs_GuestFS.h
+java/com_redhat_et_libguestfs_GuestFS.c
+java/com/redhat/et/libguestfs/Dirent.java
+java/com/redhat/et/libguestfs/GuestFS.java
+java/com/redhat/et/libguestfs/LV.java
+java/com/redhat/et/libguestfs/PV.java
+java/com/redhat/et/libguestfs/Stat.java
+java/com/redhat/et/libguestfs/StatVFS.java
+java/com/redhat/et/libguestfs/VG.java
 java/doc-stamp
 missing
 libguestfs.pc
@@ -88,17 +107,24 @@ m4/ltsugar.m4
 m4/ltversion.m4
 m4/lt~obsolete.m4
 ocaml/META
+ocaml/bindtests.ml
 ocaml/bindtests
 ocaml/examples/lvs
+ocaml/guestfs.mli
+ocaml/guestfs.ml
+ocaml/guestfs_c_actions.c
 ocaml/t/guestfs_005_load
 ocaml/t/guestfs_010_launch
 ocaml/t/guestfs_050_lvcreate
 ocaml/t/guestfs_060_readdir
+perl/bindtests.pl
+perl/blib
 perl/Guestfs.c
 perl/Guestfs.bs
+perl/Guestfs.xs
+perl/lib/Sys/Guestfs.pm
 perl/Makefile-pl
 perl/Makefile.PL
-perl/blib
 perl/pm_to_blib
 po/*.gmo
 po/Makevars.template
@@ -107,9 +133,20 @@ po/remove-potcdate.sed
 po/stamp-it
 po/stamp-po
 pod2htm?.tmp
+python/bindtests.py
+python/guestfs-py.c
+python/guestfs.py
 python/guestfs.pyc
 ruby/Rakefile
+ruby/bindtests.rb
+ruby/ext/guestfs/_guestfs.c
 ruby/ext/guestfs/extconf.h
 ruby/ext/guestfs/mkmf.log
+src/MAX_PROC_NR
+src/guestfs-actions.c
+src/guestfs-actions.h
+src/guestfs-bindtests.c
+src/guestfs_protocol.x
+src/guestfs-structs.h
 src/stamp-generator
 stamp-h1
diff --git a/capitests/tests.c b/capitests/tests.c
deleted file mode 100644 (file)
index 9124ea9..0000000
+++ /dev/null
@@ -1,20465 +0,0 @@
-/* libguestfs generated file
- * WARNING: THIS FILE IS GENERATED BY 'src/generator.ml'.
- * ANY CHANGES YOU MAKE TO THIS FILE WILL BE LOST.
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <fcntl.h>
-
-#include "guestfs.h"
-
-static guestfs_h *g;
-static int suppress_error = 0;
-
-static void print_error (guestfs_h *g, void *data, const char *msg)
-{
-  if (!suppress_error)
-    fprintf (stderr, "%s\n", msg);
-}
-
-static void print_strings (char * const * const argv)
-{
-  int argc;
-
-  for (argc = 0; argv[argc] != NULL; ++argc)
-    printf ("\t%s\n", argv[argc]);
-}
-
-/*
-static void print_table (char * const * const argv)
-{
-  int i;
-
-  for (i = 0; argv[i] != NULL; i += 2)
-    printf ("%s: %s\n", argv[i], argv[i+1]);
-}
-*/
-
-static void no_test_warnings (void)
-{
-  fprintf (stderr, "warning: \"guestfs_test0\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rint\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rinterr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rint64\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rint64err\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rbool\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rboolerr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rconststring\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rconststringerr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rstring\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rstringerr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rstringlist\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rstringlisterr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rintbool\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rintboolerr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rpvlist\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rpvlisterr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rvglist\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rvglisterr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rlvlist\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rlvlisterr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rstat\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rstaterr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rstatvfs\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rstatvfserr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rhashtable\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_test0rhashtableerr\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_launch\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_wait_ready\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_kill_subprocess\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_add_drive\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_add_cdrom\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_add_drive_ro\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_config\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_set_qemu\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_get_qemu\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_set_path\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_get_path\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_set_append\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_get_append\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_set_autosync\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_get_autosync\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_set_verbose\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_get_verbose\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_is_ready\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_is_config\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_is_launching\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_is_busy\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_get_state\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_set_busy\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_set_ready\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_end_busy\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_set_memsize\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_get_memsize\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_ll\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_pvs_full\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_vgs_full\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_lvs_full\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_init\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_close\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_defvar\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_defnode\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_get\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_set\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_insert\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_rm\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_mv\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_match\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_save\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_load\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_aug_ls\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_chmod\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_chown\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_sfdisk\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_lvm_remove_all\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_tune2fs_l\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_blockdev_setbsz\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_tar_out\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_tgz_out\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_mount_options\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_mount_vfs\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_debug\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_get_e2label\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_get_e2uuid\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_pvresize\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_sfdisk_N\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_sfdisk_l\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_sfdisk_kernel_geometry\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_sfdisk_disk_geometry\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_vg_activate_all\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_vg_activate\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_resize2fs\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_e2fsck_f\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_sh\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_sh_lines\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_scrub_freespace\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_df\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_df_h\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_mount_loop\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_umask\" has no tests\n");
-  fprintf (stderr, "warning: \"guestfs_readdir\" has no tests\n");
-}
-
-static int test_mknod_c_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mknod_c") == NULL;
-  str = getenv ("SKIP_TEST_MKNOD_C_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MKNOD_C");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mknod_c_0 (void)
-{
-  if (test_mknod_c_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mknod_c_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_mknod_c_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputStruct for mknod_c (0) */
-  {
-    char path[] = "/node";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mknod_c (g, 511, 99, 66, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/node";
-    struct guestfs_stat *r;
-    suppress_error = 0;
-    r = guestfs_stat (g, path);
-    if (r == NULL)
-      return -1;
-    if (r->mode != 8685) {
-      fprintf (stderr, "test_mknod_c_0: mode was %d, expected 8685\n",
-               (int) r->mode);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_mknod_b_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mknod_b") == NULL;
-  str = getenv ("SKIP_TEST_MKNOD_B_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MKNOD_B");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mknod_b_0 (void)
-{
-  if (test_mknod_b_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mknod_b_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_mknod_b_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputStruct for mknod_b (0) */
-  {
-    char path[] = "/node";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mknod_b (g, 511, 99, 66, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/node";
-    struct guestfs_stat *r;
-    suppress_error = 0;
-    r = guestfs_stat (g, path);
-    if (r == NULL)
-      return -1;
-    if (r->mode != 25069) {
-      fprintf (stderr, "test_mknod_b_0: mode was %d, expected 25069\n",
-               (int) r->mode);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_mkfifo_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mkfifo") == NULL;
-  str = getenv ("SKIP_TEST_MKFIFO_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MKFIFO");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mkfifo_0 (void)
-{
-  if (test_mkfifo_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mkfifo_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_mkfifo_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputStruct for mkfifo (0) */
-  {
-    char path[] = "/node";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfifo (g, 511, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/node";
-    struct guestfs_stat *r;
-    suppress_error = 0;
-    r = guestfs_stat (g, path);
-    if (r == NULL)
-      return -1;
-    if (r->mode != 4589) {
-      fprintf (stderr, "test_mkfifo_0: mode was %d, expected 4589\n",
-               (int) r->mode);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_mknod_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mknod") == NULL;
-  str = getenv ("SKIP_TEST_MKNOD_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MKNOD");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mknod_0 (void)
-{
-  if (test_mknod_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mknod_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_mknod_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputStruct for mknod (0) */
-  {
-    char path[] = "/node";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mknod (g, 4607, 0, 0, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/node";
-    struct guestfs_stat *r;
-    suppress_error = 0;
-    r = guestfs_stat (g, path);
-    if (r == NULL)
-      return -1;
-    if (r->mode != 4589) {
-      fprintf (stderr, "test_mknod_0: mode was %d, expected 4589\n",
-               (int) r->mode);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_mknod_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mknod") == NULL;
-  str = getenv ("SKIP_TEST_MKNOD_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MKNOD");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mknod_1 (void)
-{
-  if (test_mknod_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mknod_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_mknod_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputStruct for mknod (1) */
-  {
-    char path[] = "/node";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mknod (g, 25087, 66, 99, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/node";
-    struct guestfs_stat *r;
-    suppress_error = 0;
-    r = guestfs_stat (g, path);
-    if (r == NULL)
-      return -1;
-    if (r->mode != 25069) {
-      fprintf (stderr, "test_mknod_1: mode was %d, expected 25069\n",
-               (int) r->mode);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_mkswap_U_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mkswap_U") == NULL;
-  str = getenv ("SKIP_TEST_MKSWAP_U_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MKSWAP_U");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mkswap_U_0 (void)
-{
-  if (test_mkswap_U_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mkswap_U_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_mkswap_U_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for mkswap_U (0) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char uuid[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkswap_U (g, uuid, device);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_mkswap_L_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mkswap_L") == NULL;
-  str = getenv ("SKIP_TEST_MKSWAP_L_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MKSWAP_L");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mkswap_L_0 (void)
-{
-  if (test_mkswap_L_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mkswap_L_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_mkswap_L_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for mkswap_L (0) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char label[] = "hello";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkswap_L (g, label, device);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_mkswap_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mkswap") == NULL;
-  str = getenv ("SKIP_TEST_MKSWAP_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MKSWAP");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mkswap_0 (void)
-{
-  if (test_mkswap_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mkswap_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_mkswap_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for mkswap (0) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkswap (g, device);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_initrd_list_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "initrd_list") == NULL;
-  str = getenv ("SKIP_TEST_INITRD_LIST_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_INITRD_LIST");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_initrd_list_0 (void)
-{
-  if (test_initrd_list_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_initrd_list_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_initrd_list_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for initrd_list (0) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/initrd";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_initrd_list (g, path);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "empty";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "known-1";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (!r[2]) {
-      fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "known-2";
-      if (strcmp (r[2], expected) != 0) {
-        fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
-        return -1;
-      }
-    }
-    if (!r[3]) {
-      fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "known-3";
-      if (strcmp (r[3], expected) != 0) {
-        fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[3]);
-        return -1;
-      }
-    }
-    if (r[4] != NULL) {
-      fprintf (stderr, "test_initrd_list_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_du_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "du") == NULL;
-  str = getenv ("SKIP_TEST_DU_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_DU");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_du_0 (void)
-{
-  if (test_du_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_du_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_du_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for du (0) */
-  {
-    char path[] = "/p";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkdir (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/p";
-    int64_t r;
-    suppress_error = 0;
-    r = guestfs_du (g, path);
-    if (r == -1)
-      return -1;
-    if (r != 1) {
-      fprintf (stderr, "test_du_0: expected 1 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_tail_n_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "tail_n") == NULL;
-  str = getenv ("SKIP_TEST_TAIL_N_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_TAIL_N");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_tail_n_0 (void)
-{
-  if (test_tail_n_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_tail_n_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_tail_n_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for tail_n (0) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/10klines";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_tail_n (g, 3, path);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_tail_n_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9997abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_tail_n_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_tail_n_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9998abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_tail_n_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (!r[2]) {
-      fprintf (stderr, "test_tail_n_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9999abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[2], expected) != 0) {
-        fprintf (stderr, "test_tail_n_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
-        return -1;
-      }
-    }
-    if (r[3] != NULL) {
-      fprintf (stderr, "test_tail_n_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_tail_n_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "tail_n") == NULL;
-  str = getenv ("SKIP_TEST_TAIL_N_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_TAIL_N");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_tail_n_1 (void)
-{
-  if (test_tail_n_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_tail_n_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_tail_n_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for tail_n (1) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/10klines";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_tail_n (g, -9998, path);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_tail_n_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9997abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_tail_n_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_tail_n_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9998abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_tail_n_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (!r[2]) {
-      fprintf (stderr, "test_tail_n_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9999abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[2], expected) != 0) {
-        fprintf (stderr, "test_tail_n_1: expected \"%s\" but got \"%s\"\n", expected, r[2]);
-        return -1;
-      }
-    }
-    if (r[3] != NULL) {
-      fprintf (stderr, "test_tail_n_1: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_tail_n_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "tail_n") == NULL;
-  str = getenv ("SKIP_TEST_TAIL_N_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_TAIL_N");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_tail_n_2 (void)
-{
-  if (test_tail_n_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_tail_n_2");
-    return 0;
-  }
-
-  /* InitBasicFS for test_tail_n_2: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for tail_n (2) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/10klines";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_tail_n (g, 0, path);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_tail_n_2: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_tail_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "tail") == NULL;
-  str = getenv ("SKIP_TEST_TAIL_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_TAIL");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_tail_0 (void)
-{
-  if (test_tail_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_tail_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_tail_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for tail (0) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/10klines";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_tail (g, path);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_tail_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9990abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_tail_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9991abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (!r[2]) {
-      fprintf (stderr, "test_tail_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9992abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[2], expected) != 0) {
-        fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
-        return -1;
-      }
-    }
-    if (!r[3]) {
-      fprintf (stderr, "test_tail_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9993abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[3], expected) != 0) {
-        fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[3]);
-        return -1;
-      }
-    }
-    if (!r[4]) {
-      fprintf (stderr, "test_tail_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9994abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[4], expected) != 0) {
-        fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[4]);
-        return -1;
-      }
-    }
-    if (!r[5]) {
-      fprintf (stderr, "test_tail_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9995abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[5], expected) != 0) {
-        fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[5]);
-        return -1;
-      }
-    }
-    if (!r[6]) {
-      fprintf (stderr, "test_tail_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9996abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[6], expected) != 0) {
-        fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[6]);
-        return -1;
-      }
-    }
-    if (!r[7]) {
-      fprintf (stderr, "test_tail_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9997abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[7], expected) != 0) {
-        fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[7]);
-        return -1;
-      }
-    }
-    if (!r[8]) {
-      fprintf (stderr, "test_tail_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9998abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[8], expected) != 0) {
-        fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[8]);
-        return -1;
-      }
-    }
-    if (!r[9]) {
-      fprintf (stderr, "test_tail_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9999abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[9], expected) != 0) {
-        fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[9]);
-        return -1;
-      }
-    }
-    if (r[10] != NULL) {
-      fprintf (stderr, "test_tail_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_head_n_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "head_n") == NULL;
-  str = getenv ("SKIP_TEST_HEAD_N_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_HEAD_N");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_head_n_0 (void)
-{
-  if (test_head_n_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_head_n_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_head_n_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for head_n (0) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/10klines";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_head_n (g, 3, path);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_head_n_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "0abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_head_n_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_head_n_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "1abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_head_n_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (!r[2]) {
-      fprintf (stderr, "test_head_n_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "2abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[2], expected) != 0) {
-        fprintf (stderr, "test_head_n_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
-        return -1;
-      }
-    }
-    if (r[3] != NULL) {
-      fprintf (stderr, "test_head_n_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_head_n_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "head_n") == NULL;
-  str = getenv ("SKIP_TEST_HEAD_N_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_HEAD_N");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_head_n_1 (void)
-{
-  if (test_head_n_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_head_n_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_head_n_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for head_n (1) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/10klines";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_head_n (g, -9997, path);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_head_n_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "0abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_head_n_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_head_n_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "1abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_head_n_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (!r[2]) {
-      fprintf (stderr, "test_head_n_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "2abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[2], expected) != 0) {
-        fprintf (stderr, "test_head_n_1: expected \"%s\" but got \"%s\"\n", expected, r[2]);
-        return -1;
-      }
-    }
-    if (r[3] != NULL) {
-      fprintf (stderr, "test_head_n_1: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_head_n_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "head_n") == NULL;
-  str = getenv ("SKIP_TEST_HEAD_N_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_HEAD_N");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_head_n_2 (void)
-{
-  if (test_head_n_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_head_n_2");
-    return 0;
-  }
-
-  /* InitBasicFS for test_head_n_2: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for head_n (2) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/10klines";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_head_n (g, 0, path);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_head_n_2: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_head_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "head") == NULL;
-  str = getenv ("SKIP_TEST_HEAD_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_HEAD");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_head_0 (void)
-{
-  if (test_head_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_head_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_head_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for head (0) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/10klines";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_head (g, path);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_head_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "0abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_head_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "1abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (!r[2]) {
-      fprintf (stderr, "test_head_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "2abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[2], expected) != 0) {
-        fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
-        return -1;
-      }
-    }
-    if (!r[3]) {
-      fprintf (stderr, "test_head_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "3abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[3], expected) != 0) {
-        fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[3]);
-        return -1;
-      }
-    }
-    if (!r[4]) {
-      fprintf (stderr, "test_head_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "4abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[4], expected) != 0) {
-        fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[4]);
-        return -1;
-      }
-    }
-    if (!r[5]) {
-      fprintf (stderr, "test_head_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "5abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[5], expected) != 0) {
-        fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[5]);
-        return -1;
-      }
-    }
-    if (!r[6]) {
-      fprintf (stderr, "test_head_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "6abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[6], expected) != 0) {
-        fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[6]);
-        return -1;
-      }
-    }
-    if (!r[7]) {
-      fprintf (stderr, "test_head_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "7abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[7], expected) != 0) {
-        fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[7]);
-        return -1;
-      }
-    }
-    if (!r[8]) {
-      fprintf (stderr, "test_head_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "8abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[8], expected) != 0) {
-        fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[8]);
-        return -1;
-      }
-    }
-    if (!r[9]) {
-      fprintf (stderr, "test_head_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "9abcdefghijklmnopqrstuvwxyz";
-      if (strcmp (r[9], expected) != 0) {
-        fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[9]);
-        return -1;
-      }
-    }
-    if (r[10] != NULL) {
-      fprintf (stderr, "test_head_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_wc_c_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "wc_c") == NULL;
-  str = getenv ("SKIP_TEST_WC_C_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_WC_C");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_wc_c_0 (void)
-{
-  if (test_wc_c_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_wc_c_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_wc_c_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for wc_c (0) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/100kallspaces";
-    int r;
-    suppress_error = 0;
-    r = guestfs_wc_c (g, path);
-    if (r == -1)
-      return -1;
-    if (r != 102400) {
-      fprintf (stderr, "test_wc_c_0: expected 102400 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_wc_w_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "wc_w") == NULL;
-  str = getenv ("SKIP_TEST_WC_W_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_WC_W");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_wc_w_0 (void)
-{
-  if (test_wc_w_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_wc_w_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_wc_w_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for wc_w (0) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/10klines";
-    int r;
-    suppress_error = 0;
-    r = guestfs_wc_w (g, path);
-    if (r == -1)
-      return -1;
-    if (r != 10000) {
-      fprintf (stderr, "test_wc_w_0: expected 10000 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_wc_l_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "wc_l") == NULL;
-  str = getenv ("SKIP_TEST_WC_L_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_WC_L");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_wc_l_0 (void)
-{
-  if (test_wc_l_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_wc_l_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_wc_l_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for wc_l (0) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/10klines";
-    int r;
-    suppress_error = 0;
-    r = guestfs_wc_l (g, path);
-    if (r == -1)
-      return -1;
-    if (r != 10000) {
-      fprintf (stderr, "test_wc_l_0: expected 10000 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_mkdtemp_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mkdtemp") == NULL;
-  str = getenv ("SKIP_TEST_MKDTEMP_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MKDTEMP");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mkdtemp_0 (void)
-{
-  if (test_mkdtemp_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mkdtemp_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_mkdtemp_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for mkdtemp (0) */
-  {
-    char path[] = "/tmp";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkdir (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char template[] = "/tmp/tmpXXXXXX";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_mkdtemp (g, template);
-    if (r == NULL)
-      return -1;
-    free (r);
-  }
-  return 0;
-}
-
-static int test_scrub_file_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "scrub_file") == NULL;
-  str = getenv ("SKIP_TEST_SCRUB_FILE_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_SCRUB_FILE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_scrub_file_0 (void)
-{
-  if (test_scrub_file_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_scrub_file_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_scrub_file_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for scrub_file (0) */
-  {
-    char path[] = "/file";
-    char content[] = "content";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char file[] = "/file";
-    int r;
-    suppress_error = 0;
-    r = guestfs_scrub_file (g, file);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_scrub_device_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "scrub_device") == NULL;
-  str = getenv ("SKIP_TEST_SCRUB_DEVICE_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_SCRUB_DEVICE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_scrub_device_0 (void)
-{
-  if (test_scrub_device_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_scrub_device_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_scrub_device_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for scrub_device (0) */
-  {
-    char device[] = "/dev/sdc";
-    int r;
-    suppress_error = 0;
-    r = guestfs_scrub_device (g, device);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_glob_expand_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "glob_expand") == NULL;
-  str = getenv ("SKIP_TEST_GLOB_EXPAND_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_GLOB_EXPAND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_glob_expand_0 (void)
-{
-  if (test_glob_expand_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_glob_expand_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_glob_expand_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for glob_expand (0) */
-  {
-    char path[] = "/a/b/c";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkdir_p (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/a/b/c/d";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/a/b/c/e";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char pattern[] = "/a/b/c/*";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_glob_expand (g, pattern);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_glob_expand_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "/a/b/c/d";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_glob_expand_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_glob_expand_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "/a/b/c/e";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_glob_expand_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (r[2] != NULL) {
-      fprintf (stderr, "test_glob_expand_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_glob_expand_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "glob_expand") == NULL;
-  str = getenv ("SKIP_TEST_GLOB_EXPAND_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_GLOB_EXPAND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_glob_expand_1 (void)
-{
-  if (test_glob_expand_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_glob_expand_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_glob_expand_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for glob_expand (1) */
-  {
-    char path[] = "/a/b/c";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkdir_p (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/a/b/c/d";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/a/b/c/e";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char pattern[] = "/a/*/c/*";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_glob_expand (g, pattern);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_glob_expand_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "/a/b/c/d";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_glob_expand_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_glob_expand_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "/a/b/c/e";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_glob_expand_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (r[2] != NULL) {
-      fprintf (stderr, "test_glob_expand_1: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_glob_expand_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "glob_expand") == NULL;
-  str = getenv ("SKIP_TEST_GLOB_EXPAND_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_GLOB_EXPAND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_glob_expand_2 (void)
-{
-  if (test_glob_expand_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_glob_expand_2");
-    return 0;
-  }
-
-  /* InitBasicFS for test_glob_expand_2: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for glob_expand (2) */
-  {
-    char path[] = "/a/b/c";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkdir_p (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/a/b/c/d";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/a/b/c/e";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char pattern[] = "/a/*/x/*";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_glob_expand (g, pattern);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_glob_expand_2: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_ntfs_3g_probe_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "ntfs_3g_probe") == NULL;
-  str = getenv ("SKIP_TEST_NTFS_3G_PROBE_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_NTFS_3G_PROBE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_ntfs_3g_probe_0 (void)
-{
-  if (test_ntfs_3g_probe_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_ntfs_3g_probe_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_ntfs_3g_probe_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for ntfs_3g_probe (0) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ntfs";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_ntfs_3g_probe (g, 1, device);
-    if (r == -1)
-      return -1;
-    if (r != 0) {
-      fprintf (stderr, "test_ntfs_3g_probe_0: expected 0 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_ntfs_3g_probe_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "ntfs_3g_probe") == NULL;
-  str = getenv ("SKIP_TEST_NTFS_3G_PROBE_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_NTFS_3G_PROBE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_ntfs_3g_probe_1 (void)
-{
-  if (test_ntfs_3g_probe_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_ntfs_3g_probe_1");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_ntfs_3g_probe_1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for ntfs_3g_probe (1) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_ntfs_3g_probe (g, 1, device);
-    if (r == -1)
-      return -1;
-    if (r != 12) {
-      fprintf (stderr, "test_ntfs_3g_probe_1: expected 12 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_sleep_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "sleep") == NULL;
-  str = getenv ("SKIP_TEST_SLEEP_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_SLEEP");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_sleep_0 (void)
-{
-  if (test_sleep_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_sleep_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_sleep_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for sleep (0) */
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_sleep (g, 1);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_find_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "find") == NULL;
-  str = getenv ("SKIP_TEST_FIND_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_FIND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_find_0 (void)
-{
-  if (test_find_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_find_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_find_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for find (0) */
-  {
-    char directory[] = "/";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_find (g, directory);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_find_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "lost+found";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_find_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (r[1] != NULL) {
-      fprintf (stderr, "test_find_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_find_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "find") == NULL;
-  str = getenv ("SKIP_TEST_FIND_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_FIND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_find_1 (void)
-{
-  if (test_find_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_find_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_find_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for find (1) */
-  {
-    char path[] = "/a";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/b";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkdir (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/b/c";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char directory[] = "/";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_find (g, directory);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_find_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "a";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_find_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "b";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (!r[2]) {
-      fprintf (stderr, "test_find_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "b/c";
-      if (strcmp (r[2], expected) != 0) {
-        fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[2]);
-        return -1;
-      }
-    }
-    if (!r[3]) {
-      fprintf (stderr, "test_find_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "lost+found";
-      if (strcmp (r[3], expected) != 0) {
-        fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[3]);
-        return -1;
-      }
-    }
-    if (r[4] != NULL) {
-      fprintf (stderr, "test_find_1: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_find_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "find") == NULL;
-  str = getenv ("SKIP_TEST_FIND_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_FIND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_find_2 (void)
-{
-  if (test_find_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_find_2");
-    return 0;
-  }
-
-  /* InitBasicFS for test_find_2: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for find (2) */
-  {
-    char path[] = "/a/b/c";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkdir_p (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/a/b/c/d";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char directory[] = "/a/b/";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_find (g, directory);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_find_2: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "c";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_find_2: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_find_2: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "c/d";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_find_2: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (r[2] != NULL) {
-      fprintf (stderr, "test_find_2: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_lvresize_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "lvresize") == NULL;
-  str = getenv ("SKIP_TEST_LVRESIZE_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_LVRESIZE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_lvresize_0 (void)
-{
-  if (test_lvresize_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_lvresize_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_lvresize_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for lvresize (0) */
-  char expected[] = "test content";
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvcreate (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char volgroup[] = "VG";
-    char physvols_0[] = "/dev/sda1";
-    char *physvols[] = {
-      physvols_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgcreate (g, volgroup, physvols);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 10);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/VG/LV";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/VG/LV";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    char content[] = "test content";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char pathordevice[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount (g, pathordevice);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/VG/LV";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvresize (g, device, 20);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/VG/LV";
-    int r;
-    suppress_error = 0;
-    r = guestfs_e2fsck_f (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/VG/LV";
-    int r;
-    suppress_error = 0;
-    r = guestfs_resize2fs (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/VG/LV";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_cat (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_lvresize_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_zerofree_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "zerofree") == NULL;
-  str = getenv ("SKIP_TEST_ZEROFREE_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_ZEROFREE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_zerofree_0 (void)
-{
-  if (test_zerofree_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_zerofree_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_zerofree_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for zerofree (0) */
-  char expected[] = "test file";
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext3";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    char content[] = "test file";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char pathordevice[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount (g, pathordevice);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_zerofree (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_cat (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_zerofree_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_hexdump_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "hexdump") == NULL;
-  str = getenv ("SKIP_TEST_HEXDUMP_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_HEXDUMP");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_hexdump_0 (void)
-{
-  if (test_hexdump_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_hexdump_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_hexdump_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for hexdump (0) */
-  char expected[] = "00000000  68 65 6c 6c 6f 0a 77 6f  72 6c 64 0a              |hello.world.|\n0000000c\n";
-  {
-    char path[] = "/new";
-    char content[] = "hello\nworld\n";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 12);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_hexdump (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_hexdump_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_hexdump_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "hexdump") == NULL;
-  str = getenv ("SKIP_TEST_HEXDUMP_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_HEXDUMP");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_hexdump_1 (void)
-{
-  if (test_hexdump_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_hexdump_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_hexdump_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for hexdump (1) */
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/100krandom";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_hexdump (g, path);
-    if (r == NULL)
-      return -1;
-    free (r);
-  }
-  return 0;
-}
-
-static int test_strings_e_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "strings_e") == NULL;
-  str = getenv ("SKIP_TEST_STRINGS_E_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_STRINGS_E");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_strings_e_0 (void)
-{
-  if (test_strings_e_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_strings_e_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_strings_e_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for strings_e (0) */
-  {
-    char path[] = "/new";
-    char content[] = "hello\nworld\n";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char encoding[] = "b";
-    char path[] = "/new";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_strings_e (g, encoding, path);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_strings_e_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_strings_e_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "strings_e") == NULL;
-  str = getenv ("SKIP_TEST_STRINGS_E_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_STRINGS_E");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_strings_e_1 (void)
-{
-  if (test_strings_e_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_strings_e_1");
-    return 0;
-  }
-
-  printf ("        %s skipped (reason: test disabled in generator)\n", "test_strings_e_1");
-  return 0;
-}
-
-static int test_strings_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "strings") == NULL;
-  str = getenv ("SKIP_TEST_STRINGS_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_STRINGS");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_strings_0 (void)
-{
-  if (test_strings_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_strings_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_strings_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for strings (0) */
-  {
-    char path[] = "/new";
-    char content[] = "hello\nworld\n";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_strings (g, path);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_strings_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "hello";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_strings_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_strings_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "world";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_strings_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (r[2] != NULL) {
-      fprintf (stderr, "test_strings_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_strings_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "strings") == NULL;
-  str = getenv ("SKIP_TEST_STRINGS_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_STRINGS");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_strings_1 (void)
-{
-  if (test_strings_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_strings_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_strings_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for strings (1) */
-  {
-    char path[] = "/new";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_strings (g, path);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_strings_1: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_equal_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "equal") == NULL;
-  str = getenv ("SKIP_TEST_EQUAL_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_EQUAL");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_equal_0 (void)
-{
-  if (test_equal_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_equal_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_equal_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputTrue for equal (0) */
-  {
-    char path[] = "/file1";
-    char content[] = "contents of a file";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char src[] = "/file1";
-    char dest[] = "/file2";
-    int r;
-    suppress_error = 0;
-    r = guestfs_cp (g, src, dest);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char file1[] = "/file1";
-    char file2[] = "/file2";
-    int r;
-    suppress_error = 0;
-    r = guestfs_equal (g, file1, file2);
-    if (r == -1)
-      return -1;
-    if (!r) {
-      fprintf (stderr, "test_equal_0: expected true, got false\n");
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_equal_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "equal") == NULL;
-  str = getenv ("SKIP_TEST_EQUAL_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_EQUAL");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_equal_1 (void)
-{
-  if (test_equal_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_equal_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_equal_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputFalse for equal (1) */
-  {
-    char path[] = "/file1";
-    char content[] = "contents of a file";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/file2";
-    char content[] = "contents of another file";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char file1[] = "/file1";
-    char file2[] = "/file2";
-    int r;
-    suppress_error = 0;
-    r = guestfs_equal (g, file1, file2);
-    if (r == -1)
-      return -1;
-    if (r) {
-      fprintf (stderr, "test_equal_1: expected false, got true\n");
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_equal_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "equal") == NULL;
-  str = getenv ("SKIP_TEST_EQUAL_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_EQUAL");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_equal_2 (void)
-{
-  if (test_equal_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_equal_2");
-    return 0;
-  }
-
-  /* InitBasicFS for test_equal_2: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestLastFail for equal (2) */
-  {
-    char file1[] = "/file1";
-    char file2[] = "/file2";
-    int r;
-    suppress_error = 1;
-    r = guestfs_equal (g, file1, file2);
-    if (r != -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_ping_daemon_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "ping_daemon") == NULL;
-  str = getenv ("SKIP_TEST_PING_DAEMON_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_PING_DAEMON");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_ping_daemon_0 (void)
-{
-  if (test_ping_daemon_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_ping_daemon_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_ping_daemon_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for ping_daemon (0) */
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_ping_daemon (g);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_dmesg_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "dmesg") == NULL;
-  str = getenv ("SKIP_TEST_DMESG_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_DMESG");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_dmesg_0 (void)
-{
-  if (test_dmesg_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_dmesg_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_dmesg_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for dmesg (0) */
-  {
-    char *r;
-    suppress_error = 0;
-    r = guestfs_dmesg (g);
-    if (r == NULL)
-      return -1;
-    free (r);
-  }
-  return 0;
-}
-
-static int test_drop_caches_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "drop_caches") == NULL;
-  str = getenv ("SKIP_TEST_DROP_CACHES_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_DROP_CACHES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_drop_caches_0 (void)
-{
-  if (test_drop_caches_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_drop_caches_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_drop_caches_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for drop_caches (0) */
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_drop_caches (g, 3);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_mv_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mv") == NULL;
-  str = getenv ("SKIP_TEST_MV_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MV");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mv_0 (void)
-{
-  if (test_mv_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mv_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_mv_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for mv (0) */
-  char expected[] = "file content";
-  {
-    char path[] = "/old";
-    char content[] = "file content";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char src[] = "/old";
-    char dest[] = "/new";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mv (g, src, dest);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_cat (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_mv_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_mv_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mv") == NULL;
-  str = getenv ("SKIP_TEST_MV_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MV");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mv_1 (void)
-{
-  if (test_mv_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mv_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_mv_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputFalse for mv (1) */
-  {
-    char path[] = "/old";
-    char content[] = "file content";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char src[] = "/old";
-    char dest[] = "/new";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mv (g, src, dest);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/old";
-    int r;
-    suppress_error = 0;
-    r = guestfs_is_file (g, path);
-    if (r == -1)
-      return -1;
-    if (r) {
-      fprintf (stderr, "test_mv_1: expected false, got true\n");
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_cp_a_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "cp_a") == NULL;
-  str = getenv ("SKIP_TEST_CP_A_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CP_A");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_cp_a_0 (void)
-{
-  if (test_cp_a_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_cp_a_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_cp_a_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for cp_a (0) */
-  char expected[] = "file content";
-  {
-    char path[] = "/olddir";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkdir (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/newdir";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkdir (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/olddir/file";
-    char content[] = "file content";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char src[] = "/olddir";
-    char dest[] = "/newdir";
-    int r;
-    suppress_error = 0;
-    r = guestfs_cp_a (g, src, dest);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/newdir/olddir/file";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_cat (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_cp_a_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_cp_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "cp") == NULL;
-  str = getenv ("SKIP_TEST_CP_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CP");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_cp_0 (void)
-{
-  if (test_cp_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_cp_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_cp_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for cp (0) */
-  char expected[] = "file content";
-  {
-    char path[] = "/old";
-    char content[] = "file content";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char src[] = "/old";
-    char dest[] = "/new";
-    int r;
-    suppress_error = 0;
-    r = guestfs_cp (g, src, dest);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_cat (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_cp_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_cp_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "cp") == NULL;
-  str = getenv ("SKIP_TEST_CP_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CP");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_cp_1 (void)
-{
-  if (test_cp_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_cp_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_cp_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputTrue for cp (1) */
-  {
-    char path[] = "/old";
-    char content[] = "file content";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char src[] = "/old";
-    char dest[] = "/new";
-    int r;
-    suppress_error = 0;
-    r = guestfs_cp (g, src, dest);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/old";
-    int r;
-    suppress_error = 0;
-    r = guestfs_is_file (g, path);
-    if (r == -1)
-      return -1;
-    if (!r) {
-      fprintf (stderr, "test_cp_1: expected true, got false\n");
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_cp_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "cp") == NULL;
-  str = getenv ("SKIP_TEST_CP_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CP");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_cp_2 (void)
-{
-  if (test_cp_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_cp_2");
-    return 0;
-  }
-
-  /* InitBasicFS for test_cp_2: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for cp (2) */
-  char expected[] = "file content";
-  {
-    char path[] = "/old";
-    char content[] = "file content";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/dir";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkdir (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char src[] = "/old";
-    char dest[] = "/dir/new";
-    int r;
-    suppress_error = 0;
-    r = guestfs_cp (g, src, dest);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/dir/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_cat (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_cp_2: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_grub_install_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "grub_install") == NULL;
-  str = getenv ("SKIP_TEST_GRUB_INSTALL_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_GRUB_INSTALL");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_grub_install_0 (void)
-{
-  if (test_grub_install_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_grub_install_0");
-    return 0;
-  }
-
-  printf ("        %s skipped (reason: test disabled in generator)\n", "test_grub_install_0");
-  return 0;
-}
-
-static int test_zero_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "zero") == NULL;
-  str = getenv ("SKIP_TEST_ZERO_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_ZERO");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_zero_0 (void)
-{
-  if (test_zero_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_zero_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_zero_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for zero (0) */
-  char expected[] = "data";
-  {
-    char pathordevice[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount (g, pathordevice);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_zero (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/dev/sda1";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_file (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_zero_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_fsck_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "fsck") == NULL;
-  str = getenv ("SKIP_TEST_FSCK_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_FSCK");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_fsck_0 (void)
-{
-  if (test_fsck_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_fsck_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_fsck_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for fsck (0) */
-  {
-    char pathordevice[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount (g, pathordevice);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_fsck (g, fstype, device);
-    if (r == -1)
-      return -1;
-    if (r != 0) {
-      fprintf (stderr, "test_fsck_0: expected 0 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_fsck_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "fsck") == NULL;
-  str = getenv ("SKIP_TEST_FSCK_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_FSCK");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_fsck_1 (void)
-{
-  if (test_fsck_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_fsck_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_fsck_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for fsck (1) */
-  {
-    char pathordevice[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount (g, pathordevice);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_zero (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_fsck (g, fstype, device);
-    if (r == -1)
-      return -1;
-    if (r != 8) {
-      fprintf (stderr, "test_fsck_1: expected 8 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_set_e2uuid_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "set_e2uuid") == NULL;
-  str = getenv ("SKIP_TEST_SET_E2UUID_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_SET_E2UUID");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_set_e2uuid_0 (void)
-{
-  if (test_set_e2uuid_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_set_e2uuid_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_set_e2uuid_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for set_e2uuid (0) */
-  char expected[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d";
-  {
-    char device[] = "/dev/sda1";
-    char uuid[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d";
-    int r;
-    suppress_error = 0;
-    r = guestfs_set_e2uuid (g, device, uuid);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_get_e2uuid (g, device);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_set_e2uuid_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_set_e2uuid_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "set_e2uuid") == NULL;
-  str = getenv ("SKIP_TEST_SET_E2UUID_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_SET_E2UUID");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_set_e2uuid_1 (void)
-{
-  if (test_set_e2uuid_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_set_e2uuid_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_set_e2uuid_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for set_e2uuid (1) */
-  char expected[] = "";
-  {
-    char device[] = "/dev/sda1";
-    char uuid[] = "clear";
-    int r;
-    suppress_error = 0;
-    r = guestfs_set_e2uuid (g, device, uuid);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_get_e2uuid (g, device);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_set_e2uuid_1: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_set_e2uuid_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "set_e2uuid") == NULL;
-  str = getenv ("SKIP_TEST_SET_E2UUID_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_SET_E2UUID");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_set_e2uuid_2 (void)
-{
-  if (test_set_e2uuid_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_set_e2uuid_2");
-    return 0;
-  }
-
-  /* InitBasicFS for test_set_e2uuid_2: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for set_e2uuid (2) */
-  {
-    char device[] = "/dev/sda1";
-    char uuid[] = "random";
-    int r;
-    suppress_error = 0;
-    r = guestfs_set_e2uuid (g, device, uuid);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_set_e2uuid_3_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "set_e2uuid") == NULL;
-  str = getenv ("SKIP_TEST_SET_E2UUID_3");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_SET_E2UUID");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_set_e2uuid_3 (void)
-{
-  if (test_set_e2uuid_3_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_set_e2uuid_3");
-    return 0;
-  }
-
-  /* InitBasicFS for test_set_e2uuid_3: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for set_e2uuid (3) */
-  {
-    char device[] = "/dev/sda1";
-    char uuid[] = "time";
-    int r;
-    suppress_error = 0;
-    r = guestfs_set_e2uuid (g, device, uuid);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_set_e2label_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "set_e2label") == NULL;
-  str = getenv ("SKIP_TEST_SET_E2LABEL_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_SET_E2LABEL");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_set_e2label_0 (void)
-{
-  if (test_set_e2label_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_set_e2label_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_set_e2label_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for set_e2label (0) */
-  char expected[] = "testlabel";
-  {
-    char device[] = "/dev/sda1";
-    char label[] = "testlabel";
-    int r;
-    suppress_error = 0;
-    r = guestfs_set_e2label (g, device, label);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_get_e2label (g, device);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_set_e2label_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_pvremove_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "pvremove") == NULL;
-  str = getenv ("SKIP_TEST_PVREMOVE_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_PVREMOVE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_pvremove_0 (void)
-{
-  if (test_pvremove_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_pvremove_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_pvremove_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputListOfDevices for pvremove (0) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvcreate (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char volgroup[] = "VG";
-    char physvols_0[] = "/dev/sda1";
-    char *physvols[] = {
-      physvols_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgcreate (g, volgroup, physvols);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV1";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV2";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char vgname[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgremove (g, vgname);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvremove (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_lvs (g);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_pvremove_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_pvremove_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "pvremove") == NULL;
-  str = getenv ("SKIP_TEST_PVREMOVE_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_PVREMOVE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_pvremove_1 (void)
-{
-  if (test_pvremove_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_pvremove_1");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_pvremove_1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputListOfDevices for pvremove (1) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvcreate (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char volgroup[] = "VG";
-    char physvols_0[] = "/dev/sda1";
-    char *physvols[] = {
-      physvols_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgcreate (g, volgroup, physvols);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV1";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV2";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char vgname[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgremove (g, vgname);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvremove (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_vgs (g);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_pvremove_1: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_pvremove_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "pvremove") == NULL;
-  str = getenv ("SKIP_TEST_PVREMOVE_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_PVREMOVE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_pvremove_2 (void)
-{
-  if (test_pvremove_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_pvremove_2");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_pvremove_2 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputListOfDevices for pvremove (2) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvcreate (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char volgroup[] = "VG";
-    char physvols_0[] = "/dev/sda1";
-    char *physvols[] = {
-      physvols_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgcreate (g, volgroup, physvols);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV1";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV2";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char vgname[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgremove (g, vgname);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvremove (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_pvs (g);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_pvremove_2: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_vgremove_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "vgremove") == NULL;
-  str = getenv ("SKIP_TEST_VGREMOVE_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_VGREMOVE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_vgremove_0 (void)
-{
-  if (test_vgremove_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_vgremove_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_vgremove_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for vgremove (0) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvcreate (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char volgroup[] = "VG";
-    char physvols_0[] = "/dev/sda1";
-    char *physvols[] = {
-      physvols_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgcreate (g, volgroup, physvols);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV1";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV2";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char vgname[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgremove (g, vgname);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_lvs (g);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_vgremove_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_vgremove_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "vgremove") == NULL;
-  str = getenv ("SKIP_TEST_VGREMOVE_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_VGREMOVE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_vgremove_1 (void)
-{
-  if (test_vgremove_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_vgremove_1");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_vgremove_1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for vgremove (1) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvcreate (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char volgroup[] = "VG";
-    char physvols_0[] = "/dev/sda1";
-    char *physvols[] = {
-      physvols_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgcreate (g, volgroup, physvols);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV1";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV2";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char vgname[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgremove (g, vgname);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_vgs (g);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_vgremove_1: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_lvremove_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "lvremove") == NULL;
-  str = getenv ("SKIP_TEST_LVREMOVE_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_LVREMOVE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_lvremove_0 (void)
-{
-  if (test_lvremove_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_lvremove_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_lvremove_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for lvremove (0) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvcreate (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char volgroup[] = "VG";
-    char physvols_0[] = "/dev/sda1";
-    char *physvols[] = {
-      physvols_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgcreate (g, volgroup, physvols);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV1";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV2";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/VG/LV1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvremove (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_lvs (g);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_lvremove_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "/dev/VG/LV2";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_lvremove_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (r[1] != NULL) {
-      fprintf (stderr, "test_lvremove_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_lvremove_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "lvremove") == NULL;
-  str = getenv ("SKIP_TEST_LVREMOVE_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_LVREMOVE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_lvremove_1 (void)
-{
-  if (test_lvremove_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_lvremove_1");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_lvremove_1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for lvremove (1) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvcreate (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char volgroup[] = "VG";
-    char physvols_0[] = "/dev/sda1";
-    char *physvols[] = {
-      physvols_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgcreate (g, volgroup, physvols);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV1";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV2";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvremove (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_lvs (g);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_lvremove_1: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_lvremove_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "lvremove") == NULL;
-  str = getenv ("SKIP_TEST_LVREMOVE_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_LVREMOVE");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_lvremove_2 (void)
-{
-  if (test_lvremove_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_lvremove_2");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_lvremove_2 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for lvremove (2) */
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_pvcreate (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char volgroup[] = "VG";
-    char physvols_0[] = "/dev/sda1";
-    char *physvols[] = {
-      physvols_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_vgcreate (g, volgroup, physvols);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV1";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char logvol[] = "LV2";
-    char volgroup[] = "VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvcreate (g, logvol, volgroup, 50);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/VG";
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvremove (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_vgs (g);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_lvremove_2: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "VG";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_lvremove_2: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (r[1] != NULL) {
-      fprintf (stderr, "test_lvremove_2: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_mount_ro_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mount_ro") == NULL;
-  str = getenv ("SKIP_TEST_MOUNT_RO_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MOUNT_RO");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mount_ro_0 (void)
-{
-  if (test_mount_ro_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mount_ro_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_mount_ro_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestLastFail for mount_ro (0) */
-  {
-    char pathordevice[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount (g, pathordevice);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_ro (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    int r;
-    suppress_error = 1;
-    r = guestfs_touch (g, path);
-    if (r != -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_mount_ro_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "mount_ro") == NULL;
-  str = getenv ("SKIP_TEST_MOUNT_RO_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_MOUNT_RO");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_mount_ro_1 (void)
-{
-  if (test_mount_ro_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_mount_ro_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_mount_ro_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for mount_ro (1) */
-  char expected[] = "data";
-  {
-    char path[] = "/new";
-    char content[] = "data";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char pathordevice[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount (g, pathordevice);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_ro (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_cat (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_mount_ro_1: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_tgz_in_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "tgz_in") == NULL;
-  str = getenv ("SKIP_TEST_TGZ_IN_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_TGZ_IN");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_tgz_in_0 (void)
-{
-  if (test_tgz_in_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_tgz_in_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_tgz_in_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for tgz_in (0) */
-  char expected[] = "hello\n";
-  {
-    char directory[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_tgz_in (g, "../images/helloworld.tar.gz", directory);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/hello";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_cat (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_tgz_in_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_tar_in_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "tar_in") == NULL;
-  str = getenv ("SKIP_TEST_TAR_IN_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_TAR_IN");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_tar_in_0 (void)
-{
-  if (test_tar_in_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_tar_in_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_tar_in_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for tar_in (0) */
-  char expected[] = "hello\n";
-  {
-    char directory[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_tar_in (g, "../images/helloworld.tar", directory);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/hello";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_cat (g, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_tar_in_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_checksum_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "checksum") == NULL;
-  str = getenv ("SKIP_TEST_CHECKSUM_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CHECKSUM");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_checksum_0 (void)
-{
-  if (test_checksum_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_checksum_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_checksum_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for checksum (0) */
-  char expected[] = "935282863";
-  {
-    char path[] = "/new";
-    char content[] = "test\n";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char csumtype[] = "crc";
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_checksum_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_checksum_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "checksum") == NULL;
-  str = getenv ("SKIP_TEST_CHECKSUM_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CHECKSUM");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_checksum_1 (void)
-{
-  if (test_checksum_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_checksum_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_checksum_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestLastFail for checksum (1) */
-  {
-    char csumtype[] = "crc";
-    char path[] = "/new";
-    char *r;
-    suppress_error = 1;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r != NULL)
-      return -1;
-    free (r);
-  }
-  return 0;
-}
-
-static int test_checksum_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "checksum") == NULL;
-  str = getenv ("SKIP_TEST_CHECKSUM_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CHECKSUM");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_checksum_2 (void)
-{
-  if (test_checksum_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_checksum_2");
-    return 0;
-  }
-
-  /* InitBasicFS for test_checksum_2: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for checksum (2) */
-  char expected[] = "d8e8fca2dc0f896fd7cb4cb0031ba249";
-  {
-    char path[] = "/new";
-    char content[] = "test\n";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char csumtype[] = "md5";
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_checksum_2: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_checksum_3_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "checksum") == NULL;
-  str = getenv ("SKIP_TEST_CHECKSUM_3");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CHECKSUM");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_checksum_3 (void)
-{
-  if (test_checksum_3_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_checksum_3");
-    return 0;
-  }
-
-  /* InitBasicFS for test_checksum_3: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for checksum (3) */
-  char expected[] = "4e1243bd22c66e76c2ba9eddc1f91394e57f9f83";
-  {
-    char path[] = "/new";
-    char content[] = "test\n";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char csumtype[] = "sha1";
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_checksum_3: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_checksum_4_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "checksum") == NULL;
-  str = getenv ("SKIP_TEST_CHECKSUM_4");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CHECKSUM");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_checksum_4 (void)
-{
-  if (test_checksum_4_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_checksum_4");
-    return 0;
-  }
-
-  /* InitBasicFS for test_checksum_4: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for checksum (4) */
-  char expected[] = "52f1bf093f4b7588726035c176c0cdb4376cfea53819f1395ac9e6ec";
-  {
-    char path[] = "/new";
-    char content[] = "test\n";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char csumtype[] = "sha224";
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_checksum_4: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_checksum_5_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "checksum") == NULL;
-  str = getenv ("SKIP_TEST_CHECKSUM_5");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CHECKSUM");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_checksum_5 (void)
-{
-  if (test_checksum_5_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_checksum_5");
-    return 0;
-  }
-
-  /* InitBasicFS for test_checksum_5: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for checksum (5) */
-  char expected[] = "f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2";
-  {
-    char path[] = "/new";
-    char content[] = "test\n";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char csumtype[] = "sha256";
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_checksum_5: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_checksum_6_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "checksum") == NULL;
-  str = getenv ("SKIP_TEST_CHECKSUM_6");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CHECKSUM");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_checksum_6 (void)
-{
-  if (test_checksum_6_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_checksum_6");
-    return 0;
-  }
-
-  /* InitBasicFS for test_checksum_6: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for checksum (6) */
-  char expected[] = "109bb6b5b6d5547c1ce03c7a8bd7d8f80c1cb0957f50c4f7fda04692079917e4f9cad52b878f3d8234e1a170b154b72d";
-  {
-    char path[] = "/new";
-    char content[] = "test\n";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char csumtype[] = "sha384";
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_checksum_6: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_checksum_7_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "checksum") == NULL;
-  str = getenv ("SKIP_TEST_CHECKSUM_7");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CHECKSUM");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_checksum_7 (void)
-{
-  if (test_checksum_7_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_checksum_7");
-    return 0;
-  }
-
-  /* InitBasicFS for test_checksum_7: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for checksum (7) */
-  char expected[] = "0e3e75234abc68f4378a86b3f4b32a198ba301845b0cd6e50106e874345700cc6663a86c1ea125dc5e92be17c98f9a0f85ca9d5f595db2012f7cc3571945c123";
-  {
-    char path[] = "/new";
-    char content[] = "test\n";
-    int r;
-    suppress_error = 0;
-    r = guestfs_write_file (g, path, content, 0);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char csumtype[] = "sha512";
-    char path[] = "/new";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_checksum_7: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_checksum_8_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "checksum") == NULL;
-  str = getenv ("SKIP_TEST_CHECKSUM_8");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_CHECKSUM");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_checksum_8 (void)
-{
-  if (test_checksum_8_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_checksum_8");
-    return 0;
-  }
-
-  /* InitBasicFS for test_checksum_8: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for checksum (8) */
-  char expected[] = "46d6ca27ee07cdc6fa99c2e138cc522c";
-  {
-    char options[] = "ro";
-    char vfstype[] = "squashfs";
-    char device[] = "/dev/sdd";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char csumtype[] = "md5";
-    char path[] = "/known-3";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_checksum_8: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_download_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "download") == NULL;
-  str = getenv ("SKIP_TEST_DOWNLOAD_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_DOWNLOAD");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_download_0 (void)
-{
-  if (test_download_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_download_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_download_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for download (0) */
-  char expected[] = "e3eda01d9815f8d24aae2dbd89b68b06";
-  {
-    char remotefilename[] = "/COPYING.LIB";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "../COPYING.LIB", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char remotefilename[] = "/COPYING.LIB";
-    int r;
-    suppress_error = 0;
-    r = guestfs_download (g, remotefilename, "testdownload.tmp");
-    if (r == -1)
-      return -1;
-  }
-  {
-    char remotefilename[] = "/upload";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "testdownload.tmp", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char csumtype[] = "md5";
-    char path[] = "/upload";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_download_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_upload_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "upload") == NULL;
-  str = getenv ("SKIP_TEST_UPLOAD_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_UPLOAD");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_upload_0 (void)
-{
-  if (test_upload_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_upload_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_upload_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for upload (0) */
-  char expected[] = "e3eda01d9815f8d24aae2dbd89b68b06";
-  {
-    char remotefilename[] = "/COPYING.LIB";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "../COPYING.LIB", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char csumtype[] = "md5";
-    char path[] = "/COPYING.LIB";
-    char *r;
-    suppress_error = 0;
-    r = guestfs_checksum (g, csumtype, path);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_upload_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_blockdev_rereadpt_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "blockdev_rereadpt") == NULL;
-  str = getenv ("SKIP_TEST_BLOCKDEV_REREADPT_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_BLOCKDEV_REREADPT");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_blockdev_rereadpt_0 (void)
-{
-  if (test_blockdev_rereadpt_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_blockdev_rereadpt_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_blockdev_rereadpt_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for blockdev_rereadpt (0) */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_rereadpt (g, device);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_blockdev_flushbufs_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "blockdev_flushbufs") == NULL;
-  str = getenv ("SKIP_TEST_BLOCKDEV_FLUSHBUFS_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_BLOCKDEV_FLUSHBUFS");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_blockdev_flushbufs_0 (void)
-{
-  if (test_blockdev_flushbufs_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_blockdev_flushbufs_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_blockdev_flushbufs_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestRun for blockdev_flushbufs (0) */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_flushbufs (g, device);
-    if (r == -1)
-      return -1;
-  }
-  return 0;
-}
-
-static int test_blockdev_getsize64_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "blockdev_getsize64") == NULL;
-  str = getenv ("SKIP_TEST_BLOCKDEV_GETSIZE64_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_BLOCKDEV_GETSIZE64");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_blockdev_getsize64_0 (void)
-{
-  if (test_blockdev_getsize64_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_blockdev_getsize64_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_blockdev_getsize64_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for blockdev_getsize64 (0) */
-  {
-    char device[] = "/dev/sda";
-    int64_t r;
-    suppress_error = 0;
-    r = guestfs_blockdev_getsize64 (g, device);
-    if (r == -1)
-      return -1;
-    if (r != 524288000) {
-      fprintf (stderr, "test_blockdev_getsize64_0: expected 524288000 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_blockdev_getsz_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "blockdev_getsz") == NULL;
-  str = getenv ("SKIP_TEST_BLOCKDEV_GETSZ_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_BLOCKDEV_GETSZ");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_blockdev_getsz_0 (void)
-{
-  if (test_blockdev_getsz_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_blockdev_getsz_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_blockdev_getsz_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for blockdev_getsz (0) */
-  {
-    char device[] = "/dev/sda";
-    int64_t r;
-    suppress_error = 0;
-    r = guestfs_blockdev_getsz (g, device);
-    if (r == -1)
-      return -1;
-    if (r != 1024000) {
-      fprintf (stderr, "test_blockdev_getsz_0: expected 1024000 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_blockdev_getbsz_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "blockdev_getbsz") == NULL;
-  str = getenv ("SKIP_TEST_BLOCKDEV_GETBSZ_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_BLOCKDEV_GETBSZ");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_blockdev_getbsz_0 (void)
-{
-  if (test_blockdev_getbsz_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_blockdev_getbsz_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_blockdev_getbsz_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for blockdev_getbsz (0) */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_getbsz (g, device);
-    if (r == -1)
-      return -1;
-    if (r != 4096) {
-      fprintf (stderr, "test_blockdev_getbsz_0: expected 4096 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_blockdev_getss_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "blockdev_getss") == NULL;
-  str = getenv ("SKIP_TEST_BLOCKDEV_GETSS_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_BLOCKDEV_GETSS");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_blockdev_getss_0 (void)
-{
-  if (test_blockdev_getss_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_blockdev_getss_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_blockdev_getss_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputInt for blockdev_getss (0) */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_getss (g, device);
-    if (r == -1)
-      return -1;
-    if (r != 512) {
-      fprintf (stderr, "test_blockdev_getss_0: expected 512 but got %d\n",               (int) r);
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_blockdev_getro_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "blockdev_getro") == NULL;
-  str = getenv ("SKIP_TEST_BLOCKDEV_GETRO_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_BLOCKDEV_GETRO");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_blockdev_getro_0 (void)
-{
-  if (test_blockdev_getro_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_blockdev_getro_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_blockdev_getro_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputTrue for blockdev_getro (0) */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setro (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_getro (g, device);
-    if (r == -1)
-      return -1;
-    if (!r) {
-      fprintf (stderr, "test_blockdev_getro_0: expected true, got false\n");
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_blockdev_setrw_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "blockdev_setrw") == NULL;
-  str = getenv ("SKIP_TEST_BLOCKDEV_SETRW_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_BLOCKDEV_SETRW");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_blockdev_setrw_0 (void)
-{
-  if (test_blockdev_setrw_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_blockdev_setrw_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_blockdev_setrw_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputFalse for blockdev_setrw (0) */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_getro (g, device);
-    if (r == -1)
-      return -1;
-    if (r) {
-      fprintf (stderr, "test_blockdev_setrw_0: expected false, got true\n");
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_blockdev_setro_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "blockdev_setro") == NULL;
-  str = getenv ("SKIP_TEST_BLOCKDEV_SETRO_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_BLOCKDEV_SETRO");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_blockdev_setro_0 (void)
-{
-  if (test_blockdev_setro_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_blockdev_setro_0");
-    return 0;
-  }
-
-  /* InitNone|InitEmpty for test_blockdev_setro_0 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputTrue for blockdev_setro (0) */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setro (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_getro (g, device);
-    if (r == -1)
-      return -1;
-    if (!r) {
-      fprintf (stderr, "test_blockdev_setro_0: expected true, got false\n");
-      return -1;
-    }
-  }
-  return 0;
-}
-
-static int test_statvfs_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "statvfs") == NULL;
-  str = getenv ("SKIP_TEST_STATVFS_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_STATVFS");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_statvfs_0 (void)
-{
-  if (test_statvfs_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_statvfs_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_statvfs_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputStruct for statvfs (0) */
-  {
-    char path[] = "/";
-    struct guestfs_statvfs *r;
-    suppress_error = 0;
-    r = guestfs_statvfs (g, path);
-    if (r == NULL)
-      return -1;
-    if (r->namemax != 255) {
-      fprintf (stderr, "test_statvfs_0: namemax was %d, expected 255\n",
-               (int) r->namemax);
-      return -1;
-    }
-    if (r->bsize != 1024) {
-      fprintf (stderr, "test_statvfs_0: bsize was %d, expected 1024\n",
-               (int) r->bsize);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_lstat_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "lstat") == NULL;
-  str = getenv ("SKIP_TEST_LSTAT_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_LSTAT");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_lstat_0 (void)
-{
-  if (test_lstat_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_lstat_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_lstat_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputStruct for lstat (0) */
-  {
-    char path[] = "/new";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    struct guestfs_stat *r;
-    suppress_error = 0;
-    r = guestfs_lstat (g, path);
-    if (r == NULL)
-      return -1;
-    if (r->size != 0) {
-      fprintf (stderr, "test_lstat_0: size was %d, expected 0\n",
-               (int) r->size);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_stat_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "stat") == NULL;
-  str = getenv ("SKIP_TEST_STAT_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_STAT");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_stat_0 (void)
-{
-  if (test_stat_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_stat_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_stat_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputStruct for stat (0) */
-  {
-    char path[] = "/new";
-    int r;
-    suppress_error = 0;
-    r = guestfs_touch (g, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/new";
-    struct guestfs_stat *r;
-    suppress_error = 0;
-    r = guestfs_stat (g, path);
-    if (r == NULL)
-      return -1;
-    if (r->size != 0) {
-      fprintf (stderr, "test_stat_0: size was %d, expected 0\n",
-               (int) r->size);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_0 (void)
-{
-  if (test_command_lines_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (0) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "1";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_command_lines_0: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "Result1";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_command_lines_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (r[1] != NULL) {
-      fprintf (stderr, "test_command_lines_0: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_1 (void)
-{
-  if (test_command_lines_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (1) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "2";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_command_lines_1: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "Result2";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_command_lines_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (r[1] != NULL) {
-      fprintf (stderr, "test_command_lines_1: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_2 (void)
-{
-  if (test_command_lines_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_2");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_2: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (2) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "3";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_command_lines_2: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_command_lines_2: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_command_lines_2: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "Result3";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_command_lines_2: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (r[2] != NULL) {
-      fprintf (stderr, "test_command_lines_2: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_3_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_3");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_3 (void)
-{
-  if (test_command_lines_3_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_3");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_3: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (3) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "4";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_command_lines_3: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_command_lines_3: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_command_lines_3: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "Result4";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_command_lines_3: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (r[2] != NULL) {
-      fprintf (stderr, "test_command_lines_3: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_4_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_4");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_4 (void)
-{
-  if (test_command_lines_4_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_4");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_4: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (4) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "5";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_command_lines_4: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_command_lines_4: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_command_lines_4: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "Result5";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_command_lines_4: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (!r[2]) {
-      fprintf (stderr, "test_command_lines_4: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "";
-      if (strcmp (r[2], expected) != 0) {
-        fprintf (stderr, "test_command_lines_4: expected \"%s\" but got \"%s\"\n", expected, r[2]);
-        return -1;
-      }
-    }
-    if (r[3] != NULL) {
-      fprintf (stderr, "test_command_lines_4: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_5_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_5");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_5 (void)
-{
-  if (test_command_lines_5_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_5");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_5: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (5) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "6";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_command_lines_5: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_command_lines_5: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_command_lines_5: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_command_lines_5: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (!r[2]) {
-      fprintf (stderr, "test_command_lines_5: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "Result6";
-      if (strcmp (r[2], expected) != 0) {
-        fprintf (stderr, "test_command_lines_5: expected \"%s\" but got \"%s\"\n", expected, r[2]);
-        return -1;
-      }
-    }
-    if (!r[3]) {
-      fprintf (stderr, "test_command_lines_5: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "";
-      if (strcmp (r[3], expected) != 0) {
-        fprintf (stderr, "test_command_lines_5: expected \"%s\" but got \"%s\"\n", expected, r[3]);
-        return -1;
-      }
-    }
-    if (r[4] != NULL) {
-      fprintf (stderr, "test_command_lines_5: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_6_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_6");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_6 (void)
-{
-  if (test_command_lines_6_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_6");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_6: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (6) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "7";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (r[0] != NULL) {
-      fprintf (stderr, "test_command_lines_6: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_7_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_7");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_7 (void)
-{
-  if (test_command_lines_7_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_7");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_7: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (7) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "8";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_command_lines_7: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_command_lines_7: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (r[1] != NULL) {
-      fprintf (stderr, "test_command_lines_7: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_8_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_8");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_8 (void)
-{
-  if (test_command_lines_8_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_8");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_8: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (8) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "9";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_command_lines_8: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_command_lines_8: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_command_lines_8: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_command_lines_8: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (r[2] != NULL) {
-      fprintf (stderr, "test_command_lines_8: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_9_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_9");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_9 (void)
-{
-  if (test_command_lines_9_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_9");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_9: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (9) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "10";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_command_lines_9: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "Result10-1";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_command_lines_9: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_command_lines_9: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "Result10-2";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_command_lines_9: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (r[2] != NULL) {
-      fprintf (stderr, "test_command_lines_9: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_lines_10_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command_lines") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_LINES_10");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND_LINES");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_lines_10 (void)
-{
-  if (test_command_lines_10_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_lines_10");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_lines_10: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutputList for command_lines (10) */
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "11";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char **r;
-    int i;
-    suppress_error = 0;
-    r = guestfs_command_lines (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (!r[0]) {
-      fprintf (stderr, "test_command_lines_10: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "Result11-1";
-      if (strcmp (r[0], expected) != 0) {
-        fprintf (stderr, "test_command_lines_10: expected \"%s\" but got \"%s\"\n", expected, r[0]);
-        return -1;
-      }
-    }
-    if (!r[1]) {
-      fprintf (stderr, "test_command_lines_10: short list returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    {
-      char expected[] = "Result11-2";
-      if (strcmp (r[1], expected) != 0) {
-        fprintf (stderr, "test_command_lines_10: expected \"%s\" but got \"%s\"\n", expected, r[1]);
-        return -1;
-      }
-    }
-    if (r[2] != NULL) {
-      fprintf (stderr, "test_command_lines_10: extra elements returned from command\n");
-      print_strings (r);
-      return -1;
-    }
-    for (i = 0; r[i] != NULL; ++i)
-      free (r[i]);
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_0_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_0");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_0 (void)
-{
-  if (test_command_0_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_0");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_0: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for command (0) */
-  char expected[] = "Result1";
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "1";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char *r;
-    suppress_error = 0;
-    r = guestfs_command (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_command_0: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_1_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_1");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_1 (void)
-{
-  if (test_command_1_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_1");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_1: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for command (1) */
-  char expected[] = "Result2\n";
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "2";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char *r;
-    suppress_error = 0;
-    r = guestfs_command (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_command_1: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_2_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_2");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_2 (void)
-{
-  if (test_command_2_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_2");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_2: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for command (2) */
-  char expected[] = "\nResult3";
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "3";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char *r;
-    suppress_error = 0;
-    r = guestfs_command (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_command_2: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_3_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_3");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_3 (void)
-{
-  if (test_command_3_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_3");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_3: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for command (3) */
-  char expected[] = "\nResult4\n";
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "4";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char *r;
-    suppress_error = 0;
-    r = guestfs_command (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_command_3: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_4_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)
-    return strstr (str, "command") == NULL;
-  str = getenv ("SKIP_TEST_COMMAND_4");
-  if (str && strcmp (str, "1") == 0) return 1;
-  str = getenv ("SKIP_TEST_COMMAND");
-  if (str && strcmp (str, "1") == 0) return 1;
-  return 0;
-}
-
-static int test_command_4 (void)
-{
-  if (test_command_4_skip ()) {
-    printf ("        %s skipped (reason: environment variable set)\n", "test_command_4");
-    return 0;
-  }
-
-  /* InitBasicFS for test_command_4: create ext2 on /dev/sda1 */
-  {
-    char device[] = "/dev/sda";
-    int r;
-    suppress_error = 0;
-    r = guestfs_blockdev_setrw (g, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_umount_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    int r;
-    suppress_error = 0;
-    r = guestfs_lvm_remove_all (g);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda";
-    char lines_0[] = ",";
-    char *lines[] = {
-      lines_0,
-      NULL
-    };
-    int r;
-    suppress_error = 0;
-    r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char fstype[] = "ext2";
-    char device[] = "/dev/sda1";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mkfs (g, fstype, device);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char device[] = "/dev/sda1";
-    char mountpoint[] = "/";
-    int r;
-    suppress_error = 0;
-    r = guestfs_mount (g, device, mountpoint);
-    if (r == -1)
-      return -1;
-  }
-  /* TestOutput for command (4) */
-  char expected[] = "\nResult5\n\n";
-  {
-    char remotefilename[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_upload (g, "test-command", remotefilename);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char path[] = "/test-command";
-    int r;
-    suppress_error = 0;
-    r = guestfs_chmod (g, 493, path);
-    if (r == -1)
-      return -1;
-  }
-  {
-    char arguments_0[] = "/test-command";
-    char arguments_1[] = "5";
-    char *arguments[] = {
-      arguments_0,
-      arguments_1,
-      NULL
-    };
-    char *r;
-    suppress_error = 0;
-    r = guestfs_command (g, arguments);
-    if (r == NULL)
-      return -1;
-    if (strcmp (r, expected) != 0) {
-      fprintf (stderr, "test_command_4: expected \"%s\" but got \"%s\"\n", expected, r);
-      return -1;
-    }
-    free (r);
-  }
-  return 0;
-}
-
-static int test_command_5_skip (void)
-{
-  const char *str;
-
-  str = getenv ("TEST_ONLY");
-  if (str)