Richard W.M. Jones
2017-Jul-27 15:46 UTC
[Libguestfs] [PATCH v2] daemon: Remove GUESTFSD_EXT_CMD.
This is a simpler patch that removes GUESTFSD_EXT_CMD completely.
Richard W.M. Jones
2017-Jul-27 15:46 UTC
[Libguestfs] [PATCH v2] daemon: Remove GUESTFSD_EXT_CMD.
GUESTFSD_EXT_CMD was used by OpenSUSE to track which external commands are run by the daemon and package those commands into the appliance. It is no longer used by recent SUSE builds, so remove it. Thanks: Pino Toscano, Olaf Hering. --- daemon/9p.c | 3 +- daemon/available.c | 7 +-- daemon/base64.c | 6 +-- daemon/blkid.c | 10 ++--- daemon/blockdev.c | 4 +- daemon/btrfs.c | 109 ++++++++++++++++++++++------------------------- daemon/checksum.c | 26 ++++------- daemon/cmp.c | 4 +- daemon/compress.c | 24 ++++------- daemon/cpio.c | 4 +- daemon/cpmv.c | 11 ++--- daemon/daemon.h | 3 -- daemon/dd.c | 4 +- daemon/debug.c | 33 +++++--------- daemon/df.c | 6 +-- daemon/dir.c | 4 +- daemon/dmesg.c | 4 +- daemon/du.c | 4 +- daemon/ext2.c | 48 +++++++++------------ daemon/file.c | 10 ++--- daemon/find.c | 4 +- daemon/findfs.c | 4 +- daemon/fsck.c | 4 +- daemon/fstrim.c | 6 +-- daemon/grub.c | 6 +-- daemon/guestfsd.c | 7 +-- daemon/hotplug.c | 4 +- daemon/initrd.c | 5 +-- daemon/inotify.c | 3 +- daemon/isoinfo.c | 4 +- daemon/labels.c | 4 +- daemon/ldm.c | 22 +++++----- daemon/link.c | 4 +- daemon/ls.c | 6 +-- daemon/luks.c | 14 +++--- daemon/lvm-filter.c | 19 +++------ daemon/lvm.c | 68 ++++++++++++++--------------- daemon/md.c | 10 ++--- daemon/mkfs.c | 7 +-- daemon/modprobe.c | 6 +-- daemon/mount.c | 15 +++---- daemon/ntfs.c | 21 ++++----- daemon/ntfsclone.c | 7 +-- daemon/parted.c | 66 ++++++++++++++-------------- daemon/rsync.c | 6 +-- daemon/scrub.c | 10 ++--- daemon/selinux-relabel.c | 8 ++-- daemon/sfdisk.c | 9 ++-- daemon/sh.c | 20 ++++----- daemon/sleuthkit.c | 13 +++--- daemon/squashfs.c | 6 +-- daemon/swap.c | 29 ++++++------- daemon/syslinux.c | 11 ++--- daemon/tar.c | 6 +-- daemon/xfs.c | 16 +++---- daemon/zero.c | 10 ++--- daemon/zerofree.c | 6 +-- 57 files changed, 306 insertions(+), 484 deletions(-) diff --git a/daemon/9p.c b/daemon/9p.c index fc5b01736..55644249d 100644 --- a/daemon/9p.c +++ b/daemon/9p.c @@ -33,7 +33,6 @@ #include "actions.h" #define BUS_PATH "/sys/bus/virtio/drivers/9pnet_virtio" -GUESTFSD_EXT_CMD(str_mount, mount); static char *read_whole_file (const char *filename); @@ -215,7 +214,7 @@ do_mount_9p (const char *mount_tag, const char *mountpoint, const char *options) } r = command (NULL, &err, - str_mount, "-o", opts, "-t", "9p", mount_tag, mp, NULL); + "mount", "-o", opts, "-t", "9p", mount_tag, mp, NULL); if (r == -1) { reply_with_error ("%s on %s: %s", mount_tag, mountpoint, err); return -1; diff --git a/daemon/available.c b/daemon/available.c index 977c4dead..5ecb3f355 100644 --- a/daemon/available.c +++ b/daemon/available.c @@ -30,9 +30,6 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_grep, grep); -GUESTFSD_EXT_CMD(str_modprobe, modprobe); - int do_internal_feature_available (const char *group) { @@ -79,7 +76,7 @@ test_proc_filesystems (const char *filesystem) return -1; } - r = commandr (NULL, &err, str_grep, regex, "/proc/filesystems", NULL); + r = commandr (NULL, &err, "grep", regex, "/proc/filesystems", NULL); if (r == -1 || r >= 2) { fprintf (stderr, "grep /proc/filesystems: %s", err); return -1; @@ -92,7 +89,7 @@ test_proc_filesystems (const char *filesystem) static void modprobe (const char *module) { - ignore_value (command (NULL, NULL, str_modprobe, module, NULL)); + ignore_value (command (NULL, NULL, "modprobe", module, NULL)); } /* Internal function for testing if a filesystem is available. Note diff --git a/daemon/base64.c b/daemon/base64.c index 3468c3342..badb95efa 100644 --- a/daemon/base64.c +++ b/daemon/base64.c @@ -30,8 +30,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_base64, base64); - static int write_cb (void *fd_ptr, const void *buf, size_t len) { @@ -48,7 +46,7 @@ do_base64_in (const char *file) CLEANUP_FREE char *cmd = NULL; int fd; - if (asprintf_nowarn (&cmd, "%s -d -i > %R", str_base64, file) == -1) { + if (asprintf_nowarn (&cmd, "%s -d -i > %R", "base64", file) == -1) { err = errno; cancel_receive (); errno = err; @@ -132,7 +130,7 @@ do_base64_out (const char *file) } /* Construct the command. */ - if (asprintf_nowarn (&cmd, "%s %Q", str_base64, buf) == -1) { + if (asprintf_nowarn (&cmd, "%s %Q", "base64", buf) == -1) { reply_with_perror ("asprintf"); return -1; } diff --git a/daemon/blkid.c b/daemon/blkid.c index 1fe5ff93a..d9858d5c8 100644 --- a/daemon/blkid.c +++ b/daemon/blkid.c @@ -28,8 +28,6 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_blkid, blkid); - char * get_blkid_tag (const char *device, const char *tag) { @@ -39,7 +37,7 @@ get_blkid_tag (const char *device, const char *tag) size_t len; r = commandr (&out, &err, - str_blkid, + "blkid", /* Adding -c option kills all caching, even on RHEL 5. */ "-c", "/dev/null", "-o", "value", "-s", tag, device, NULL); @@ -107,7 +105,7 @@ test_blkid_p_i_opt (void) int r; CLEANUP_FREE char *err = NULL, *err2 = NULL; - r = commandr (NULL, &err, str_blkid, "-p", "/dev/null", NULL); + r = commandr (NULL, &err, "blkid", "-p", "/dev/null", NULL); if (r == -1) { /* This means we couldn't run the blkid command at all. */ command_failed: @@ -119,7 +117,7 @@ test_blkid_p_i_opt (void) return 0; } - r = commandr (NULL, &err2, str_blkid, "-i", NULL); + r = commandr (NULL, &err2, "blkid", "-i", NULL); if (r == -1) goto command_failed; @@ -140,7 +138,7 @@ blkid_with_p_i_opt (const char *device) CLEANUP_FREE_STRING_LIST char **lines = NULL; CLEANUP_FREE_STRINGSBUF DECLARE_STRINGSBUF (ret); - r = command (&out, &err, str_blkid, "-c", "/dev/null", + r = command (&out, &err, "blkid", "-c", "/dev/null", "-p", "-i", "-o", "export", device, NULL); if (r == -1) { reply_with_error ("%s", err); diff --git a/daemon/blockdev.c b/daemon/blockdev.c index 6e8821d92..2083801af 100644 --- a/daemon/blockdev.c +++ b/daemon/blockdev.c @@ -28,8 +28,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_blockdev, blockdev); - /* These functions are all about using the blockdev command, so * we centralize it in one call. */ @@ -40,7 +38,7 @@ call_blockdev (const char *device, const char *switc, int extraarg, int prints) int64_t rv; CLEANUP_FREE char *out = NULL, *err = NULL; const char *argv[] = { - str_blockdev, + "blockdev", switc, NULL, NULL, diff --git a/daemon/btrfs.c b/daemon/btrfs.c index 5f1e5d1d0..8fd327c09 100644 --- a/daemon/btrfs.c +++ b/daemon/btrfs.c @@ -33,13 +33,6 @@ #include "c-ctype.h" #include "ignore-value.h" -GUESTFSD_EXT_CMD(str_btrfs, btrfs); -GUESTFSD_EXT_CMD(str_btrfstune, btrfstune); -GUESTFSD_EXT_CMD(str_btrfsck, btrfsck); -GUESTFSD_EXT_CMD(str_mkfs_btrfs, mkfs.btrfs); -GUESTFSD_EXT_CMD(str_umount, umount); -GUESTFSD_EXT_CMD(str_btrfsimage, btrfs-image); - COMPILE_REGEXP (re_btrfs_subvolume_list, "ID\\s+(\\d+).*\\s" "top level\\s+(\\d+).*\\s" @@ -51,7 +44,7 @@ int optgroup_btrfs_available (void) { return test_mode || - (prog_exists (str_btrfs) && filesystem_available ("btrfs") > 0); + (prog_exists ("btrfs") && filesystem_available ("btrfs") > 0); } char * @@ -62,7 +55,7 @@ btrfs_get_label (const char *device) char *out = NULL; size_t len; - r = command (&out, &err, str_btrfs, "filesystem", "label", + r = command (&out, &err, "btrfs", "filesystem", "label", device, NULL); if (r == -1) { reply_with_error ("%s", err); @@ -84,7 +77,7 @@ btrfs_set_label (const char *device, const char *label) int r; CLEANUP_FREE char *err = NULL; - r = command (NULL, &err, str_btrfs, "filesystem", "label", + r = command (NULL, &err, "btrfs", "filesystem", "label", device, label, NULL); if (r == -1) { reply_with_error ("%s", err); @@ -110,7 +103,7 @@ do_btrfs_filesystem_resize (const char *filesystem, int64_t size) size_t i = 0; char size_str[32]; - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "filesystem"); ADD_ARG (argv, i, "resize"); @@ -169,7 +162,7 @@ do_mkfs_btrfs (char *const *devices, return -1; } - ADD_ARG (argv, i, str_mkfs_btrfs); + ADD_ARG (argv, i, "mkfs.btrfs"); /* Optional arguments. */ if (optargs_bitmask & GUESTFS_MKFS_BTRFS_ALLOCSTART_BITMASK) { @@ -290,7 +283,7 @@ do_btrfs_subvolume_snapshot (const char *source, const char *dest, int ro, return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "subvolume"); ADD_ARG (argv, i, "snapshot"); @@ -333,7 +326,7 @@ do_btrfs_subvolume_delete (const char *subvolume) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "subvolume"); ADD_ARG (argv, i, "delete"); ADD_ARG (argv, i, subvolume_buf); @@ -364,7 +357,7 @@ do_btrfs_subvolume_create (const char *dest, const char *qgroupid) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "subvolume"); ADD_ARG (argv, i, "create"); @@ -426,7 +419,7 @@ umount (char *fs_buf, const mountable_t *fs) if (fs->type != MOUNTABLE_PATH) { CLEANUP_FREE char *err = NULL; - if (command (NULL, &err, str_umount, fs_buf, NULL) == -1) { + if (command (NULL, &err, "umount", fs_buf, NULL) == -1) { reply_with_error ("umount: %s", err); return -1; } @@ -455,7 +448,7 @@ do_btrfs_subvolume_list (const mountable_t *fs) if (!fs_buf) return NULL; - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "subvolume"); ADD_ARG (argv, i, "list"); ADD_ARG (argv, i, fs_buf); @@ -590,7 +583,7 @@ do_btrfs_subvolume_set_default (int64_t id, const char *fs) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "subvolume"); ADD_ARG (argv, i, "set-default"); ADD_ARG (argv, i, buf); @@ -622,7 +615,7 @@ do_btrfs_subvolume_get_default (const mountable_t *fs) if (fs_buf == NULL) goto error; - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "subvolume"); ADD_ARG (argv, i, "get-default"); ADD_ARG (argv, i, fs_buf); @@ -661,7 +654,7 @@ do_btrfs_filesystem_sync (const char *fs) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "filesystem"); ADD_ARG (argv, i, "sync"); ADD_ARG (argv, i, fs_buf); @@ -692,7 +685,7 @@ do_btrfs_filesystem_balance (const char *fs) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "balance"); ADD_ARG (argv, i, fs_buf); ADD_ARG (argv, i, NULL); @@ -715,7 +708,7 @@ test_btrfs_device_add_needs_force (void) int r; CLEANUP_FREE char *out = NULL, *err = NULL; - r = command (&out, &err, str_btrfs, "device", "add", "--help", NULL); + r = command (&out, &err, "btrfs", "device", "add", "--help", NULL); if (r == -1) { reply_with_error ("%s: %s", "btrfs device add --help", err); return -1; @@ -756,7 +749,7 @@ do_btrfs_device_add (char *const *devices, const char *fs) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "device"); ADD_ARG (argv, i, "add"); @@ -799,7 +792,7 @@ do_btrfs_device_delete (char *const *devices, const char *fs) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "device"); ADD_ARG (argv, i, "delete"); @@ -840,7 +833,7 @@ test_btrfstune_uuid_opt (void) CLEANUP_FREE char *err = NULL; - int r = commandr (NULL, &err, str_btrfstune, "--help", NULL); + int r = commandr (NULL, &err, "btrfstune", "--help", NULL); if (r == -1) { reply_with_error ("btrfstune: %s", err); @@ -868,7 +861,7 @@ do_btrfs_set_seeding (const char *device, int svalue) const char *s_value = svalue ? "1" : "0"; - r = commandr (NULL, &err, str_btrfstune, "-S", s_value, device, NULL); + r = commandr (NULL, &err, "btrfstune", "-S", s_value, device, NULL); if (r == -1) { reply_with_error ("%s: %s", device, err); return -1; @@ -887,7 +880,7 @@ btrfs_set_uuid (const char *device, const char *uuid) if (has_uuid_opts <= 0) NOT_SUPPORTED (-1, "btrfs filesystems' UUID cannot be changed"); - r = commandr (NULL, &err, str_btrfstune, "-f", "-U", uuid, device, NULL); + r = commandr (NULL, &err, "btrfstune", "-f", "-U", uuid, device, NULL); if (r == -1) { reply_with_error ("%s: %s", device, err); @@ -907,7 +900,7 @@ btrfs_set_uuid_random (const char *device) if (has_uuid_opts <= 0) NOT_SUPPORTED (-1, "btrfs filesystems' UUID cannot be changed"); - r = commandr (NULL, &err, str_btrfstune, "-f", "-u", device, NULL); + r = commandr (NULL, &err, "btrfstune", "-f", "-u", device, NULL); if (r == -1) { reply_with_error ("%s: %s", device, err); return -1; @@ -927,7 +920,7 @@ do_btrfs_fsck (const char *device, int64_t superblock, int repair) const char *argv[MAX_ARGS]; char super_s[64]; - ADD_ARG (argv, i, str_btrfsck); + ADD_ARG (argv, i, "btrfsck"); /* Optional arguments. */ if (optargs_bitmask & GUESTFS_BTRFS_FSCK_SUPERBLOCK_BITMASK) { @@ -1025,7 +1018,7 @@ do_btrfs_subvolume_show (const char *subvolume) return NULL; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "subvolume"); ADD_ARG (argv, i, "show"); ADD_ARG (argv, i, subvolume_buf); @@ -1164,7 +1157,7 @@ do_btrfs_quota_enable (const mountable_t *fs, int enable) if (fs_buf == NULL) goto error; - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "quota"); if (enable) ADD_ARG (argv, i, "enable"); @@ -1199,7 +1192,7 @@ do_btrfs_quota_rescan (const mountable_t *fs) if (fs_buf == NULL) goto error; - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "quota"); ADD_ARG (argv, i, "rescan"); ADD_ARG (argv, i, fs_buf); @@ -1234,7 +1227,7 @@ do_btrfs_qgroup_limit (const char *subvolume, int64_t size) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "qgroup"); ADD_ARG (argv, i, "limit"); snprintf (size_str, sizeof size_str, "%" PRIi64, size); @@ -1267,7 +1260,7 @@ do_btrfs_qgroup_create (const char *qgroupid, const char *subvolume) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "qgroup"); ADD_ARG (argv, i, "create"); ADD_ARG (argv, i, qgroupid); @@ -1299,7 +1292,7 @@ do_btrfs_qgroup_destroy (const char *qgroupid, const char *subvolume) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "qgroup"); ADD_ARG (argv, i, "destroy"); ADD_ARG (argv, i, qgroupid); @@ -1332,7 +1325,7 @@ test_btrfs_qgroup_show_raw_opt (void) CLEANUP_FREE char *err = NULL; CLEANUP_FREE char *out = NULL; - int r = commandr (&out, &err, str_btrfs, "qgroup", "show", "--help", NULL); + int r = commandr (&out, &err, "btrfs", "qgroup", "show", "--help", NULL); if (r == -1) { reply_with_error ("btrfs qgroup show --help: %s", err); @@ -1366,7 +1359,7 @@ do_btrfs_qgroup_show (const char *path) return NULL; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "qgroup"); ADD_ARG (argv, i, "show"); if (has_raw_opt > 0) @@ -1449,7 +1442,7 @@ do_btrfs_qgroup_assign (const char *src, const char *dst, const char *path) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "qgroup"); ADD_ARG (argv, i, "assign"); ADD_ARG (argv, i, src); @@ -1482,7 +1475,7 @@ do_btrfs_qgroup_remove (const char *src, const char *dst, const char *path) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "qgroup"); ADD_ARG (argv, i, "remove"); ADD_ARG (argv, i, src); @@ -1515,7 +1508,7 @@ do_btrfs_scrub_start (const char *path) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "scrub"); ADD_ARG (argv, i, "start"); ADD_ARG (argv, i, path_buf); @@ -1546,7 +1539,7 @@ do_btrfs_scrub_cancel (const char *path) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "scrub"); ADD_ARG (argv, i, "cancel"); ADD_ARG (argv, i, path_buf); @@ -1577,7 +1570,7 @@ do_btrfs_scrub_resume (const char *path) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "scrub"); ADD_ARG (argv, i, "resume"); ADD_ARG (argv, i, path_buf); @@ -1608,7 +1601,7 @@ do_btrfs_balance_pause (const char *path) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "balance"); ADD_ARG (argv, i, "pause"); ADD_ARG (argv, i, path_buf); @@ -1639,7 +1632,7 @@ do_btrfs_balance_cancel (const char *path) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "balance"); ADD_ARG (argv, i, "cancel"); ADD_ARG (argv, i, path_buf); @@ -1670,7 +1663,7 @@ do_btrfs_balance_resume (const char *path) return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "balance"); ADD_ARG (argv, i, "resume"); ADD_ARG (argv, i, path_buf); @@ -1702,7 +1695,7 @@ do_btrfs_filesystem_defragment (const char *path, int flush, const char *compres return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "filesystem"); ADD_ARG (argv, i, "defragment"); ADD_ARG (argv, i, "-r"); @@ -1742,7 +1735,7 @@ do_btrfs_rescue_chunk_recover (const char *device) CLEANUP_FREE char *err = NULL; int r; - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "rescue"); ADD_ARG (argv, i, "chunk-recover"); ADD_ARG (argv, i, "-y"); @@ -1767,7 +1760,7 @@ do_btrfs_rescue_super_recover (const char *device) CLEANUP_FREE char *err = NULL; int r; - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "rescue"); ADD_ARG (argv, i, "super-recover"); ADD_ARG (argv, i, "-y"); @@ -1805,7 +1798,7 @@ do_btrfs_balance_status (const char *path) return NULL; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "balance"); ADD_ARG (argv, i, "status"); ADD_ARG (argv, i, path_buf); @@ -1918,7 +1911,7 @@ do_btrfs_scrub_status (const char *path) return NULL; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "scrub"); ADD_ARG (argv, i, "status"); ADD_ARG (argv, i, "-R"); @@ -2052,7 +2045,7 @@ do_btrfstune_seeding (const char *device, int svalue) int r; const char *s_value = svalue ? "1" : "0"; - ADD_ARG (argv, i, str_btrfstune); + ADD_ARG (argv, i, "btrfstune"); ADD_ARG (argv, i, "-S"); ADD_ARG (argv, i, s_value); if (svalue == 0) @@ -2078,7 +2071,7 @@ do_btrfstune_enable_extended_inode_refs (const char *device) CLEANUP_FREE char *err = NULL; int r; - ADD_ARG (argv, i, str_btrfstune); + ADD_ARG (argv, i, "btrfstune"); ADD_ARG (argv, i, "-r"); ADD_ARG (argv, i, device); ADD_ARG (argv, i, NULL); @@ -2101,7 +2094,7 @@ do_btrfstune_enable_skinny_metadata_extent_refs (const char *device) CLEANUP_FREE char *err = NULL; int r; - ADD_ARG (argv, i, str_btrfstune); + ADD_ARG (argv, i, "btrfstune"); ADD_ARG (argv, i, "-x"); ADD_ARG (argv, i, device); ADD_ARG (argv, i, NULL); @@ -2137,7 +2130,7 @@ do_btrfs_image (char *const *sources, const char *image, return -1; } - ADD_ARG (argv, i, str_btrfsimage); + ADD_ARG (argv, i, "btrfs-image"); if ((optargs_bitmask & GUESTFS_BTRFS_IMAGE_COMPRESSLEVEL_BITMASK) && compresslevel >= 0) { @@ -2182,7 +2175,7 @@ do_btrfs_replace (const char *srcdev, const char *targetdev, return -1; } - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "replace"); ADD_ARG (argv, i, "start"); ADD_ARG (argv, i, "-B"); @@ -2213,7 +2206,7 @@ do_btrfs_filesystem_show (const char *device) CLEANUP_FREE_STRING_LIST char **lines = NULL; int r; - ADD_ARG (argv, i, str_btrfs); + ADD_ARG (argv, i, "btrfs"); ADD_ARG (argv, i, "filesystem"); ADD_ARG (argv, i, "show"); ADD_ARG (argv, i, device); @@ -2305,7 +2298,7 @@ test_btrfs_min_dev_size (void) if (result != -1) return result; - r = commandr (&out, &err, str_btrfs, "--help", NULL); + r = commandr (&out, &err, "btrfs", "--help", NULL); if (r == -1) { reply_with_error ("btrfs: %s", err); @@ -2340,7 +2333,7 @@ btrfs_minimum_size (const char *path) return -1; } - r = command (&out, &err, str_btrfs, "inspect-internal", + r = command (&out, &err, "btrfs", "inspect-internal", "min-dev-size", buf, NULL); if (r == -1) { diff --git a/daemon/checksum.c b/daemon/checksum.c index da47a0931..088b04165 100644 --- a/daemon/checksum.c +++ b/daemon/checksum.c @@ -29,33 +29,23 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_find, find); -GUESTFSD_EXT_CMD(str_xargs, xargs); -GUESTFSD_EXT_CMD(str_cksum, cksum); -GUESTFSD_EXT_CMD(str_md5sum, md5sum); -GUESTFSD_EXT_CMD(str_sha1sum, sha1sum); -GUESTFSD_EXT_CMD(str_sha224sum, sha224sum); -GUESTFSD_EXT_CMD(str_sha256sum, sha256sum); -GUESTFSD_EXT_CMD(str_sha384sum, sha384sum); -GUESTFSD_EXT_CMD(str_sha512sum, sha512sum); - static const char * program_of_csum (const char *csumtype) { if (STRCASEEQ (csumtype, "crc")) - return str_cksum; + return "cksum"; else if (STRCASEEQ (csumtype, "md5")) - return str_md5sum; + return "md5sum"; else if (STRCASEEQ (csumtype, "sha1")) - return str_sha1sum; + return "sha1sum"; else if (STRCASEEQ (csumtype, "sha224")) - return str_sha224sum; + return "sha224sum"; else if (STRCASEEQ (csumtype, "sha256")) - return str_sha256sum; + return "sha256sum"; else if (STRCASEEQ (csumtype, "sha384")) - return str_sha384sum; + return "sha384sum"; else if (STRCASEEQ (csumtype, "sha512")) - return str_sha512sum; + return "sha512sum"; else { reply_with_error ("unknown checksum type, expecting crc|md5|sha1|sha224|sha256|sha384|sha512"); return NULL; @@ -166,7 +156,7 @@ do_checksums_out (const char *csumtype, const char *dir) cmd = NULL; if (asprintf_nowarn (&cmd, "cd %Q && %s -type f -print0 | %s -0 %s", - sysrootdir, str_find, str_xargs, program) == -1) { + sysrootdir, "find", "xargs", program) == -1) { reply_with_perror ("asprintf"); return -1; } diff --git a/daemon/cmp.c b/daemon/cmp.c index 61506b6c1..e3c0e3e1a 100644 --- a/daemon/cmp.c +++ b/daemon/cmp.c @@ -27,8 +27,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_cmp, cmp); - int do_equal (const char *file1, const char *file2) { @@ -48,7 +46,7 @@ do_equal (const char *file1, const char *file2) return -1; } - r = commandr (NULL, &err, str_cmp, "-s", file1buf, file2buf, NULL); + r = commandr (NULL, &err, "cmp", "-s", file1buf, file2buf, NULL); if (r == -1 || r > 1) { reply_with_error ("%s", err); return -1; diff --git a/daemon/compress.c b/daemon/compress.c index 36f4e66f7..75eaae0c7 100644 --- a/daemon/compress.c +++ b/daemon/compress.c @@ -27,12 +27,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_compress, compress); -GUESTFSD_EXT_CMD(str_gzip, gzip); -GUESTFSD_EXT_CMD(str_bzip2, bzip2); -GUESTFSD_EXT_CMD(str_xz, xz); -GUESTFSD_EXT_CMD(str_lzop, lzop); - /* Has one FileOut parameter. */ static int do_compressX_out (const char *file, const char *filter, int is_device) @@ -126,15 +120,15 @@ get_filter (const char *ctype, int level, char *ret, size_t n) reply_with_error ("compress: cannot use optional level parameter with this compression type"); return -1; } - snprintf (ret, n, "%s -c", str_compress); + snprintf (ret, n, "%s -c", "compress"); return 0; } else if (STREQ (ctype, "gzip")) { CHECK_SUPPORTED ("gzip"); if (level == -1) - snprintf (ret, n, "%s -c", str_gzip); + snprintf (ret, n, "%s -c", "gzip"); else if (level >= 1 && level <= 9) - snprintf (ret, n, "%s -c -%d", str_gzip, level); + snprintf (ret, n, "%s -c -%d", "gzip", level); else { reply_with_error ("gzip: incorrect value for level parameter"); return -1; @@ -144,9 +138,9 @@ get_filter (const char *ctype, int level, char *ret, size_t n) else if (STREQ (ctype, "bzip2")) { CHECK_SUPPORTED ("bzip2"); if (level == -1) - snprintf (ret, n, "%s -c", str_bzip2); + snprintf (ret, n, "%s -c", "bzip2"); else if (level >= 1 && level <= 9) - snprintf (ret, n, "%s -c -%d", str_bzip2, level); + snprintf (ret, n, "%s -c -%d", "bzip2", level); else { reply_with_error ("bzip2: incorrect value for level parameter"); return -1; @@ -156,9 +150,9 @@ get_filter (const char *ctype, int level, char *ret, size_t n) else if (STREQ (ctype, "xz")) { CHECK_SUPPORTED ("xz"); if (level == -1) - snprintf (ret, n, "%s -c", str_xz); + snprintf (ret, n, "%s -c", "xz"); else if (level >= 0 && level <= 9) - snprintf (ret, n, "%s -c -%d", str_xz, level); + snprintf (ret, n, "%s -c -%d", "xz", level); else { reply_with_error ("xz: incorrect value for level parameter"); return -1; @@ -168,9 +162,9 @@ get_filter (const char *ctype, int level, char *ret, size_t n) else if (STREQ (ctype, "lzop")) { CHECK_SUPPORTED ("lzop"); if (level == -1) - snprintf (ret, n, "%s -c", str_lzop); + snprintf (ret, n, "%s -c", "lzop"); else if (level >= 1 && level <= 9) - snprintf (ret, n, "%s -c -%d", str_lzop, level); + snprintf (ret, n, "%s -c -%d", "lzop", level); else { reply_with_error ("lzop: incorrect value for level parameter"); return -1; diff --git a/daemon/cpio.c b/daemon/cpio.c index d1459b15d..09491ac9c 100644 --- a/daemon/cpio.c +++ b/daemon/cpio.c @@ -33,8 +33,6 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_cpio, cpio); - /* Has one FileOut parameter. */ /* Takes optional arguments, consult optargs_bitmask. */ int @@ -82,7 +80,7 @@ do_cpio_out (const char *dir, const char *format) if (asprintf_nowarn (&cmd, "cd %Q && find -print0 | %s -0 -o -H %s --quiet", buf, - str_cpio, + "cpio", format) == -1) { reply_with_perror ("asprintf"); return -1; diff --git a/daemon/cpmv.c b/daemon/cpmv.c index 841ac95ce..3eba596b1 100644 --- a/daemon/cpmv.c +++ b/daemon/cpmv.c @@ -25,33 +25,30 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_cp, cp); -GUESTFSD_EXT_CMD(str_mv, mv); - static int cpmv_cmd (const char *cmd, const char *flags, const char *src, const char *dest); int do_cp (const char *src, const char *dest) { - return cpmv_cmd (str_cp, NULL, src, dest); + return cpmv_cmd ("cp", NULL, src, dest); } int do_cp_a (const char *src, const char *dest) { - return cpmv_cmd (str_cp, "-a", src, dest); + return cpmv_cmd ("cp", "-a", src, dest); } int do_cp_r (const char *src, const char *dest) { - return cpmv_cmd (str_cp, "-rP", src, dest); + return cpmv_cmd ("cp", "-rP", src, dest); } int do_mv (const char *src, const char *dest) { - return cpmv_cmd (str_mv, NULL, src, dest); + return cpmv_cmd ("mv", NULL, src, dest); } static int diff --git a/daemon/daemon.h b/daemon/daemon.h index 50ce41306..18954b03a 100644 --- a/daemon/daemon.h +++ b/daemon/daemon.h @@ -397,7 +397,4 @@ extern int upload_to_fd (int fd, const char *filename); } \ } while (0) -#define __external_command __attribute__((__section__(".guestfsd_ext_cmds"))) -#define GUESTFSD_EXT_CMD(___ext_cmd_var, ___ext_cmd_str) static const char ___ext_cmd_var[] __external_command = #___ext_cmd_str - #endif /* GUESTFSD_DAEMON_H */ diff --git a/daemon/dd.c b/daemon/dd.c index d0390d8b9..15f3f7a6c 100644 --- a/daemon/dd.c +++ b/daemon/dd.c @@ -27,8 +27,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_dd, dd); - int do_dd (const char *src, const char *dest) { @@ -59,7 +57,7 @@ do_dd (const char *src, const char *dest) return -1; } - r = command (NULL, &err, str_dd, "bs=1024K", if_arg, of_arg, NULL); + r = command (NULL, &err, "dd", "bs=1024K", if_arg, of_arg, NULL); if (r == -1) { reply_with_error ("%s: %s: %s", src, dest, err); return -1; diff --git a/daemon/debug.c b/daemon/debug.c index e2d43a7ca..9e9100c4f 100644 --- a/daemon/debug.c +++ b/daemon/debug.c @@ -33,16 +33,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_printenv, printenv); -GUESTFSD_EXT_CMD(str_ldd, ldd); -GUESTFSD_EXT_CMD(str_ls, ls); -GUESTFSD_EXT_CMD(str_find, find); -GUESTFSD_EXT_CMD(str_xargs, xargs); -GUESTFSD_EXT_CMD(str_file, file); -GUESTFSD_EXT_CMD(str_grep, grep); -GUESTFSD_EXT_CMD(str_gawk, gawk); -GUESTFSD_EXT_CMD(str_sh, sh); - /* This command exposes debugging information, internals and * status. There is no comprehensive documentation for this * command. You have to look at the source code in this file @@ -301,7 +291,7 @@ debug_env (const char *subcmd, size_t argc, char *const *const argv) char *out; CLEANUP_FREE char *err = NULL; - r = command (&out, &err, str_printenv, NULL); + r = command (&out, &err, "printenv", NULL); if (r == -1) { reply_with_error ("printenv: %s", err); free (out); @@ -380,16 +370,13 @@ debug_binaries (const char *subcmd, size_t argc, char *const *const argv) int r; char *out; CLEANUP_FREE char *err = NULL; - char cmd[256]; + const char *cmd + "find / -xdev -type f -executable " + "| xargs file -i " + "| grep application/x-executable " + "| gawk -F: '{print $1}'"; - snprintf (cmd, sizeof (cmd), - "%s / -xdev -type f -executable " - "| %s %s -i " - "| %s application/x-executable " - "| %s -F: '{print $1}'", - str_find, str_xargs, str_file, str_grep, str_gawk); - - r = command (&out, &err, str_sh, "-c", cmd, NULL); + r = command (&out, &err, "sh", "-c", cmd, NULL); if (r == -1) { reply_with_error ("find: %s", err); free (out); @@ -420,7 +407,7 @@ debug_ldd (const char *subcmd, size_t argc, char *const *const argv) * Also 'ldd' randomly sends messages to stderr and errors to stdout * depending on the phase of the moon. */ - r = command (&out, &err, str_ldd, "-r", argv[0], NULL); + r = command (&out, &err, "ldd", "-r", argv[0], NULL); if (r == -1) { reply_with_error ("ldd: %s: %s", argv[0], err); free (out); @@ -457,7 +444,7 @@ debug_ls (const char *subcmd, size_t argc, char *const *const argv) return NULL; } - cargv[0] = str_ls; + cargv[0] = "ls"; cargv[1] = "-a"; for (i = 0; i < len; ++i) cargv[2+i] = argv[i]; @@ -490,7 +477,7 @@ debug_ll (const char *subcmd, size_t argc, char *const *const argv) return NULL; } - cargv[0] = str_ls; + cargv[0] = "ls"; cargv[1] = "-la"; for (i = 0; i < len; ++i) cargv[2+i] = argv[i]; diff --git a/daemon/df.c b/daemon/df.c index 80b765f30..1b68a7b55 100644 --- a/daemon/df.c +++ b/daemon/df.c @@ -27,8 +27,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_df, df); - char * do_df (void) { @@ -38,7 +36,7 @@ do_df (void) NEED_ROOT (0, return NULL); - r = command (&out, &err, str_df, NULL); + r = command (&out, &err, "df", NULL); if (r == -1) { reply_with_error ("%s", err); free (out); @@ -57,7 +55,7 @@ do_df_h (void) NEED_ROOT (0, return NULL); - r = command (&out, &err, str_df, "-h", NULL); + r = command (&out, &err, "df", "-h", NULL); if (r == -1) { reply_with_error ("%s", err); free (out); diff --git a/daemon/dir.c b/daemon/dir.c index 07dc68f17..b79aca1e5 100644 --- a/daemon/dir.c +++ b/daemon/dir.c @@ -29,8 +29,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_rm, rm); - int do_rmdir (const char *path) { @@ -69,7 +67,7 @@ do_rm_rf (const char *path) return -1; } - r = command (NULL, &err, str_rm, "-rf", buf, NULL); + r = command (NULL, &err, "rm", "-rf", buf, NULL); /* rm -rf is never supposed to fail. I/O errors perhaps? */ if (r == -1) { reply_with_error ("%s: %s", path, err); diff --git a/daemon/dmesg.c b/daemon/dmesg.c index 5e16861f2..8f2f33ee0 100644 --- a/daemon/dmesg.c +++ b/daemon/dmesg.c @@ -27,8 +27,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_dmesg, dmesg); - char * do_dmesg (void) { @@ -36,7 +34,7 @@ do_dmesg (void) CLEANUP_FREE char *err = NULL; int r; - r = command (&out, &err, str_dmesg, NULL); + r = command (&out, &err, "dmesg", NULL); if (r == -1) { reply_with_error ("%s", err); free (out); diff --git a/daemon/du.c b/daemon/du.c index 5bb764075..7e6e329a3 100644 --- a/daemon/du.c +++ b/daemon/du.c @@ -28,8 +28,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_du, du); - int64_t do_du (const char *path) { @@ -46,7 +44,7 @@ do_du (const char *path) pulse_mode_start (); - r = command (&out, &err, str_du, "-s", buf, NULL); + r = command (&out, &err, "du", "-s", buf, NULL); if (r == -1) { pulse_mode_cancel (); reply_with_error ("%s: %s", path, err); diff --git a/daemon/ext2.c b/daemon/ext2.c index d694b236e..0c776b6d1 100644 --- a/daemon/ext2.c +++ b/daemon/ext2.c @@ -33,14 +33,6 @@ #define MAX_ARGS 128 -GUESTFSD_EXT_CMD(str_tune2fs, tune2fs); -GUESTFSD_EXT_CMD(str_e2fsck, e2fsck); -GUESTFSD_EXT_CMD(str_resize2fs, resize2fs); -GUESTFSD_EXT_CMD(str_mke2fs, mke2fs); -GUESTFSD_EXT_CMD(str_lsattr, lsattr); -GUESTFSD_EXT_CMD(str_chattr, chattr); -GUESTFSD_EXT_CMD(str_e2label, e2label); - /* https://bugzilla.redhat.com/show_bug.cgi?id=978302#c1 */ int fstype_is_extfs (const char *fstype) @@ -57,7 +49,7 @@ do_tune2fs_l (const char *device) char *p, *pend, *colon; CLEANUP_FREE_STRINGSBUF DECLARE_STRINGSBUF (ret); - r = command (&out, &err, str_tune2fs, "-l", device, NULL); + r = command (&out, &err, "tune2fs", "-l", device, NULL); if (r == -1) { reply_with_error ("%s", err); return NULL; @@ -136,7 +128,7 @@ do_set_e2label (const char *device, const char *label) return -1; } - r = command (NULL, &err, str_e2label, device, label, NULL); + r = command (NULL, &err, "e2label", device, label, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -162,7 +154,7 @@ do_set_e2uuid (const char *device, const char *uuid) int r; CLEANUP_FREE char *err = NULL; - r = command (NULL, &err, str_tune2fs, "-U", uuid, device, NULL); + r = command (NULL, &err, "tune2fs", "-U", uuid, device, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -215,7 +207,7 @@ do_resize2fs (const char *device) if (if_not_mounted_run_e2fsck (device) == -1) return -1; - r = command (NULL, &err, str_resize2fs, device, NULL); + r = command (NULL, &err, "resize2fs", device, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -247,7 +239,7 @@ do_resize2fs_size (const char *device, int64_t size) char buf[32]; snprintf (buf, sizeof buf, "%" PRIi64 "K", size); - r = command (NULL, &err, str_resize2fs, device, buf, NULL); + r = command (NULL, &err, "resize2fs", device, buf, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -265,7 +257,7 @@ do_resize2fs_M (const char *device) if (if_not_mounted_run_e2fsck (device) == -1) return -1; - r = command (NULL, &err, str_resize2fs, "-M", device, NULL); + r = command (NULL, &err, "resize2fs", "-M", device, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -311,7 +303,7 @@ ext_minimum_size (const char *device) long block_size; const char *pattern = "Estimated minimum size of the filesystem: "; - r = command (&out, &err, str_resize2fs, "-P", "-f", device, NULL); + r = command (&out, &err, "resize2fs", "-P", "-f", device, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -376,7 +368,7 @@ do_e2fsck (const char *device, return -1; } - ADD_ARG (argv, i, str_e2fsck); + ADD_ARG (argv, i, "e2fsck"); ADD_ARG (argv, i, "-f"); if (correct) @@ -425,7 +417,7 @@ do_mke2journal (int blocksize, const char *device) wipe_device_before_mkfs (device); r = command (NULL, &err, - str_mke2fs, "-F", "-O", "journal_dev", "-b", blocksize_s, + "mke2fs", "-F", "-O", "journal_dev", "-b", blocksize_s, device, NULL); if (r == -1) { reply_with_error ("%s", err); @@ -453,7 +445,7 @@ do_mke2journal_L (int blocksize, const char *label, const char *device) wipe_device_before_mkfs (device); r = command (NULL, &err, - str_mke2fs, "-F", "-O", "journal_dev", "-b", blocksize_s, + "mke2fs", "-F", "-O", "journal_dev", "-b", blocksize_s, "-L", label, device, NULL); if (r == -1) { @@ -476,7 +468,7 @@ do_mke2journal_U (int blocksize, const char *uuid, const char *device) wipe_device_before_mkfs (device); r = command (NULL, &err, - str_mke2fs, "-F", "-O", "journal_dev", "-b", blocksize_s, + "mke2fs", "-F", "-O", "journal_dev", "-b", blocksize_s, "-U", uuid, device, NULL); if (r == -1) { @@ -511,7 +503,7 @@ do_mke2fs_J (const char *fstype, int blocksize, const char *device, wipe_device_before_mkfs (device); r = command (NULL, &err, - str_mke2fs, "-F", "-t", fstype, "-J", jdev, "-b", blocksize_s, + "mke2fs", "-F", "-t", fstype, "-J", jdev, "-b", blocksize_s, device, NULL); if (r == -1) { reply_with_error ("%s", err); @@ -551,7 +543,7 @@ do_mke2fs_JL (const char *fstype, int blocksize, const char *device, wipe_device_before_mkfs (device); r = command (NULL, &err, - str_mke2fs, "-F", "-t", fstype, "-J", jdev, "-b", blocksize_s, + "mke2fs", "-F", "-t", fstype, "-J", jdev, "-b", blocksize_s, device, NULL); if (r == -1) { reply_with_error ("%s", err); @@ -585,7 +577,7 @@ do_mke2fs_JU (const char *fstype, int blocksize, const char *device, wipe_device_before_mkfs (device); r = command (NULL, &err, - str_mke2fs, "-F", "-t", fstype, "-J", jdev, "-b", blocksize_s, + "mke2fs", "-F", "-t", fstype, "-J", jdev, "-b", blocksize_s, device, NULL); if (r == -1) { reply_with_error ("%s", err); @@ -621,7 +613,7 @@ do_tune2fs (const char *device, /* only required parameter */ char reservedblockscount_s[64]; char user_s[64]; - ADD_ARG (argv, i, str_tune2fs); + ADD_ARG (argv, i, "tune2fs"); if (optargs_bitmask & GUESTFS_TUNE2FS_FORCE_BITMASK) { if (force) @@ -759,7 +751,7 @@ do_get_e2attrs (const char *filename) return NULL; } - r = command (&out, &err, str_lsattr, "-d", "--", buf, NULL); + r = command (&out, &err, "lsattr", "-d", "--", buf, NULL); if (r == -1) { reply_with_error ("%s: %s: %s", "lsattr", filename, err); free (out); @@ -850,7 +842,7 @@ do_set_e2attrs (const char *filename, const char *attrs, int clear) return -1; } - r = command (NULL, &err, str_chattr, attr_arg, "--", buf, NULL); + r = command (NULL, &err, "chattr", attr_arg, "--", buf, NULL); if (r == -1) { reply_with_error ("%s: %s: %s", "chattr", filename, err); return -1; @@ -872,7 +864,7 @@ do_get_e2generation (const char *filename) return -1; } - r = command (&out, &err, str_lsattr, "-dv", "--", buf, NULL); + r = command (&out, &err, "lsattr", "-dv", "--", buf, NULL); if (r == -1) { reply_with_error ("%s: %s: %s", "lsattr", filename, err); return -1; @@ -908,7 +900,7 @@ do_set_e2generation (const char *filename, int64_t generation) snprintf (generation_str, sizeof generation_str, "%" PRIu64, (uint64_t) generation); - r = command (NULL, &err, str_chattr, "-v", generation_str, "--", buf, NULL); + r = command (NULL, &err, "chattr", "-v", generation_str, "--", buf, NULL); if (r == -1) { reply_with_error ("%s: %s: %s", "chattr", filename, err); return -1; @@ -979,7 +971,7 @@ do_mke2fs (const char *device, /* 0 */ char maxonlineresize_s[74]; size_t i = 0; - ADD_ARG (argv, i, str_mke2fs); + ADD_ARG (argv, i, "mke2fs"); if (optargs_bitmask & GUESTFS_MKE2FS_BLOCKSIZE_BITMASK) { if (blocksize < 0) { diff --git a/daemon/file.c b/daemon/file.c index 84874dc6f..da4218c45 100644 --- a/daemon/file.c +++ b/daemon/file.c @@ -30,10 +30,6 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_file, file); -GUESTFSD_EXT_CMD(str_zcat, zcat); -GUESTFSD_EXT_CMD(str_bzcat, bzcat); - int do_touch (const char *path) { @@ -505,7 +501,7 @@ do_file (const char *path) char *out; CLEANUP_FREE char *err = NULL; - int r = command (&out, &err, str_file, flags, path, NULL); + int r = command (&out, &err, "file", flags, path, NULL); if (r == -1) { free (out); @@ -539,9 +535,9 @@ do_zfile (const char *method, const char *path) char line[256]; if (STREQ (method, "gzip") || STREQ (method, "compress")) - zcat = str_zcat; + zcat = "zcat"; else if (STREQ (method, "bzip2")) - zcat = str_bzcat; + zcat = "bzcat"; else { reply_with_error ("unknown method"); return NULL; diff --git a/daemon/find.c b/daemon/find.c index 3a0cf5d73..4ef2774aa 100644 --- a/daemon/find.c +++ b/daemon/find.c @@ -30,8 +30,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_find, find); - static int input_to_nul (FILE *fp, char *buf, size_t maxlen) { @@ -87,7 +85,7 @@ do_find0 (const char *dir) sysrootdirlen = strlen (sysrootdir); - if (asprintf_nowarn (&cmd, "%s %Q -print0", str_find, sysrootdir) == -1) { + if (asprintf_nowarn (&cmd, "find %Q -print0", sysrootdir) == -1) { reply_with_perror ("asprintf"); return -1; } diff --git a/daemon/findfs.c b/daemon/findfs.c index f44137038..f44a60088 100644 --- a/daemon/findfs.c +++ b/daemon/findfs.c @@ -26,8 +26,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_findfs, findfs); - static char * findfs (const char *tag, const char *label_or_uuid) { @@ -50,7 +48,7 @@ findfs (const char *tag, const char *label_or_uuid) return NULL; } - r = command (&out, &err, str_findfs, arg, NULL); + r = command (&out, &err, "findfs", arg, NULL); if (r == -1) { reply_with_error ("%s", err); free (out); diff --git a/daemon/fsck.c b/daemon/fsck.c index 540f779d3..b1b98a31c 100644 --- a/daemon/fsck.c +++ b/daemon/fsck.c @@ -26,15 +26,13 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_fsck, fsck); - int do_fsck (const char *fstype, const char *device) { CLEANUP_FREE char *err = NULL; int r; - r = commandr (NULL, &err, str_fsck, "-a", "-t", fstype, device, NULL); + r = commandr (NULL, &err, "fsck", "-a", "-t", fstype, device, NULL); if (r == -1) { reply_with_error ("%s: %s", device, err); return -1; diff --git a/daemon/fstrim.c b/daemon/fstrim.c index 527acfd48..f68690420 100644 --- a/daemon/fstrim.c +++ b/daemon/fstrim.c @@ -30,12 +30,10 @@ #define MAX_ARGS 64 -GUESTFSD_EXT_CMD(str_fstrim, fstrim); - int optgroup_fstrim_available (void) { - return prog_exists (str_fstrim); + return prog_exists ("fstrim"); } /* Takes optional arguments, consult optargs_bitmask. */ @@ -55,7 +53,7 @@ do_fstrim (const char *path, */ sync_disks (); - ADD_ARG (argv, i, str_fstrim); + ADD_ARG (argv, i, "fstrim"); if ((optargs_bitmask & GUESTFS_FSTRIM_OFFSET_BITMASK)) { if (offset < 0) { diff --git a/daemon/grub.c b/daemon/grub.c index 9bcf373bb..a4953d2bc 100644 --- a/daemon/grub.c +++ b/daemon/grub.c @@ -26,12 +26,10 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_grub_install, grub-install); - int optgroup_grub_available (void) { - return prog_exists (str_grub_install); + return prog_exists ("grub-install"); } int @@ -46,7 +44,7 @@ do_grub_install (const char *root, const char *device) } r = command (verbose ? &out : NULL, &err, - str_grub_install, buf, device, NULL); + "grub-install", buf, device, NULL); if (r == -1) { if (verbose) diff --git a/daemon/guestfsd.c b/daemon/guestfsd.c index b3f40628b..bcded501a 100644 --- a/daemon/guestfsd.c +++ b/daemon/guestfsd.c @@ -63,9 +63,6 @@ #include "daemon.h" -GUESTFSD_EXT_CMD(str_udevadm, udevadm); -GUESTFSD_EXT_CMD(str_uuidgen, uuidgen); - #ifndef MAX # define MAX(a,b) ((a)>(b)?(a):(b)) #endif @@ -1095,7 +1092,7 @@ udev_settle_file (const char *file) size_t i = 0; int r; - ADD_ARG (argv, i, str_udevadm); + ADD_ARG (argv, i, "udevadm"); if (verbose) ADD_ARG (argv, i, "--debug"); @@ -1124,7 +1121,7 @@ get_random_uuid (void) char *out; CLEANUP_FREE char *err = NULL; - r = command (&out, &err, str_uuidgen, NULL); + r = command (&out, &err, "uuidgen", NULL); if (r == -1) { reply_with_error ("%s", err); return NULL; diff --git a/daemon/hotplug.c b/daemon/hotplug.c index 234f51ed2..193a5ffb9 100644 --- a/daemon/hotplug.c +++ b/daemon/hotplug.c @@ -77,8 +77,6 @@ do_internal_hot_add_drive (const char *label) return -1; } -GUESTFSD_EXT_CMD(str_fuser, fuser); - /* This function is called before a drive is hot-unplugged. */ int do_internal_hot_remove_drive_precheck (const char *label) @@ -96,7 +94,7 @@ do_internal_hot_remove_drive_precheck (const char *label) return -1; } - r = commandr (&out, &err, str_fuser, "-v", "-m", path, NULL); + r = commandr (&out, &err, "fuser", "-v", "-m", path, NULL); if (r == -1) { reply_with_error ("fuser: %s: %s", path, err); return -1; diff --git a/daemon/initrd.c b/daemon/initrd.c index 21865debf..eb13cb92d 100644 --- a/daemon/initrd.c +++ b/daemon/initrd.c @@ -31,9 +31,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_zcat, zcat); -GUESTFSD_EXT_CMD(str_cpio, cpio); - char ** do_initrd_list (const char *path) { @@ -46,7 +43,7 @@ do_initrd_list (const char *path) int ret; /* "zcat /sysroot/<path> | cpio --quiet -it", but path must be quoted. */ - if (asprintf_nowarn (&cmd, "%s %R | %s --quiet -it", str_zcat, path, str_cpio) == -1) { + if (asprintf_nowarn (&cmd, "zcat %R | cpio --quiet -it", path) == -1) { reply_with_perror ("asprintf"); return NULL; } diff --git a/daemon/inotify.c b/daemon/inotify.c index b9bfed713..aa2350900 100644 --- a/daemon/inotify.c +++ b/daemon/inotify.c @@ -38,7 +38,6 @@ #include "optgroups.h" #ifdef HAVE_SYS_INOTIFY_H -GUESTFSD_EXT_CMD(str_sort, sort); /* Currently open inotify handle, or -1 if not opened. */ static int inotify_fd = -1; @@ -327,7 +326,7 @@ do_inotify_files (void) return NULL; } - snprintf (cmd, sizeof cmd, "%s -u > %s", str_sort, tempfile); + snprintf (cmd, sizeof cmd, "sort -u > %s", tempfile); fp = popen (cmd, "w"); if (fp == NULL) { diff --git a/daemon/isoinfo.c b/daemon/isoinfo.c index 3e1acf848..e616df82f 100644 --- a/daemon/isoinfo.c +++ b/daemon/isoinfo.c @@ -30,8 +30,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_isoinfo, isoinfo); - static int parse_uint32 (uint32_t *ret, const char *str) { @@ -246,7 +244,7 @@ isoinfo (const char *path) /* --debug is necessary to get additional fields, in particular * the date & time fields. */ - r = command (&out, &err, str_isoinfo, "--debug", "-d", "-i", path, NULL); + r = command (&out, &err, "isoinfo", "--debug", "-d", "-i", path, NULL); if (r == -1) { reply_with_error ("%s", err); return NULL; diff --git a/daemon/labels.c b/daemon/labels.c index aaa3eaf89..aaeb8c905 100644 --- a/daemon/labels.c +++ b/daemon/labels.c @@ -27,15 +27,13 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_dosfslabel, dosfslabel); - static int dosfslabel (const char *device, const char *label) { int r; CLEANUP_FREE char *err = NULL; - r = command (NULL, &err, str_dosfslabel, device, label, NULL); + r = command (NULL, &err, "dosfslabel", device, label, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; diff --git a/daemon/ldm.c b/daemon/ldm.c index 75418e8d3..609a3e1ec 100644 --- a/daemon/ldm.c +++ b/daemon/ldm.c @@ -39,12 +39,10 @@ #pragma GCC diagnostic ignored "-Wnull-dereference" #endif -GUESTFSD_EXT_CMD(str_ldmtool, ldmtool); - int optgroup_ldm_available (void) { - return prog_exists (str_ldmtool); + return prog_exists ("ldmtool"); } static int @@ -134,7 +132,7 @@ do_ldmtool_create_all (void) int r; CLEANUP_FREE char *err = NULL; - r = command (NULL, &err, str_ldmtool, "create", "all", NULL); + r = command (NULL, &err, "ldmtool", "create", "all", NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -148,7 +146,7 @@ do_ldmtool_remove_all (void) int r; CLEANUP_FREE char *err = NULL; - r = command (NULL, &err, str_ldmtool, "remove", "all", NULL); + r = command (NULL, &err, "ldmtool", "remove", "all", NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -327,7 +325,7 @@ do_ldmtool_scan_devices (char * const * devices) return NULL; } - argv[0] = str_ldmtool; + argv[0] = "ldmtool"; argv[1] = "scan"; for (i = 0; i < nr_devices; ++i) argv[2+i] = devices[i]; @@ -349,7 +347,7 @@ do_ldmtool_diskgroup_name (const char *diskgroup) int r; CLEANUP_FREE char *out = NULL, *err = NULL; - r = command (&out, &err, str_ldmtool, "show", "diskgroup", diskgroup, NULL); + r = command (&out, &err, "ldmtool", "show", "diskgroup", diskgroup, NULL); if (r == -1) { reply_with_error ("%s", err); return NULL; @@ -365,7 +363,7 @@ do_ldmtool_diskgroup_volumes (const char *diskgroup) int r; CLEANUP_FREE char *out = NULL, *err = NULL; - r = command (&out, &err, str_ldmtool, "show", "diskgroup", diskgroup, NULL); + r = command (&out, &err, "ldmtool", "show", "diskgroup", diskgroup, NULL); if (r == -1) { reply_with_error ("%s", err); return NULL; @@ -382,7 +380,7 @@ do_ldmtool_diskgroup_disks (const char *diskgroup) int r; CLEANUP_FREE char *out = NULL, *err = NULL; - r = command (&out, &err, str_ldmtool, "show", "diskgroup", diskgroup, NULL); + r = command (&out, &err, "ldmtool", "show", "diskgroup", diskgroup, NULL); if (r == -1) { reply_with_error ("%s", err); return NULL; @@ -399,7 +397,7 @@ do_ldmtool_volume_type (const char *diskgroup, const char *volume) CLEANUP_FREE char *out = NULL, *err = NULL; r = command (&out, &err, - str_ldmtool, "show", "volume", diskgroup, volume, NULL); + "ldmtool", "show", "volume", diskgroup, volume, NULL); if (r == -1) { reply_with_error ("%s", err); return NULL; @@ -416,7 +414,7 @@ do_ldmtool_volume_hint (const char *diskgroup, const char *volume) CLEANUP_FREE char *out = NULL, *err = NULL; r = command (&out, &err, - str_ldmtool, "show", "volume", diskgroup, volume, NULL); + "ldmtool", "show", "volume", diskgroup, volume, NULL); if (r == -1) { reply_with_error ("%s", err); return NULL; @@ -433,7 +431,7 @@ do_ldmtool_volume_partitions (const char *diskgroup, const char *volume) CLEANUP_FREE char *out = NULL, *err = NULL; r = command (&out, &err, - str_ldmtool, "show", "volume", diskgroup, volume, NULL); + "ldmtool", "show", "volume", diskgroup, volume, NULL); if (r == -1) { reply_with_error ("%s", err); return NULL; diff --git a/daemon/link.c b/daemon/link.c index 3ce54fa37..0878fd32b 100644 --- a/daemon/link.c +++ b/daemon/link.c @@ -30,8 +30,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_ln, ln); - char * do_readlink (const char *path) { @@ -140,7 +138,7 @@ _symlink (const char *flag, const char *target, const char *linkname) } r = command (NULL, &err, - str_ln, flag, "--", /* target could begin with '-' */ + "ln", flag, "--", /* target could begin with '-' */ target, buf_linkname, NULL); if (r == -1) { reply_with_error ("ln %s: %s: %s: %s", diff --git a/daemon/ls.c b/daemon/ls.c index 0e2f110f5..23bba5041 100644 --- a/daemon/ls.c +++ b/daemon/ls.c @@ -30,8 +30,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_ls, ls); - /* Has one FileOut parameter. */ int do_ls0 (const char *path) @@ -118,7 +116,7 @@ do_ll (const char *path) return NULL; } - r = command (&out, &err, str_ls, "-la", spath, NULL); + r = command (&out, &err, "ls", "-la", spath, NULL); if (r == -1) { reply_with_error ("%s", err); free (out); @@ -151,7 +149,7 @@ do_llz (const char *path) return NULL; } - r = command (&out, &err, str_ls, "-laZ", spath, NULL); + r = command (&out, &err, "ls", "-laZ", spath, NULL); if (r == -1) { reply_with_error ("%s", err); free (out); diff --git a/daemon/luks.c b/daemon/luks.c index 53bb820d6..5c48a91eb 100644 --- a/daemon/luks.c +++ b/daemon/luks.c @@ -28,12 +28,10 @@ #define MAX_ARGS 64 -GUESTFSD_EXT_CMD(str_cryptsetup, cryptsetup); - int optgroup_luks_available (void) { - return prog_exists (str_cryptsetup); + return prog_exists ("cryptsetup"); } /* Callers must also call remove_temp (tempfile). */ @@ -108,7 +106,7 @@ luks_open (const char *device, const char *key, const char *mapname, const char *argv[MAX_ARGS]; size_t i = 0; - ADD_ARG (argv, i, str_cryptsetup); + ADD_ARG (argv, i, "cryptsetup"); ADD_ARG (argv, i, "-d"); ADD_ARG (argv, i, tempfile); if (readonly) ADD_ARG (argv, i, "--readonly"); @@ -155,7 +153,7 @@ do_luks_close (const char *device) const char *mapname = &device[12]; CLEANUP_FREE char *err = NULL; - int r = command (NULL, &err, str_cryptsetup, "luksClose", mapname, NULL); + int r = command (NULL, &err, "cryptsetup", "luksClose", mapname, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -178,7 +176,7 @@ luks_format (const char *device, const char *key, int keyslot, char keyslot_s[16]; size_t i = 0; - ADD_ARG (argv, i, str_cryptsetup); + ADD_ARG (argv, i, "cryptsetup"); ADD_ARG (argv, i, "-q"); if (cipher) { ADD_ARG (argv, i, "--cipher"); @@ -237,7 +235,7 @@ do_luks_add_key (const char *device, const char *key, const char *newkey, char keyslot_s[16]; size_t i = 0; - ADD_ARG (argv, i, str_cryptsetup); + ADD_ARG (argv, i, "cryptsetup"); ADD_ARG (argv, i, "-q"); ADD_ARG (argv, i, "-d"); ADD_ARG (argv, i, keyfile); @@ -273,7 +271,7 @@ do_luks_kill_slot (const char *device, const char *key, int keyslot) char keyslot_s[16]; size_t i = 0; - ADD_ARG (argv, i, str_cryptsetup); + ADD_ARG (argv, i, "cryptsetup"); ADD_ARG (argv, i, "-q"); ADD_ARG (argv, i, "-d"); ADD_ARG (argv, i, tempfile); diff --git a/daemon/lvm-filter.c b/daemon/lvm-filter.c index 5c9ce1866..7f25a5eff 100644 --- a/daemon/lvm-filter.c +++ b/daemon/lvm-filter.c @@ -36,11 +36,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_lvm, lvm); -GUESTFSD_EXT_CMD(str_cp, cp); -GUESTFSD_EXT_CMD(str_rm, rm); -GUESTFSD_EXT_CMD(str_lvmetad, lvmetad); - /* This runs during daemon start up and creates a complete copy of * /etc/lvm so that we can modify it as we desire. We set * LVM_SYSTEM_DIR to point to the copy. Note that the final directory @@ -79,7 +74,7 @@ copy_lvm (void) error (EXIT_FAILURE, errno, "mkdtemp: %s", lvm_system_dir); /* Copy the entire directory */ - snprintf (cmd, sizeof cmd, "%s -a /etc/lvm/ %s", str_cp, lvm_system_dir); + snprintf (cmd, sizeof cmd, "%s -a /etc/lvm/ %s", "cp", lvm_system_dir); r = system (cmd); if (r == -1) { perror (cmd); @@ -106,13 +101,11 @@ copy_lvm (void) void start_lvmetad (void) { - char cmd[64]; int r; - snprintf (cmd, sizeof cmd, "%s", str_lvmetad); if (verbose) - printf ("%s\n", cmd); - r = system (cmd); + printf ("%s\n", "lvmetad"); + r = system ("lvmetad"); if (r == -1) perror ("system/lvmetad"); else if (!WIFEXITED (r) || WEXITSTATUS (r) != 0) @@ -124,7 +117,7 @@ rm_lvm_system_dir (void) { char cmd[64]; - snprintf (cmd, sizeof cmd, "%s -rf %s", str_rm, lvm_system_dir); + snprintf (cmd, sizeof cmd, "rm -rf %s", lvm_system_dir); ignore_value (system (cmd)); } @@ -232,7 +225,7 @@ static int vgchange (const char *vgchange_flag) { CLEANUP_FREE char *err = NULL; - int r = command (NULL, &err, str_lvm, "vgchange", vgchange_flag, NULL); + int r = command (NULL, &err, "lvm", "vgchange", vgchange_flag, NULL); if (r == -1) { reply_with_error ("vgchange %s: %s", vgchange_flag, err); return -1; @@ -265,7 +258,7 @@ rescan (void) unlink (lvm_cache); CLEANUP_FREE char *err = NULL; - int r = command (NULL, &err, str_lvm, "vgscan", NULL); + int r = command (NULL, &err, "lvm", "vgscan", NULL); if (r == -1) { reply_with_error ("vgscan: %s", err); return -1; diff --git a/daemon/lvm.c b/daemon/lvm.c index 5d12b009f..af2582448 100644 --- a/daemon/lvm.c +++ b/daemon/lvm.c @@ -32,12 +32,10 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_lvm, lvm); - int optgroup_lvm2_available (void) { - return prog_exists (str_lvm); + return prog_exists ("lvm"); } /* LVM actions. Keep an eye on liblvm, although at the time @@ -194,7 +192,7 @@ do_pvs (void) int r; r = command (&out, &err, - str_lvm, "pvs", "-o", "pv_name", "--noheadings", NULL); + "lvm", "pvs", "-o", "pv_name", "--noheadings", NULL); if (r == -1) { reply_with_error ("%s", err); free (out); @@ -212,7 +210,7 @@ do_vgs (void) int r; r = command (&out, &err, - str_lvm, "vgs", "-o", "vg_name", "--noheadings", NULL); + "lvm", "vgs", "-o", "vg_name", "--noheadings", NULL); if (r == -1) { reply_with_error ("%s", err); free (out); @@ -235,7 +233,7 @@ test_lvs_has_S_opt (void) CLEANUP_FREE char *out = NULL; CLEANUP_FREE char *err = NULL; - int r = command (&out, &err, str_lvm, "lvs", "--help", NULL); + int r = command (&out, &err, "lvm", "lvs", "--help", NULL); if (r == -1) { reply_with_error ("lvm lvs --help: %s", err); return -1; @@ -262,7 +260,7 @@ do_lvs (void) if (has_S > 0) { r = command (&out, &err, - str_lvm, "lvs", + "lvm", "lvs", "-o", "vg_name,lv_name", "-S", "lv_role=public && lv_skip_activation!=yes", "--noheadings", @@ -276,7 +274,7 @@ do_lvs (void) return convert_lvm_output (out, "/dev/"); } else { r = command (&out, &err, - str_lvm, "lvs", + "lvm", "lvs", "-o", "lv_attr,vg_name,lv_name", "--noheadings", "--separator", ":", NULL); @@ -319,7 +317,7 @@ do_pvcreate (const char *device) int r; r = command (NULL, &err, - str_lvm, "pvcreate", "--force", device, NULL); + "lvm", "pvcreate", "--force", device, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -343,7 +341,7 @@ do_vgcreate (const char *volgroup, char *const *physvols) reply_with_perror ("malloc"); return -1; } - argv[0] = str_lvm; + argv[0] = "lvm"; argv[1] = "vgcreate"; argv[2] = volgroup; for (i = 3; i < argc+1; ++i) @@ -370,7 +368,7 @@ do_lvcreate (const char *logvol, const char *volgroup, int mbytes) snprintf (size, sizeof size, "%d", mbytes); r = command (NULL, &err, - str_lvm, "lvcreate", + "lvm", "lvcreate", "-L", size, "-n", logvol, volgroup, NULL); if (r == -1) { reply_with_error ("%s", err); @@ -397,7 +395,7 @@ do_lvcreate_free (const char *logvol, const char *volgroup, int percent) snprintf (size, sizeof size, "%d%%FREE", percent); r = command (NULL, &err, - str_lvm, "lvcreate", + "lvm", "lvcreate", "-l", size, "-n", logvol, volgroup, NULL); if (r == -1) { reply_with_error ("%s", err); @@ -430,7 +428,7 @@ do_lvresize (const char *logvol, int mbytes) snprintf (size, sizeof size, "%d", mbytes); r = command (NULL, &err, - str_lvm, "lvresize", + "lvm", "lvresize", "--force", "-L", size, logvol, NULL); if (r == -1) { if (!ignore_same_size_error (err)) { @@ -457,7 +455,7 @@ do_lvresize_free (const char *logvol, int percent) snprintf (size, sizeof size, "+%d%%FREE", percent); r = command (NULL, &err, - str_lvm, "lvresize", "-l", size, logvol, NULL); + "lvm", "lvresize", "-l", size, logvol, NULL); if (r == -1) { if (!ignore_same_size_error (err)) { reply_with_error ("%s", err); @@ -489,10 +487,10 @@ do_lvm_remove_all (void) /* Deactivate the LV first. On Ubuntu, lvremove '-f' option * does not remove active LVs reliably. */ - (void) command (NULL, NULL, str_lvm, "lvchange", "-an", xs[i], NULL); + (void) command (NULL, NULL, "lvm", "lvchange", "-an", xs[i], NULL); udev_settle (); - r = command (NULL, &err, str_lvm, "lvremove", "-f", xs[i], NULL); + r = command (NULL, &err, "lvm", "lvremove", "-f", xs[i], NULL); if (r == -1) { reply_with_error ("lvremove: %s: %s", xs[i], err); return -1; @@ -510,10 +508,10 @@ do_lvm_remove_all (void) CLEANUP_FREE char *err = NULL; /* Deactivate the VG first, see note above. */ - (void) command (NULL, NULL, str_lvm, "vgchange", "-an", xs[i], NULL); + (void) command (NULL, NULL, "lvm", "vgchange", "-an", xs[i], NULL); udev_settle (); - r = command (NULL, &err, str_lvm, "vgremove", "-f", xs[i], NULL); + r = command (NULL, &err, "lvm", "vgremove", "-f", xs[i], NULL); if (r == -1) { reply_with_error ("vgremove: %s: %s", xs[i], err); return -1; @@ -530,7 +528,7 @@ do_lvm_remove_all (void) for (i = 0; xs[i] != NULL; ++i) { CLEANUP_FREE char *err = NULL; - r = command (NULL, &err, str_lvm, "pvremove", "-f", xs[i], NULL); + r = command (NULL, &err, "lvm", "pvremove", "-f", xs[i], NULL); if (r == -1) { reply_with_error ("pvremove: %s: %s", xs[i], err); return -1; @@ -551,7 +549,7 @@ do_lvremove (const char *device) int r; r = command (NULL, &err, - str_lvm, "lvremove", "-f", device, NULL); + "lvm", "lvremove", "-f", device, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -569,7 +567,7 @@ do_vgremove (const char *device) int r; r = command (NULL, &err, - str_lvm, "vgremove", "-f", device, NULL); + "lvm", "vgremove", "-f", device, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -587,7 +585,7 @@ do_pvremove (const char *device) int r; r = command (NULL, &err, - str_lvm, "pvremove", "-ff", device, NULL); + "lvm", "pvremove", "-ff", device, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -605,7 +603,7 @@ do_pvresize (const char *device) int r; r = command (NULL, &err, - str_lvm, "pvresize", device, NULL); + "lvm", "pvresize", device, NULL); if (r == -1) { reply_with_error ("%s: %s", device, err); return -1; @@ -624,7 +622,7 @@ do_pvresize_size (const char *device, int64_t size) snprintf (buf, sizeof buf, "%" PRIi64 "b", size); r = command (NULL, &err, - str_lvm, "pvresize", + "lvm", "pvresize", "--yes", "--setphysicalvolumesize", buf, device, NULL); @@ -650,7 +648,7 @@ do_vg_activate (int activate, char *const *volgroups) return -1; } - argv[0] = str_lvm; + argv[0] = "lvm"; argv[1] = "vgchange"; argv[2] = "-a"; argv[3] = activate ? "y" : "n"; @@ -682,7 +680,7 @@ do_lvrename (const char *logvol, const char *newlogvol) int r; r = command (NULL, &err, - str_lvm, "lvrename", + "lvm", "lvrename", logvol, newlogvol, NULL); if (r == -1) { reply_with_error ("%s -> %s: %s", logvol, newlogvol, err); @@ -701,7 +699,7 @@ do_vgrename (const char *volgroup, const char *newvolgroup) int r; r = command (NULL, &err, - str_lvm, "vgrename", + "lvm", "vgrename", volgroup, newvolgroup, NULL); if (r == -1) { reply_with_error ("%s -> %s: %s", volgroup, newvolgroup, err); @@ -719,7 +717,7 @@ get_lvm_field (const char *cmd, const char *field, const char *device) char *out; CLEANUP_FREE char *err = NULL; int r = command (&out, &err, - str_lvm, cmd, + "lvm", cmd, "--unbuffered", "--noheadings", "-o", field, device, NULL); if (r == -1) { @@ -756,7 +754,7 @@ get_lvm_fields (const char *cmd, const char *field, const char *device) CLEANUP_FREE char *out = NULL, *err = NULL; int r = command (&out, &err, - str_lvm, cmd, + "lvm", cmd, "--unbuffered", "--noheadings", "-o", field, device, NULL); if (r == -1) { @@ -795,7 +793,7 @@ do_vgscan (void) int r; r = command (NULL, &err, - str_lvm, "vgscan", NULL); + "lvm", "vgscan", NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -983,7 +981,7 @@ do_vgmeta (const char *vg, size_t *size_r) close (fd); - r = command (NULL, &err, str_lvm, "vgcfgbackup", "-f", tmp, vg, NULL); + r = command (NULL, &err, "lvm", "vgcfgbackup", "-f", tmp, vg, NULL); if (r == -1) { reply_with_error ("vgcfgbackup: %s", err); return NULL; @@ -1056,7 +1054,7 @@ do_pvchange_uuid (const char *device) int r; r = command (NULL, &err, - str_lvm, "pvchange", "-u", device, NULL); + "lvm", "pvchange", "-u", device, NULL); if (r == -1) { reply_with_error ("%s: %s", device, err); return -1; @@ -1074,7 +1072,7 @@ do_pvchange_uuid_all (void) int r; r = command (NULL, &err, - str_lvm, "pvchange", "-u", "-a", NULL); + "lvm", "pvchange", "-u", "-a", NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -1092,7 +1090,7 @@ do_vgchange_uuid (const char *vg) int r; r = command (NULL, &err, - str_lvm, "vgchange", "-u", vg, NULL); + "lvm", "vgchange", "-u", vg, NULL); if (r == -1) { reply_with_error ("%s: %s", vg, err); return -1; @@ -1110,7 +1108,7 @@ do_vgchange_uuid_all (void) int r; r = command (NULL, &err, - str_lvm, "vgchange", "-u", NULL); + "lvm", "vgchange", "-u", NULL); if (r == -1) { reply_with_error ("%s", err); return -1; diff --git a/daemon/md.c b/daemon/md.c index 64d98fae5..246e38150 100644 --- a/daemon/md.c +++ b/daemon/md.c @@ -37,12 +37,10 @@ #include "optgroups.h" #include "c-ctype.h" -GUESTFSD_EXT_CMD(str_mdadm, mdadm); - int optgroup_mdadm_available (void) { - return prog_exists (str_mdadm); + return prog_exists ("mdadm"); } static size_t @@ -138,7 +136,7 @@ do_md_create (const char *name, char *const *devices, const char *argv[MAX_ARGS]; size_t i = 0; - ADD_ARG (argv, i, str_mdadm); + ADD_ARG (argv, i, "mdadm"); ADD_ARG (argv, i, "--create"); /* --run suppresses "Continue creating array" question */ ADD_ARG (argv, i, "--run"); @@ -292,7 +290,7 @@ do_md_detail (const char *md) CLEANUP_FREE_STRINGSBUF DECLARE_STRINGSBUF (ret); - const char *mdadm[] = { str_mdadm, "-D", "--export", md, NULL }; + const char *mdadm[] = { "mdadm", "-D", "--export", md, NULL }; r = commandv (&out, &err, mdadm); if (r == -1) { reply_with_error ("%s", err); @@ -353,7 +351,7 @@ do_md_stop (const char *md) int r; CLEANUP_FREE char *err = NULL; - const char *mdadm[] = { str_mdadm, "--stop", md, NULL}; + const char *mdadm[] = { "mdadm", "--stop", md, NULL}; r = commandv (NULL, &err, mdadm); if (r == -1) { reply_with_error ("%s", err); diff --git a/daemon/mkfs.c b/daemon/mkfs.c index a376a1780..2b439a6ce 100644 --- a/daemon/mkfs.c +++ b/daemon/mkfs.c @@ -30,9 +30,6 @@ #define MAX_ARGS 64 -GUESTFSD_EXT_CMD(str_mke2fs, mke2fs); -GUESTFSD_EXT_CMD(str_mkfs, mkfs); - /* Takes optional arguments, consult optargs_bitmask. */ int do_mkfs (const char *fstype, const char *device, int blocksize, @@ -55,9 +52,9 @@ do_mkfs (const char *fstype, const char *device, int blocksize, * option. */ if (extfs) - ADD_ARG (argv, i, str_mke2fs); + ADD_ARG (argv, i, "mke2fs"); else - ADD_ARG (argv, i, str_mkfs); + ADD_ARG (argv, i, "mkfs"); ADD_ARG (argv, i, "-t"); ADD_ARG (argv, i, fstype); diff --git a/daemon/modprobe.c b/daemon/modprobe.c index 0b7896ae7..1e095cd00 100644 --- a/daemon/modprobe.c +++ b/daemon/modprobe.c @@ -27,8 +27,6 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_modprobe, modprobe); - int optgroup_linuxmodules_available (void) { @@ -39,7 +37,7 @@ optgroup_linuxmodules_available (void) if (access ("/proc/modules", R_OK) == -1 && errno == ENOENT) return 0; - return prog_exists (str_modprobe); + return prog_exists ("modprobe"); } int @@ -48,7 +46,7 @@ do_modprobe (const char *module) CLEANUP_FREE char *err = NULL; int r; - r = command (NULL, &err, str_modprobe, module, NULL); + r = command (NULL, &err, "modprobe", module, NULL); if (r == -1) { reply_with_error ("%s", err); diff --git a/daemon/mount.c b/daemon/mount.c index 0ad9626a7..f9dfaff70 100644 --- a/daemon/mount.c +++ b/daemon/mount.c @@ -33,9 +33,6 @@ #define MAX_ARGS 64 -GUESTFSD_EXT_CMD(str_mount, mount); -GUESTFSD_EXT_CMD(str_umount, umount); - /* You must mount something on "/" first before many operations. * Hence we have an internal function which can test if something is * mounted on *or under* the sysroot directory. (It has to be *or @@ -176,11 +173,11 @@ mount_vfs_nochroot (const char *options, const char *vfstype, int r; if (vfstype) r = command (NULL, &error, - str_mount, "-o", options_plus ? options_plus : options, + "mount", "-o", options_plus ? options_plus : options, "-t", vfstype, device, mp, NULL); else r = command (NULL, &error, - str_mount, "-o", options_plus ? options_plus : options, + "mount", "-o", options_plus ? options_plus : options, device, mp, NULL); if (r == -1) { reply_with_error ("%s on %s (options: '%s'): %s", @@ -238,7 +235,7 @@ do_umount (const char *pathordevice, /* Use the external /bin/umount program, so that /etc/mtab is kept * updated. */ - ADD_ARG (argv, i, str_umount); + ADD_ARG (argv, i, "umount"); if (force) ADD_ARG (argv, i, "-f"); @@ -412,7 +409,7 @@ do_umount_all (void) for (i = 0; i < mounts.size; ++i) { CLEANUP_FREE char *err = NULL; - r = command (NULL, &err, str_umount, mounts.argv[i], NULL); + r = command (NULL, &err, "umount", mounts.argv[i], NULL); if (r == -1) { reply_with_error ("umount: %s: %s", mounts.argv[i], err); return -1; @@ -445,7 +442,7 @@ do_mount_loop (const char *file, const char *mountpoint) return -1; } - r = command (NULL, &error, str_mount, "-o", "loop", buf, mp, NULL); + r = command (NULL, &error, "mount", "-o", "loop", buf, mp, NULL); if (r == -1) { reply_with_error ("%s on %s: %s", file, mountpoint, error); return -1; @@ -480,7 +477,7 @@ do_remount (const char *mountpoint, int rw) /* XXX Do we need to check the mountpoint exists? */ - r = command (NULL, &err, str_mount, "-o", options, mp, NULL); + r = command (NULL, &err, "mount", "-o", options, mp, NULL); if (r == -1) { reply_with_error ("%s: %s: %s", mountpoint, options, err); return -1; diff --git a/daemon/ntfs.c b/daemon/ntfs.c index 3b759fef9..878f6e58a 100644 --- a/daemon/ntfs.c +++ b/daemon/ntfs.c @@ -31,21 +31,16 @@ #define MAX_ARGS 64 -GUESTFSD_EXT_CMD(str_ntfs3g_probe, ntfs-3g.probe); -GUESTFSD_EXT_CMD(str_ntfsresize, ntfsresize); -GUESTFSD_EXT_CMD(str_ntfsfix, ntfsfix); -GUESTFSD_EXT_CMD(str_ntfslabel, ntfslabel); - int optgroup_ntfs3g_available (void) { - return prog_exists (str_ntfs3g_probe); + return prog_exists ("ntfs3g.probe"); } int optgroup_ntfsprogs_available (void) { - return prog_exists (str_ntfsresize); + return prog_exists ("ntfsresize"); } char * @@ -56,7 +51,7 @@ ntfs_get_label (const char *device) char *out = NULL; size_t len; - r = command (&out, &err, str_ntfslabel, device, NULL); + r = command (&out, &err, "ntfslabel", device, NULL); if (r == -1) { reply_with_error ("%s", err); free (out); @@ -81,7 +76,7 @@ ntfs_set_label (const char *device, const char *label) * characters and return an error. This is not so easy since we * don't have the required libraries. */ - r = command (NULL, &err, str_ntfslabel, device, label, NULL); + r = command (NULL, &err, "ntfslabel", device, label, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -99,7 +94,7 @@ do_ntfs_3g_probe (int rw, const char *device) rw_flag = rw ? "-w" : "-r"; - r = commandr (NULL, &err, str_ntfs3g_probe, rw_flag, device, NULL); + r = commandr (NULL, &err, "ntfs3g.probe", rw_flag, device, NULL); if (r == -1) { reply_with_error ("%s: %s", device, err); return -1; @@ -118,7 +113,7 @@ do_ntfsresize (const char *device, int64_t size, int force) size_t i = 0; char size_str[32]; - ADD_ARG (argv, i, str_ntfsresize); + ADD_ARG (argv, i, "ntfsresize"); ADD_ARG (argv, i, "-P"); if (optargs_bitmask & GUESTFS_NTFSRESIZE_SIZE_BITMASK) { @@ -170,7 +165,7 @@ ntfs_minimum_size (const char *device) int32_t cluster_size = 0; /* FS may be marked for check, so force ntfsresize */ - r = command (&out, &err, str_ntfsresize, "--info", "-ff", device, NULL); + r = command (&out, &err, "ntfsresize", "--info", "-ff", device, NULL); lines = split_lines (out); if (lines == NULL) @@ -249,7 +244,7 @@ do_ntfsfix (const char *device, int clearbadsectors) int r; CLEANUP_FREE char *err = NULL; - ADD_ARG (argv, i, str_ntfsfix); + ADD_ARG (argv, i, "ntfsfix"); if ((optargs_bitmask & GUESTFS_NTFSFIX_CLEARBADSECTORS_BITMASK) && clearbadsectors) diff --git a/daemon/ntfsclone.c b/daemon/ntfsclone.c index dc3ac278d..767065648 100644 --- a/daemon/ntfsclone.c +++ b/daemon/ntfsclone.c @@ -32,8 +32,6 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_ntfsclone, ntfsclone); - /* Read the error file. Returns a string that the caller must free. */ static char * read_error_file (char *error_file) @@ -83,7 +81,7 @@ do_ntfsclone_in (const char *device) /* Construct the command. */ if (asprintf (&cmd, "%s -O %s --restore-image - 2> %s", - str_ntfsclone, device, error_file) == -1) { + "ntfsclone", device, error_file) == -1) { err = errno; r = cancel_receive (); errno = err; @@ -161,8 +159,7 @@ do_ntfsclone_out (const char *device, } /* Construct the ntfsclone command. */ - if (asprintf (&cmd, "%s -o - --save-image%s%s%s%s%s %s", - str_ntfsclone, + if (asprintf (&cmd, "ntfsclone -o - --save-image%s%s%s%s%s %s", (optargs_bitmask & GUESTFS_NTFSCLONE_OUT_METADATAONLY_BITMASK) && metadataonly ? " --metadata" : "", (optargs_bitmask & GUESTFS_NTFSCLONE_OUT_RESCUE_BITMASK) && rescue ? " --rescue" : "", (optargs_bitmask & GUESTFS_NTFSCLONE_OUT_IGNOREFSCHECK_BITMASK) && ignorefscheck ? " --ignore-fs-check" : "", diff --git a/daemon/parted.c b/daemon/parted.c index 03e83cb32..7446bc93e 100644 --- a/daemon/parted.c +++ b/daemon/parted.c @@ -30,10 +30,6 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_parted, parted); -GUESTFSD_EXT_CMD(str_sfdisk, sfdisk); -GUESTFSD_EXT_CMD(str_sgdisk, sgdisk); - /* Notes: * * Parted 1.9 sends error messages to stdout, hence use of the @@ -88,7 +84,7 @@ do_part_init (const char *device, const char *parttype) udev_settle (); r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_parted, "-s", "--", device, "mklabel", parttype, NULL); + "parted", "-s", "--", device, "mklabel", parttype, NULL); if (r == -1) { reply_with_error ("parted: %s: %s", device, err); return -1; @@ -141,7 +137,7 @@ do_part_add (const char *device, const char *prlogex, * this as a bug in the parted mkpart command. */ r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_parted, "-s", "--", + "parted", "-s", "--", device, "mkpart", prlogex, startstr, endstr, NULL); if (r == -1) { reply_with_error ("parted: %s: %s", device, err); @@ -170,7 +166,7 @@ do_part_del (const char *device, int partnum) udev_settle (); r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_parted, "-s", "--", device, "rm", partnum_str, NULL); + "parted", "-s", "--", device, "rm", partnum_str, NULL); if (r == -1) { reply_with_error ("parted: %s: %s", device, err); return -1; @@ -209,7 +205,7 @@ do_part_disk (const char *device, const char *parttype) udev_settle (); r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_parted, "-s", "--", + "parted", "-s", "--", device, "mklabel", parttype, /* See comment about about the parted mkpart command. */ @@ -243,7 +239,7 @@ do_part_set_bootable (const char *device, int partnum, int bootable) udev_settle (); r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_parted, "-s", "--", + "parted", "-s", "--", device, "set", partstr, "boot", bootable ? "on" : "off", NULL); if (r == -1) { reply_with_error ("parted: %s: %s", device, err); @@ -273,7 +269,7 @@ do_part_set_name (const char *device, int partnum, const char *name) udev_settle (); r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_parted, "-s", "--", device, "name", partstr, name, NULL); + "parted", "-s", "--", device, "name", partstr, name, NULL); if (r == -1) { reply_with_error ("parted: %s: %s", device, err); return -1; @@ -323,11 +319,11 @@ print_partition_table (const char *device, bool add_m_option) udev_settle (); if (add_m_option) - r = command (&out, &err, str_parted, "-m", "-s", "--", device, + r = command (&out, &err, "parted", "-m", "-s", "--", device, "unit", "b", "print", NULL); else - r = command (&out, &err, str_parted, "-s", "--", device, + r = command (&out, &err, "parted", "-s", "--", device, "unit", "b", "print", NULL); @@ -511,7 +507,7 @@ test_sfdisk_has_part_type (void) int r; CLEANUP_FREE char *out = NULL, *err = NULL; - r = command (&out, &err, str_sfdisk, "--help", NULL); + r = command (&out, &err, "sfdisk", "--help", NULL); if (r == -1) { reply_with_error ("%s: %s", "sfdisk --help", err); return -1; @@ -545,7 +541,7 @@ do_part_get_mbr_id (const char *device, int partnum) udev_settle (); - r = command (&out, &err, str_sfdisk, param, device, partnum_str, NULL); + r = command (&out, &err, "sfdisk", param, device, partnum_str, NULL); if (r == -1) { reply_with_error ("sfdisk %s: %s", param, err); return -1; @@ -585,7 +581,7 @@ do_part_set_mbr_id (const char *device, int partnum, int idbyte) udev_settle (); - r = command (NULL, &err, str_sfdisk, + r = command (NULL, &err, "sfdisk", param, device, partnum_str, idbyte_str, NULL); if (r == -1) { reply_with_error ("sfdisk %s: %s", param, err); @@ -600,7 +596,7 @@ do_part_set_mbr_id (const char *device, int partnum, int idbyte) int optgroup_gdisk_available (void) { - return prog_exists (str_sgdisk); + return prog_exists ("sgdisk"); } int @@ -619,10 +615,10 @@ do_part_set_gpt_type (const char *device, int partnum, const char *guid) CLEANUP_FREE char *err = NULL; int r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_sgdisk, device, "-t", typecode, NULL); + "sgdisk", device, "-t", typecode, NULL); if (r == -1) { - reply_with_error ("%s %s -t %s: %s", str_sgdisk, device, typecode, err); + reply_with_error ("%s %s -t %s: %s", "sgdisk", device, typecode, err); return -1; } @@ -645,10 +641,10 @@ do_part_set_gpt_guid (const char *device, int partnum, const char *guid) CLEANUP_FREE char *err = NULL; int r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_sgdisk, device, "-u", typecode, NULL); + "sgdisk", device, "-u", typecode, NULL); if (r == -1) { - reply_with_error ("%s %s -u %s: %s", str_sgdisk, device, typecode, err); + reply_with_error ("%s %s -u %s: %s", "sgdisk", device, typecode, err); return -1; } @@ -674,10 +670,10 @@ sgdisk_info_extract_field (const char *device, int partnum, const char *field, CLEANUP_FREE char *err = NULL; int r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_sgdisk, device, "-i", partnum_str, NULL); + "sgdisk", device, "-i", partnum_str, NULL); if (r == -1) { - reply_with_error ("%s %s -i %s: %s", str_sgdisk, device, partnum_str, err); + reply_with_error ("%s %s -i %s: %s", "sgdisk", device, partnum_str, err); return NULL; } @@ -686,7 +682,7 @@ sgdisk_info_extract_field (const char *device, int partnum, const char *field, CLEANUP_FREE_STRING_LIST char **lines = split_lines (err); if (lines == NULL) { reply_with_error ("'%s %s -i %i' returned no output", - str_sgdisk, device, partnum); + "sgdisk", device, partnum); return NULL; } @@ -946,16 +942,16 @@ do_part_get_disk_guid (const char *device) CLEANUP_FREE char *err = NULL; int r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_sgdisk, device, "-p", NULL); + "sgdisk", device, "-p", NULL); if (r == -1) { - reply_with_error ("%s %s -p: %s", str_sgdisk, device, err); + reply_with_error ("%s %s -p: %s", "sgdisk", device, err); return NULL; } CLEANUP_FREE_STRING_LIST char **lines = split_lines (err); if (lines == NULL) { reply_with_error ("'%s %s -p' returned no output", - str_sgdisk, device); + "sgdisk", device); return NULL; } @@ -988,10 +984,10 @@ do_part_set_disk_guid (const char *device, const char *guid) { CLEANUP_FREE char *err = NULL; int r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_sgdisk, device, "-U", guid, NULL); + "sgdisk", device, "-U", guid, NULL); if (r == -1) { - reply_with_error ("%s %s -U %s: %s", str_sgdisk, device, guid, err); + reply_with_error ("%s %s -U %s: %s", "sgdisk", device, guid, err); return -1; } @@ -1003,10 +999,10 @@ do_part_set_disk_guid_random (const char *device) { CLEANUP_FREE char *err = NULL; int r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_sgdisk, device, "-U", "R", NULL); + "sgdisk", device, "-U", "R", NULL); if (r == -1) { - reply_with_error ("%s %s -U R: %s", str_sgdisk, device, err); + reply_with_error ("%s %s -U R: %s", "sgdisk", device, err); return -1; } @@ -1022,25 +1018,25 @@ do_part_expand_gpt(const char *device) * (e.g. recreate partition table and so on). * We do not want such behavior, so dry-run at first.*/ int r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_sgdisk, "--pretend", "-e", device, NULL); + "sgdisk", "--pretend", "-e", device, NULL); if (r == -1) { - reply_with_error ("%s --pretend -e %s: %s", str_sgdisk, device, err); + reply_with_error ("%s --pretend -e %s: %s", "sgdisk", device, err); return -1; } if (err && strlen(err) != 0) { /* Unexpected actions. */ - reply_with_error ("%s --pretend -e %s: %s", str_sgdisk, device, err); + reply_with_error ("%s --pretend -e %s: %s", "sgdisk", device, err); return -1; } free(err); /* Now we can do a real run. */ r = commandf (NULL, &err, COMMAND_FLAG_FOLD_STDOUT_ON_STDERR, - str_sgdisk, "-e", device, NULL); + "sgdisk", "-e", device, NULL); if (r == -1) { - reply_with_error ("%s -e %s: %s", str_sgdisk, device, err); + reply_with_error ("%s -e %s: %s", "sgdisk", device, err); return -1; } diff --git a/daemon/rsync.c b/daemon/rsync.c index d238d6174..8d295e0ec 100644 --- a/daemon/rsync.c +++ b/daemon/rsync.c @@ -30,12 +30,10 @@ #define MAX_ARGS 64 -GUESTFSD_EXT_CMD(str_rsync, rsync); - int optgroup_rsync_available (void) { - return prog_exists (str_rsync); + return prog_exists ("rsync"); } static int @@ -48,7 +46,7 @@ rsync (const char *src, const char *src_orig, int r; CLEANUP_FREE char *err = NULL; - ADD_ARG (argv, i, str_rsync); + ADD_ARG (argv, i, "rsync"); if (archive) ADD_ARG (argv, i, "--archive"); diff --git a/daemon/scrub.c b/daemon/scrub.c index c10b0a0c1..ca330a06c 100644 --- a/daemon/scrub.c +++ b/daemon/scrub.c @@ -28,12 +28,10 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_scrub, scrub); - int optgroup_scrub_available (void) { - return prog_exists (str_scrub); + return prog_exists ("scrub"); } int @@ -42,7 +40,7 @@ do_scrub_device (const char *device) CLEANUP_FREE char *err = NULL; int r; - r = command (NULL, &err, str_scrub, device, NULL); + r = command (NULL, &err, "scrub", device, NULL); if (r == -1) { reply_with_error ("%s: %s", device, err); return -1; @@ -68,7 +66,7 @@ do_scrub_file (const char *file) return -1; } - r = command (NULL, &err, str_scrub, "-r", buf, NULL); + r = command (NULL, &err, "scrub", "-r", buf, NULL); if (r == -1) { reply_with_error ("%s: %s", file, err); return -1; @@ -91,7 +89,7 @@ do_scrub_freespace (const char *dir) return -1; } - r = command (NULL, &err, str_scrub, "-X", buf, NULL); + r = command (NULL, &err, "scrub", "-X", buf, NULL); if (r == -1) { reply_with_error ("%s: %s", dir, err); return -1; diff --git a/daemon/selinux-relabel.c b/daemon/selinux-relabel.c index fa80cec7a..5679a29cf 100644 --- a/daemon/selinux-relabel.c +++ b/daemon/selinux-relabel.c @@ -29,14 +29,12 @@ #include "ignore-value.h" -GUESTFSD_EXT_CMD(str_setfiles, setfiles); - #define MAX_ARGS 64 int optgroup_selinuxrelabel_available (void) { - return prog_exists (str_setfiles); + return prog_exists ("setfiles"); } static int @@ -46,7 +44,7 @@ setfiles_has_m_option (void) CLEANUP_FREE char *err = NULL; if (flag == -1) { - ignore_value (command (NULL, &err, str_setfiles, "-m", NULL)); + ignore_value (command (NULL, &err, "setfiles", "-m", NULL)); flag = err && strstr (err, /* "invalid option -- " */ "'m'") == NULL; } @@ -86,7 +84,7 @@ do_selinux_relabel (const char *specfile, const char *path, * observations to the bug report: * https://bugzilla.redhat.com/show_bug.cgi?id=1396297 */ - ADD_ARG (argv, i, str_setfiles); + ADD_ARG (argv, i, "setfiles"); if (force) ADD_ARG (argv, i, "-F"); diff --git a/daemon/sfdisk.c b/daemon/sfdisk.c index e32e63707..1ea0d6200 100644 --- a/daemon/sfdisk.c +++ b/daemon/sfdisk.c @@ -28,9 +28,6 @@ #include "daemon.h" #include "actions.h" -GUESTFSD_EXT_CMD(str_sfdisk, sfdisk); -GUESTFSD_EXT_CMD(str_blockdev, blockdev); - static int sfdisk (const char *device, int n, int cyls, int heads, int sectors, const char *extra_flag, @@ -40,7 +37,7 @@ sfdisk (const char *device, int n, int cyls, int heads, int sectors, char buf[256]; int i; - strcpy (buf, str_sfdisk); + strcpy (buf, "sfdisk"); if (n > 0) sprintf (buf + strlen (buf), " -N %d", n); @@ -103,7 +100,7 @@ sfdisk (const char *device, int n, int cyls, int heads, int sectors, * other component. In any case, reread the partition table * unconditionally here. */ - (void) command (NULL, NULL, str_blockdev, "--rereadpt", device, NULL); + (void) command (NULL, NULL, "blockdev", "--rereadpt", device, NULL); udev_settle (); @@ -139,7 +136,7 @@ sfdisk_flag (const char *device, const char *flag) CLEANUP_FREE char *err = NULL; int r; - r = command (&out, &err, str_sfdisk, flag, device, NULL); + r = command (&out, &err, "sfdisk", flag, device, NULL); if (r == -1) { reply_with_error ("%s: %s", device, err); free (out); diff --git a/daemon/sh.c b/daemon/sh.c index baebd3960..92ce08be0 100644 --- a/daemon/sh.c +++ b/daemon/sh.c @@ -32,10 +32,6 @@ #include "ignore-value.h" -GUESTFSD_EXT_CMD(str_cp, cp); -GUESTFSD_EXT_CMD(str_mount, mount); -GUESTFSD_EXT_CMD(str_umount, umount); - #ifdef HAVE_ATTRIBUTE_CLEANUP #define CLEANUP_BIND_STATE __attribute__((cleanup(free_bind_state))) #define CLEANUP_RESOLVER_STATE __attribute__((cleanup(free_resolver_state))) @@ -100,20 +96,20 @@ bind_mount (struct bind_state *bs) * However I have not found a reliable way to unmount the same set * of directories (umount -R does NOT work). */ - r = command (NULL, NULL, str_mount, "--bind", "/dev", bs->sysroot_dev, NULL); + r = command (NULL, NULL, "mount", "--bind", "/dev", bs->sysroot_dev, NULL); bs->dev_ok = r != -1; - r = command (NULL, NULL, str_mount, "--bind", "/dev/pts", bs->sysroot_dev_pts, NULL); + r = command (NULL, NULL, "mount", "--bind", "/dev/pts", bs->sysroot_dev_pts, NULL); bs->dev_pts_ok = r != -1; - r = command (NULL, NULL, str_mount, "--bind", "/proc", bs->sysroot_proc, NULL); + r = command (NULL, NULL, "mount", "--bind", "/proc", bs->sysroot_proc, NULL); bs->proc_ok = r != -1; /* Note on the next line we have to bind-mount /sys/fs/selinux (appliance * kernel) on top of /selinux (where guest is expecting selinux). */ - r = command (NULL, NULL, str_mount, "--bind", "/sys/fs/selinux", bs->sysroot_selinux, NULL); + r = command (NULL, NULL, "mount", "--bind", "/sys/fs/selinux", bs->sysroot_selinux, NULL); bs->selinux_ok = r != -1; - r = command (NULL, NULL, str_mount, "--bind", "/sys", bs->sysroot_sys, NULL); + r = command (NULL, NULL, "mount", "--bind", "/sys", bs->sysroot_sys, NULL); bs->sys_ok = r != -1; - r = command (NULL, NULL, str_mount, "--bind", "/sys/fs/selinux", bs->sysroot_sys_fs_selinux, NULL); + r = command (NULL, NULL, "mount", "--bind", "/sys/fs/selinux", bs->sysroot_sys_fs_selinux, NULL); bs->sys_fs_selinux_ok = r != -1; bs->mounted = true; @@ -124,7 +120,7 @@ bind_mount (struct bind_state *bs) static inline void umount_ignore_fail (const char *path) { - ignore_value (command (NULL, NULL, str_umount, path, NULL)); + ignore_value (command (NULL, NULL, "umount", path, NULL)); } static void @@ -205,7 +201,7 @@ set_up_etc_resolv_conf (struct resolver_state *rs) /* Now that the guest's <sysroot>/etc/resolv.conf is out the way, we * can create our own copy of the appliance /etc/resolv.conf. */ - ignore_value (command (NULL, NULL, str_cp, "/etc/resolv.conf", + ignore_value (command (NULL, NULL, "cp", "/etc/resolv.conf", rs->sysroot_etc_resolv_conf, NULL)); rs->mounted = true; diff --git a/daemon/sleuthkit.c b/daemon/sleuthkit.c index bdbdb0f89..acda48bc9 100644 --- a/daemon/sleuthkit.c +++ b/daemon/sleuthkit.c @@ -31,9 +31,6 @@ static int send_command_output (const char *cmd); -GUESTFSD_EXT_CMD(str_icat, icat); -GUESTFSD_EXT_CMD(str_blkls, blkls); - int do_download_inode (const mountable_t *mountable, int64_t inode) { @@ -47,8 +44,8 @@ do_download_inode (const mountable_t *mountable, int64_t inode) } /* Construct the command. */ - ret = asprintf (&cmd, "%s -r %s %" PRIi64, - str_icat, mountable->device, inode); + ret = asprintf (&cmd, "icat -r %s %" PRIi64, + mountable->device, inode); if (ret < 0) { reply_with_perror ("asprintf"); return -1; @@ -84,8 +81,8 @@ do_download_blocks (const mountable_t *mountable, int64_t start, int64_t stop, params = ""; /* Construct the command. */ - ret = asprintf (&cmd, "%s %s %s %" PRIi64 "-%" PRIi64, - str_blkls, mountable->device, params, start, stop); + ret = asprintf (&cmd, "blkls %s %s %" PRIi64 "-%" PRIi64, + mountable->device, params, start, stop); if (ret < 0) { reply_with_perror ("asprintf"); return -1; @@ -155,5 +152,5 @@ send_command_output (const char *cmd) int optgroup_sleuthkit_available (void) { - return prog_exists (str_icat); + return prog_exists ("icat"); } diff --git a/daemon/squashfs.c b/daemon/squashfs.c index c30777661..e0d424350 100644 --- a/daemon/squashfs.c +++ b/daemon/squashfs.c @@ -29,12 +29,10 @@ #define MAX_ARGS 64 -GUESTFSD_EXT_CMD(str_mksquashfs, mksquashfs); - int optgroup_squashfs_available (void) { - return prog_exists (str_mksquashfs); + return prog_exists ("mksquashfs"); } /* Takes optional arguments, consult optargs_bitmask. */ @@ -80,7 +78,7 @@ do_mksquashfs (const char *path, const char *compress, char *const *excludes) return -1; } - ADD_ARG (argv, i, str_mksquashfs); + ADD_ARG (argv, i, "mksquashfs"); ADD_ARG (argv, i, buf); ADD_ARG (argv, i, tmpfile); ADD_ARG (argv, i, "-noappend"); diff --git a/daemon/swap.c b/daemon/swap.c index fea4a9dcf..a00937292 100644 --- a/daemon/swap.c +++ b/daemon/swap.c @@ -31,11 +31,6 @@ #include "ignore-value.h" -GUESTFSD_EXT_CMD(str_mkswap, mkswap); -GUESTFSD_EXT_CMD(str_swapon, swapon); -GUESTFSD_EXT_CMD(str_swapoff, swapoff); -GUESTFSD_EXT_CMD(str_swaplabel, swaplabel); - /* Confirmed this is true for Linux swap partitions from the Linux sources. */ #define SWAP_LABEL_MAX 16 @@ -55,7 +50,7 @@ do_mkswap (const char *device, const char *label, const char *uuid) int r; CLEANUP_FREE char *err = NULL; - ADD_ARG (argv, i, str_mkswap); + ADD_ARG (argv, i, "mkswap"); ADD_ARG (argv, i, "-f"); if (optargs_bitmask & GUESTFS_MKSWAP_LABEL_BITMASK) { @@ -117,7 +112,7 @@ do_mkswap_file (const char *path) return -1; } - r = command (NULL, &err, str_mkswap, "-f", buf, NULL); + r = command (NULL, &err, "mkswap", "-f", buf, NULL); if (r == -1) { reply_with_error ("%s: %s", path, err); @@ -154,13 +149,13 @@ swaponoff (const char *cmd, const char *flag, const char *value) int do_swapon_device (const char *device) { - return swaponoff (str_swapon, NULL, device); + return swaponoff ("swapon", NULL, device); } int do_swapoff_device (const char *device) { - return swaponoff (str_swapoff, NULL, device); + return swaponoff ("swapoff", NULL, device); } int @@ -174,7 +169,7 @@ do_swapon_file (const char *path) return -1; } - return swaponoff (str_swapon, NULL, buf); + return swaponoff ("swapon", NULL, buf); } int @@ -188,7 +183,7 @@ do_swapoff_file (const char *path) return -1; } - return swaponoff (str_swapoff, NULL, buf); + return swaponoff ("swapoff", NULL, buf); } int @@ -200,7 +195,7 @@ do_swapon_label (const char *label) return -1; } - return swaponoff (str_swapon, "-L", label); + return swaponoff ("swapon", "-L", label); } int @@ -212,19 +207,19 @@ do_swapoff_label (const char *label) return -1; } - return swaponoff (str_swapoff, "-L", label); + return swaponoff ("swapoff", "-L", label); } int do_swapon_uuid (const char *uuid) { - return swaponoff (str_swapon, "-U", uuid); + return swaponoff ("swapon", "-U", uuid); } int do_swapoff_uuid (const char *uuid) { - return swaponoff (str_swapoff, "-U", uuid); + return swaponoff ("swapoff", "-U", uuid); } int @@ -233,7 +228,7 @@ swap_set_uuid (const char *device, const char *uuid) int r; CLEANUP_FREE char *err = NULL; - r = command (NULL, &err, str_swaplabel, "-U", uuid, device, NULL); + r = command (NULL, &err, "swaplabel", "-U", uuid, device, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -254,7 +249,7 @@ swap_set_label (const char *device, const char *label) return -1; } - r = command (NULL, &err, str_swaplabel, "-L", label, device, NULL); + r = command (NULL, &err, "swaplabel", "-L", label, device, NULL); if (r == -1) { reply_with_error ("%s", err); return -1; diff --git a/daemon/syslinux.c b/daemon/syslinux.c index 08da170d5..f57734b2d 100644 --- a/daemon/syslinux.c +++ b/daemon/syslinux.c @@ -28,19 +28,16 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_syslinux, syslinux); -GUESTFSD_EXT_CMD(str_extlinux, extlinux); - int optgroup_syslinux_available (void) { - return prog_exists (str_syslinux); + return prog_exists ("syslinux"); } int optgroup_extlinux_available (void) { - return prog_exists (str_extlinux); + return prog_exists ("extlinux"); } /* Takes optional arguments, consult optargs_bitmask. */ @@ -53,7 +50,7 @@ do_syslinux (const char *device, const char *directory) CLEANUP_FREE char *err = NULL; int r; - ADD_ARG (argv, i, str_syslinux); + ADD_ARG (argv, i, "syslinux"); ADD_ARG (argv, i, "--install"); ADD_ARG (argv, i, "--force"); @@ -86,7 +83,7 @@ do_extlinux (const char *directory) return -1; } - r = command (NULL, &err, str_extlinux, "--install", buf, NULL); + r = command (NULL, &err, "extlinux", "--install", buf, NULL); if (r == -1) { reply_with_error ("%s: %s", directory, err); return -1; diff --git a/daemon/tar.c b/daemon/tar.c index c23aa0a86..53c5bc138 100644 --- a/daemon/tar.c +++ b/daemon/tar.c @@ -35,8 +35,6 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_tar, tar); - int optgroup_xz_available (void) { @@ -187,7 +185,7 @@ do_tar_in (const char *dir, const char *compress, int xattrs, int selinux, int a /* "tar -C /sysroot%s -xf -" but we have to quote the dir. */ if (asprintf_nowarn (&cmd, "%s -C %R%s -xf - %s%s%s%s2> %s", - str_tar, + "tar", dir, filter, chown_supported ? "" : "--no-same-owner ", xattrs ? "--xattrs " : "", @@ -344,7 +342,7 @@ do_tar_out (const char *dir, const char *compress, int numericowner, /* "tar -C /sysroot%s -cf - ." but we have to quote the dir. */ if (asprintf_nowarn (&cmd, "%s -C %Q%s%s%s%s%s%s%s -cf - .", - str_tar, + "tar", buf, filter, numericowner ? " --numeric-owner" : "", exclude_from_file ? " -X " : "", diff --git a/daemon/xfs.c b/daemon/xfs.c index a0d08b2c9..84e361569 100644 --- a/daemon/xfs.c +++ b/daemon/xfs.c @@ -32,16 +32,10 @@ #define MAX_ARGS 64 -GUESTFSD_EXT_CMD(str_mkfs_xfs, mkfs.xfs); -GUESTFSD_EXT_CMD(str_xfs_admin, xfs_admin); -GUESTFSD_EXT_CMD(str_xfs_info, xfs_info); -GUESTFSD_EXT_CMD(str_xfs_growfs, xfs_growfs); -GUESTFSD_EXT_CMD(str_xfs_repair, xfs_repair); - int optgroup_xfs_available (void) { - return prog_exists (str_mkfs_xfs); + return prog_exists ("mkfs.xfs"); } /* Return everything up to the first comma, equals or space in the input @@ -341,7 +335,7 @@ do_xfs_info (const char *pathordevice) return NULL; } - r = command (&out, &err, str_xfs_info, buf, NULL); + r = command (&out, &err, "xfs_info", buf, NULL); if (r == -1) { reply_with_error ("%s", err); return NULL; @@ -376,7 +370,7 @@ do_xfs_growfs (const char *path, return -1; } - ADD_ARG (argv, i, str_xfs_growfs); + ADD_ARG (argv, i, "xfs_growfs"); /* Optional arguments */ if (!(optargs_bitmask & GUESTFS_XFS_GROWFS_DATASEC_BITMASK)) @@ -487,7 +481,7 @@ do_xfs_admin (const char *device, const char *argv[MAX_ARGS]; size_t i = 0; - ADD_ARG (argv, i, str_xfs_admin); + ADD_ARG (argv, i, "xfs_admin"); /* Optional arguments */ if (!(optargs_bitmask & GUESTFS_XFS_ADMIN_EXTUNWRITTEN_BITMASK)) @@ -564,7 +558,7 @@ do_xfs_repair (const char *device, size_t i = 0; int is_device; - ADD_ARG (argv, i, str_xfs_repair); + ADD_ARG (argv, i, "xfs_repair"); /* Optional arguments */ if (optargs_bitmask & GUESTFS_XFS_REPAIR_FORCELOGZERO_BITMASK) { diff --git a/daemon/zero.c b/daemon/zero.c index 5166807b5..faeb3bcfd 100644 --- a/daemon/zero.c +++ b/daemon/zero.c @@ -32,8 +32,6 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_wipefs, wipefs); - static const char zero_buf[4096]; int @@ -81,7 +79,7 @@ do_zero (const char *device) int optgroup_wipefs_available (void) { - return prog_exists (str_wipefs); + return prog_exists ("wipefs"); } /* See RHBZ#872831 */ @@ -93,7 +91,7 @@ wipefs_has_force_option (void) CLEANUP_FREE char *out = NULL, *err = NULL; if (flag == -1) { - r = command (&out, &err, str_wipefs, "--help", NULL); + r = command (&out, &err, "wipefs", "--help", NULL); if (r == -1) { reply_with_error ("%s", err); return -1; @@ -118,7 +116,7 @@ do_wipefs (const char *device) if (force == -1) return -1; - ADD_ARG (argv, i, str_wipefs); + ADD_ARG (argv, i, "wipefs"); ADD_ARG (argv, i, "-a"); if (force) ADD_ARG (argv, i, "--force"); @@ -379,7 +377,7 @@ wipe_device_before_mkfs (const char *device) if (force == -1) return; - ADD_ARG (argv, i, str_wipefs); + ADD_ARG (argv, i, "wipefs"); ADD_ARG (argv, i, "-a"); if (force) ADD_ARG (argv, i, "--force"); diff --git a/daemon/zerofree.c b/daemon/zerofree.c index 4ba17dd81..3f7d1ca5d 100644 --- a/daemon/zerofree.c +++ b/daemon/zerofree.c @@ -28,12 +28,10 @@ #include "actions.h" #include "optgroups.h" -GUESTFSD_EXT_CMD(str_zerofree, zerofree); - int optgroup_zerofree_available (void) { - return prog_exists (str_zerofree); + return prog_exists ("zerofree"); } int @@ -42,7 +40,7 @@ do_zerofree (const char *device) CLEANUP_FREE char *err = NULL; int r; - r = command (NULL, &err, str_zerofree, device, NULL); + r = command (NULL, &err, "zerofree", device, NULL); if (r == -1) { reply_with_error ("%s: %s", device, err); return -1; -- 2.13.2
Pino Toscano
2017-Jul-27 16:20 UTC
Re: [Libguestfs] [PATCH v2] daemon: Remove GUESTFSD_EXT_CMD.
On Thursday, 27 July 2017 17:46:02 CEST Richard W.M. Jones wrote:> GUESTFSD_EXT_CMD was used by OpenSUSE to track which external commands > are run by the daemon and package those commands into the appliance. > > It is no longer used by recent SUSE builds, so remove it. > > Thanks: Pino Toscano, Olaf Hering. > ---LGTM (note that I didn't do anything, actually...) -- Pino Toscano
Richard Jones
2017-Jul-27 16:59 UTC
[Libguestfs] check-release success (was: Re: [PATCH v2] daemon: Remove GUESTFSD_EXT_CMD.)
ry for libguestfs 1.37.18 ===========================================================================# TOTAL: 1 # PASS: 1 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/php' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/php' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/php' Making check in erlang make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/erlang' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/erlang' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/erlang' PASS: tests/010-load.erl PASS: run-bindtests PASS: tests/030-config.erl PASS: tests/070-optargs.erl PASS: tests/060-readdir.erl PASS: tests/050-lvcreate.erl ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 6 # PASS: 6 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/erlang' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/erlang' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/erlang' Making check in erlang/examples make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/erlang/examples' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/erlang/examples' Making check in lua make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/lua' ln -sf .libs/libluaguestfs.so guestfs.so make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/lua' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/lua' PASS: run-bindtests PASS: tests/020-create.lua PASS: tests/025-create-flags.lua PASS: tests/010-load.lua PASS: tests/015-globals.lua PASS: tests/070-optargs.lua PASS: tests/027-create-multiple.lua PASS: tests/030-config.lua PASS: tests/900-errors.lua PASS: tests/400-events.lua PASS: tests/060-readdir.lua PASS: tests/050-lvcreate.lua PASS: tests/400-progress.lua ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 13 # PASS: 13 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/lua' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/lua' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/lua' Making check in lua/examples make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/lua/examples' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/lua/examples' Making check in gobject make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/gobject' make check-am make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/gobject' make check-TESTS make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/gobject' make[4]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/gobject' SKIP: run-tests PASS: run-tests-retvalues PASS: run-live-tests ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 3 # PASS: 2 # SKIP: 1 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[4]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/gobject' make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/gobject' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/gobject' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/gobject' Making check in csharp make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/csharp' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/csharp' Making check in common/mlutils make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlutils' make c_utils_unit_tests make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlutils' OCAMLOPT c_utils_unit_tests.cmx CC c_utils_unit_tests-dummy.o GEN c_utils_unit_tests make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlutils' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlutils' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlutils' PASS: c_utils_unit_tests ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 1 # PASS: 1 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlutils' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlutils' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlutils' Making check in common/mlprogress make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlprogress' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlprogress' Making check in common/mlvisit make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlvisit' make visit_tests make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlvisit' CC dummy.o OCAMLOPT visit_tests.cmx File "visit_tests.ml", line 111, characters 25-31: Warning 52: Code should not depend on the actual values of this constructor's arguments. They are only for information and may change in future versions. (See manual section 8.5) File "visit_tests.ml", line 119, characters 16-23: Warning 52: Code should not depend on the actual values of this constructor's arguments. They are only for information and may change in future versions. (See manual section 8.5) GEN visit_tests make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlvisit' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlvisit' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlvisit' PASS: visit_tests ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 1 # PASS: 1 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlvisit' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlvisit' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlvisit' Making check in common/mlxml make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlxml' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/common/mlxml' Making check in mllib make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/mllib' make getopt_tests common_utils_tests JSON_tests make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/mllib' CC getopt_tests-dummy.o OCAMLOPT getopt_tests.cmx CC common_utils_tests-dummy.o OCAMLOPT common_utils_tests.cmx CC dummy.o OCAMLOPT JSON_tests.cmx GEN getopt_tests GEN JSON_tests GEN common_utils_tests make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/mllib' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/mllib' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/mllib' PASS: JSON_tests PASS: common_utils_tests PASS: test-getopt.sh ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 3 # PASS: 3 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/mllib' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/mllib' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/mllib' Making check in customize make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/customize' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/customize' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/customize' rm -f test-firstboot-rhel-4.9.sh test-firstboot-rhel-4.9.sh-t rm -f test-firstboot-rhel-5.11.sh test-firstboot-rhel-5.11.sh-t f=`echo "test-firstboot-rhel-4.9.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-rhel-4.9.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-rhel-4.9.sh-t f=`echo "test-firstboot-rhel-5.11.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-rhel-5.11.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-rhel-5.11.sh-t rm -f test-firstboot-rhel-6.8.sh test-firstboot-rhel-6.8.sh-t f=`echo "test-firstboot-rhel-6.8.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-rhel-6.8.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-rhel-6.8.sh-t chmod 0755 test-firstboot-rhel-4.9.sh-t chmod 0755 test-firstboot-rhel-5.11.sh-t mv test-firstboot-rhel-5.11.sh-t test-firstboot-rhel-5.11.sh chmod 0755 test-firstboot-rhel-6.8.sh-t mv test-firstboot-rhel-4.9.sh-t test-firstboot-rhel-4.9.sh rm -f test-firstboot-rhel-7.2.sh test-firstboot-rhel-7.2.sh-t mv test-firstboot-rhel-6.8.sh-t test-firstboot-rhel-6.8.sh f=`echo "test-firstboot-rhel-7.2.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-rhel-7.2.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-rhel-7.2.sh-t rm -f test-firstboot-debian-6.sh test-firstboot-debian-6.sh-t f=`echo "test-firstboot-debian-6.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-debian-6.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-debian-6.sh-t chmod 0755 test-firstboot-rhel-7.2.sh-t rm -f test-firstboot-debian-7.sh test-firstboot-debian-7.sh-t mv test-firstboot-rhel-7.2.sh-t test-firstboot-rhel-7.2.sh chmod 0755 test-firstboot-debian-6.sh-t f=`echo "test-firstboot-debian-7.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-debian-7.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-debian-7.sh-t mv test-firstboot-debian-6.sh-t test-firstboot-debian-6.sh rm -f test-firstboot-debian-8.sh test-firstboot-debian-8.sh-t f=`echo "test-firstboot-debian-8.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-debian-8.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-debian-8.sh-t chmod 0755 test-firstboot-debian-7.sh-t chmod 0755 test-firstboot-debian-8.sh-t mv test-firstboot-debian-7.sh-t test-firstboot-debian-7.sh mv test-firstboot-debian-8.sh-t test-firstboot-debian-8.sh rm -f test-firstboot-fedora-25.sh test-firstboot-fedora-25.sh-t rm -f test-firstboot-fedora-26.sh test-firstboot-fedora-26.sh-t f=`echo "test-firstboot-fedora-25.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-fedora-25.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-fedora-25.sh-t f=`echo "test-firstboot-fedora-26.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-fedora-26.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-fedora-26.sh-t rm -f test-firstboot-ubuntu-10.04.sh test-firstboot-ubuntu-10.04.sh-t f=`echo "test-firstboot-ubuntu-10.04.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-ubuntu-10.04.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-ubuntu-10.04.sh-t chmod 0755 test-firstboot-fedora-25.sh-t chmod 0755 test-firstboot-fedora-26.sh-t mv test-firstboot-fedora-25.sh-t test-firstboot-fedora-25.sh mv test-firstboot-fedora-26.sh-t test-firstboot-fedora-26.sh rm -f test-firstboot-ubuntu-12.04.sh test-firstboot-ubuntu-12.04.sh-t rm -f test-firstboot-ubuntu-14.04.sh test-firstboot-ubuntu-14.04.sh-t chmod 0755 test-firstboot-ubuntu-10.04.sh-t f=`echo "test-firstboot-ubuntu-12.04.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-ubuntu-12.04.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-ubuntu-12.04.sh-t f=`echo "test-firstboot-ubuntu-14.04.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-ubuntu-14.04.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-ubuntu-14.04.sh-t mv test-firstboot-ubuntu-10.04.sh-t test-firstboot-ubuntu-10.04.sh chmod 0755 test-firstboot-ubuntu-12.04.sh-t rm -f test-firstboot-ubuntu-16.04.sh test-firstboot-ubuntu-16.04.sh-t chmod 0755 test-firstboot-ubuntu-14.04.sh-t mv test-firstboot-ubuntu-12.04.sh-t test-firstboot-ubuntu-12.04.sh f=`echo "test-firstboot-ubuntu-16.04.sh" | /usr/bin/sed 's/test-firstboot-\(.*\).sh/\1/'`; \ echo 'script=test-firstboot-ubuntu-16.04.sh exec $srcdir/test-firstboot.sh' "$f" > test-firstboot-ubuntu-16.04.sh-t mv test-firstboot-ubuntu-14.04.sh-t test-firstboot-ubuntu-14.04.sh rm -f test-password-centos-7.2.sh test-password-centos-7.2.sh-t chmod 0755 test-firstboot-ubuntu-16.04.sh-t f=`echo "test-password-centos-7.2.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-centos-7.2.sh exec $srcdir/test-password.pl' "$f" > test-password-centos-7.2.sh-t mv test-firstboot-ubuntu-16.04.sh-t test-firstboot-ubuntu-16.04.sh rm -f test-password-debian-6.sh test-password-debian-6.sh-t rm -f test-password-debian-7.sh test-password-debian-7.sh-t f=`echo "test-password-debian-6.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-debian-6.sh exec $srcdir/test-password.pl' "$f" > test-password-debian-6.sh-t f=`echo "test-password-debian-7.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-debian-7.sh exec $srcdir/test-password.pl' "$f" > test-password-debian-7.sh-t chmod 0755 test-password-debian-6.sh-t chmod 0755 test-password-centos-7.2.sh-t chmod 0755 test-password-debian-7.sh-t mv test-password-debian-6.sh-t test-password-debian-6.sh mv test-password-centos-7.2.sh-t test-password-centos-7.2.sh mv test-password-debian-7.sh-t test-password-debian-7.sh rm -f test-password-debian-8.sh test-password-debian-8.sh-t rm -f test-password-fedora-25.sh test-password-fedora-25.sh-t f=`echo "test-password-debian-8.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-debian-8.sh exec $srcdir/test-password.pl' "$f" > test-password-debian-8.sh-t f=`echo "test-password-fedora-25.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-fedora-25.sh exec $srcdir/test-password.pl' "$f" > test-password-fedora-25.sh-t rm -f test-password-rhel-3.9.sh test-password-rhel-3.9.sh-t f=`echo "test-password-rhel-3.9.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-rhel-3.9.sh exec $srcdir/test-password.pl' "$f" > test-password-rhel-3.9.sh-t chmod 0755 test-password-debian-8.sh-t mv test-password-debian-8.sh-t test-password-debian-8.sh chmod 0755 test-password-fedora-25.sh-t chmod 0755 test-password-rhel-3.9.sh-t mv test-password-fedora-25.sh-t test-password-fedora-25.sh mv test-password-rhel-3.9.sh-t test-password-rhel-3.9.sh rm -f test-password-rhel-4.9.sh test-password-rhel-4.9.sh-t rm -f test-password-rhel-5.11.sh test-password-rhel-5.11.sh-t f=`echo "test-password-rhel-4.9.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-rhel-4.9.sh exec $srcdir/test-password.pl' "$f" > test-password-rhel-4.9.sh-t rm -f test-password-rhel-6.9.sh test-password-rhel-6.9.sh-t f=`echo "test-password-rhel-5.11.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-rhel-5.11.sh exec $srcdir/test-password.pl' "$f" > test-password-rhel-5.11.sh-t f=`echo "test-password-rhel-6.9.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-rhel-6.9.sh exec $srcdir/test-password.pl' "$f" > test-password-rhel-6.9.sh-t chmod 0755 test-password-rhel-5.11.sh-t mv test-password-rhel-5.11.sh-t test-password-rhel-5.11.sh chmod 0755 test-password-rhel-4.9.sh-t chmod 0755 test-password-rhel-6.9.sh-t mv test-password-rhel-4.9.sh-t test-password-rhel-4.9.sh mv test-password-rhel-6.9.sh-t test-password-rhel-6.9.sh rm -f test-password-rhel-7.2.sh test-password-rhel-7.2.sh-t rm -f test-password-ubuntu-10.04.sh test-password-ubuntu-10.04.sh-t rm -f test-password-ubuntu-12.04.sh test-password-ubuntu-12.04.sh-t f=`echo "test-password-rhel-7.2.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-rhel-7.2.sh exec $srcdir/test-password.pl' "$f" > test-password-rhel-7.2.sh-t f=`echo "test-password-ubuntu-10.04.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-ubuntu-10.04.sh exec $srcdir/test-password.pl' "$f" > test-password-ubuntu-10.04.sh-t f=`echo "test-password-ubuntu-12.04.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-ubuntu-12.04.sh exec $srcdir/test-password.pl' "$f" > test-password-ubuntu-12.04.sh-t chmod 0755 test-password-rhel-7.2.sh-t mv test-password-rhel-7.2.sh-t test-password-rhel-7.2.sh chmod 0755 test-password-ubuntu-10.04.sh-t chmod 0755 test-password-ubuntu-12.04.sh-t mv test-password-ubuntu-10.04.sh-t test-password-ubuntu-10.04.sh rm -f test-password-ubuntu-14.04.sh test-password-ubuntu-14.04.sh-t mv test-password-ubuntu-12.04.sh-t test-password-ubuntu-12.04.sh f=`echo "test-password-ubuntu-14.04.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-ubuntu-14.04.sh exec $srcdir/test-password.pl' "$f" > test-password-ubuntu-14.04.sh-t rm -f test-password-ubuntu-16.04.sh test-password-ubuntu-16.04.sh-t rm -f test-settings-rhel-4.9.sh test-settings-rhel-4.9.sh-t f=`echo "test-password-ubuntu-16.04.sh" | /usr/bin/sed 's/test-password-\(.*\).sh/\1/'`; \ echo 'script=test-password-ubuntu-16.04.sh exec $srcdir/test-password.pl' "$f" > test-password-ubuntu-16.04.sh-t f=`echo "test-settings-rhel-4.9.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-rhel-4.9.sh exec $srcdir/test-settings.sh' "$f" > test-settings-rhel-4.9.sh-t chmod 0755 test-password-ubuntu-14.04.sh-t chmod 0755 test-settings-rhel-4.9.sh-t mv test-password-ubuntu-14.04.sh-t test-password-ubuntu-14.04.sh mv test-settings-rhel-4.9.sh-t test-settings-rhel-4.9.sh rm -f test-settings-rhel-5.11.sh test-settings-rhel-5.11.sh-t chmod 0755 test-password-ubuntu-16.04.sh-t rm -f test-settings-rhel-6.8.sh test-settings-rhel-6.8.sh-t f=`echo "test-settings-rhel-5.11.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-rhel-5.11.sh exec $srcdir/test-settings.sh' "$f" > test-settings-rhel-5.11.sh-t mv test-password-ubuntu-16.04.sh-t test-password-ubuntu-16.04.sh f=`echo "test-settings-rhel-6.8.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-rhel-6.8.sh exec $srcdir/test-settings.sh' "$f" > test-settings-rhel-6.8.sh-t rm -f test-settings-rhel-7.2.sh test-settings-rhel-7.2.sh-t f=`echo "test-settings-rhel-7.2.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-rhel-7.2.sh exec $srcdir/test-settings.sh' "$f" > test-settings-rhel-7.2.sh-t chmod 0755 test-settings-rhel-5.11.sh-t chmod 0755 test-settings-rhel-6.8.sh-t mv test-settings-rhel-5.11.sh-t test-settings-rhel-5.11.sh chmod 0755 test-settings-rhel-7.2.sh-t mv test-settings-rhel-6.8.sh-t test-settings-rhel-6.8.sh mv test-settings-rhel-7.2.sh-t test-settings-rhel-7.2.sh rm -f test-settings-debian-6.sh test-settings-debian-6.sh-t rm -f test-settings-debian-7.sh test-settings-debian-7.sh-t f=`echo "test-settings-debian-6.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-debian-6.sh exec $srcdir/test-settings.sh' "$f" > test-settings-debian-6.sh-t f=`echo "test-settings-debian-7.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-debian-7.sh exec $srcdir/test-settings.sh' "$f" > test-settings-debian-7.sh-t rm -f test-settings-debian-8.sh test-settings-debian-8.sh-t f=`echo "test-settings-debian-8.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-debian-8.sh exec $srcdir/test-settings.sh' "$f" > test-settings-debian-8.sh-t chmod 0755 test-settings-debian-6.sh-t chmod 0755 test-settings-debian-7.sh-t mv test-settings-debian-6.sh-t test-settings-debian-6.sh mv test-settings-debian-7.sh-t test-settings-debian-7.sh chmod 0755 test-settings-debian-8.sh-t rm -f test-settings-fedora-25.sh test-settings-fedora-25.sh-t mv test-settings-debian-8.sh-t test-settings-debian-8.sh rm -f test-settings-ubuntu-10.04.sh test-settings-ubuntu-10.04.sh-t f=`echo "test-settings-fedora-25.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-fedora-25.sh exec $srcdir/test-settings.sh' "$f" > test-settings-fedora-25.sh-t f=`echo "test-settings-ubuntu-10.04.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-ubuntu-10.04.sh exec $srcdir/test-settings.sh' "$f" > test-settings-ubuntu-10.04.sh-t rm -f test-settings-ubuntu-12.04.sh test-settings-ubuntu-12.04.sh-t f=`echo "test-settings-ubuntu-12.04.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-ubuntu-12.04.sh exec $srcdir/test-settings.sh' "$f" > test-settings-ubuntu-12.04.sh-t chmod 0755 test-settings-fedora-25.sh-t mv test-settings-fedora-25.sh-t test-settings-fedora-25.sh chmod 0755 test-settings-ubuntu-10.04.sh-t chmod 0755 test-settings-ubuntu-12.04.sh-t mv test-settings-ubuntu-10.04.sh-t test-settings-ubuntu-10.04.sh mv test-settings-ubuntu-12.04.sh-t test-settings-ubuntu-12.04.sh rm -f test-settings-ubuntu-14.04.sh test-settings-ubuntu-14.04.sh-t rm -f test-settings-ubuntu-16.04.sh test-settings-ubuntu-16.04.sh-t f=`echo "test-settings-ubuntu-14.04.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-ubuntu-14.04.sh exec $srcdir/test-settings.sh' "$f" > test-settings-ubuntu-14.04.sh-t f=`echo "test-settings-ubuntu-16.04.sh" | /usr/bin/sed 's/test-settings-\(.*\).sh/\1/'`; \ echo 'script=test-settings-ubuntu-16.04.sh exec $srcdir/test-settings.sh' "$f" > test-settings-ubuntu-16.04.sh-t chmod 0755 test-settings-ubuntu-16.04.sh-t mv test-settings-ubuntu-16.04.sh-t test-settings-ubuntu-16.04.sh chmod 0755 test-settings-ubuntu-14.04.sh-t mv test-settings-ubuntu-14.04.sh-t test-settings-ubuntu-14.04.sh SKIP: test-firstboot-rhel-6.8.sh SKIP: test-firstboot-rhel-5.11.sh PASS: test-virt-customize-docs.sh SKIP: test-firstboot-rhel-4.9.sh SKIP: test-firstboot-debian-7.sh SKIP: test-firstboot-debian-6.sh SKIP: test-firstboot-rhel-7.2.sh SKIP: test-firstboot-debian-8.sh SKIP: test-firstboot-fedora-25.sh SKIP: test-firstboot-fedora-26.sh SKIP: test-firstboot-ubuntu-10.04.sh SKIP: test-firstboot-ubuntu-12.04.sh SKIP: test-firstboot-ubuntu-16.04.sh SKIP: test-firstboot-ubuntu-14.04.sh SKIP: test-password-centos-7.2.sh SKIP: test-password-debian-6.sh SKIP: test-password-debian-8.sh SKIP: test-password-fedora-25.sh SKIP: test-password-debian-7.sh SKIP: test-password-rhel-3.9.sh SKIP: test-password-rhel-5.11.sh SKIP: test-password-rhel-4.9.sh SKIP: test-password-rhel-6.9.sh SKIP: test-password-rhel-7.2.sh SKIP: test-password-ubuntu-10.04.sh SKIP: test-password-ubuntu-12.04.sh SKIP: test-password-ubuntu-14.04.sh SKIP: test-password-ubuntu-16.04.sh SKIP: test-settings-rhel-4.9.sh SKIP: test-settings-rhel-5.11.sh SKIP: test-settings-rhel-6.8.sh SKIP: test-settings-rhel-7.2.sh SKIP: test-settings-debian-6.sh SKIP: test-settings-debian-7.sh SKIP: test-settings-debian-8.sh SKIP: test-settings-ubuntu-10.04.sh SKIP: test-settings-fedora-25.sh SKIP: test-settings-ubuntu-12.04.sh SKIP: test-settings-ubuntu-14.04.sh SKIP: test-settings-ubuntu-16.04.sh PASS: test-virt-customize.sh ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 41 # PASS: 2 # SKIP: 39 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/customize' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/customize' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/customize' Making check in builder make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/builder' make yajl_tests debian.xz fedora.xz ubuntu.xz fedora.qcow2 fedora.qcow2.xz make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/builder' CC yajl_tests-yajl-c.o OCAMLOPT yajl_tests.cmx rm -f debian.xz debian.xz-t xz --best -c ../test-data/phony-guests/debian.img > debian.xz-t rm -f fedora.xz fedora.xz-t rm -f ubuntu.xz ubuntu.xz-t xz --best -c ../test-data/phony-guests/fedora.img > fedora.xz-t xz --best -c ../test-data/phony-guests/ubuntu.img > ubuntu.xz-t rm -f fedora.qcow2 fedora.qcow2-t qemu-img convert -f raw -O qcow2 ../test-data/phony-guests/fedora.img fedora.qcow2-t mv fedora.qcow2-t fedora.qcow2 GEN yajl_tests rm -f fedora.qcow2.xz fedora.qcow2.xz-t xz --best -c fedora.qcow2 > fedora.qcow2.xz-t mv fedora.qcow2.xz-t fedora.qcow2.xz mv debian.xz-t debian.xz mv ubuntu.xz-t ubuntu.xz mv fedora.xz-t fedora.xz make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/builder' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/builder' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/builder' rm -f test-console-centos-7.2.sh test-console-centos-7.2.sh-t rm -f test-console-rhel-6.8.sh test-console-rhel-6.8.sh-t f=`echo "test-console-centos-7.2.sh" | /usr/bin/sed 's/test-console-\(.*\).sh/\1/'`; \ echo 'script=test-console-centos-7.2.sh exec $srcdir/test-console.sh' "$f" > test-console-centos-7.2.sh-t f=`echo "test-console-rhel-6.8.sh" | /usr/bin/sed 's/test-console-\(.*\).sh/\1/'`; \ echo 'script=test-console-rhel-6.8.sh exec $srcdir/test-console.sh' "$f" > test-console-rhel-6.8.sh-t chmod 0755 test-console-rhel-6.8.sh-t mv test-console-rhel-6.8.sh-t test-console-rhel-6.8.sh chmod 0755 test-console-centos-7.2.sh-t mv test-console-centos-7.2.sh-t test-console-centos-7.2.sh rm -f test-console-rhel-7.2.sh test-console-rhel-7.2.sh-t rm -f test-console-debian-7.sh test-console-debian-7.sh-t f=`echo "test-console-rhel-7.2.sh" | /usr/bin/sed 's/test-console-\(.*\).sh/\1/'`; \ echo 'script=test-console-rhel-7.2.sh exec $srcdir/test-console.sh' "$f" > test-console-rhel-7.2.sh-t f=`echo "test-console-debian-7.sh" | /usr/bin/sed 's/test-console-\(.*\).sh/\1/'`; \ echo 'script=test-console-debian-7.sh exec $srcdir/test-console.sh' "$f" > test-console-debian-7.sh-t chmod 0755 test-console-rhel-7.2.sh-t chmod 0755 test-console-debian-7.sh-t mv test-console-rhel-7.2.sh-t test-console-rhel-7.2.sh mv test-console-debian-7.sh-t test-console-debian-7.sh rm -f test-console-debian-8.sh test-console-debian-8.sh-t rm -f test-console-fedora-24.sh test-console-fedora-24.sh-t f=`echo "test-console-debian-8.sh" | /usr/bin/sed 's/test-console-\(.*\).sh/\1/'`; \ echo 'script=test-console-debian-8.sh exec $srcdir/test-console.sh' "$f" > test-console-debian-8.sh-t f=`echo "test-console-fedora-24.sh" | /usr/bin/sed 's/test-console-\(.*\).sh/\1/'`; \ echo 'script=test-console-fedora-24.sh exec $srcdir/test-console.sh' "$f" > test-console-fedora-24.sh-t chmod 0755 test-console-debian-8.sh-t chmod 0755 test-console-fedora-24.sh-t mv test-console-debian-8.sh-t test-console-debian-8.sh mv test-console-fedora-24.sh-t test-console-fedora-24.sh rm -f test-console-ubuntu-12.04.sh test-console-ubuntu-12.04.sh-t rm -f test-console-ubuntu-14.04.sh test-console-ubuntu-14.04.sh-t f=`echo "test-console-ubuntu-12.04.sh" | /usr/bin/sed 's/test-console-\(.*\).sh/\1/'`; \ echo 'script=test-console-ubuntu-12.04.sh exec $srcdir/test-console.sh' "$f" > test-console-ubuntu-12.04.sh-t f=`echo "test-console-ubuntu-14.04.sh" | /usr/bin/sed 's/test-console-\(.*\).sh/\1/'`; \ echo 'script=test-console-ubuntu-14.04.sh exec $srcdir/test-console.sh' "$f" > test-console-ubuntu-14.04.sh-t chmod 0755 test-console-ubuntu-12.04.sh-t mv test-console-ubuntu-12.04.sh-t test-console-ubuntu-12.04.sh rm -f test-console-ubuntu-16.04.sh test-console-ubuntu-16.04.sh-t f=`echo "test-console-ubuntu-16.04.sh" | /usr/bin/sed 's/test-console-\(.*\).sh/\1/'`; \ echo 'script=test-console-ubuntu-16.04.sh exec $srcdir/test-console.sh' "$f" > test-console-ubuntu-16.04.sh-t chmod 0755 test-console-ubuntu-14.04.sh-t mv test-console-ubuntu-14.04.sh-t test-console-ubuntu-14.04.sh chmod 0755 test-console-ubuntu-16.04.sh-t mv test-console-ubuntu-16.04.sh-t test-console-ubuntu-16.04.sh PASS: test-virt-index-validate.sh SKIP: test-virt-builder-planner.sh PASS: test-virt-builder-docs.sh PASS: test-virt-builder-list.sh PASS: test-virt-builder-list-simplestreams.sh SKIP: test-console-centos-7.2.sh PASS: yajl_tests SKIP: test-console-rhel-6.8.sh SKIP: test-console-rhel-7.2.sh SKIP: test-console-debian-7.sh SKIP: test-console-debian-8.sh SKIP: test-console-fedora-24.sh SKIP: test-console-ubuntu-12.04.sh SKIP: test-console-ubuntu-14.04.sh SKIP: test-console-ubuntu-16.04.sh PASS: test-virt-builder.sh ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 16 # PASS: 6 # SKIP: 10 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/builder' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/builder' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/builder' Making check in builder/templates make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/builder/templates' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/builder/templates' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/builder/templates' PASS: validate.sh ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 1 # PASS: 1 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/builder/templates' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/builder/templates' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/builder/templates' Making check in get-kernel make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/get-kernel' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/get-kernel' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/get-kernel' PASS: test-virt-get-kernel-docs.sh ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 1 # PASS: 1 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/get-kernel' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/get-kernel' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/get-kernel' Making check in resize make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/resize' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/resize' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/resize' PASS: test-virt-resize-docs.sh PASS: test-virt-resize.pl ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 2 # PASS: 2 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/resize' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/resize' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/resize' Making check in sparsify make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/sparsify' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/sparsify' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/sparsify' PASS: test-virt-sparsify-docs.sh PASS: test-virt-sparsify-in-place.sh PASS: test-virt-sparsify.sh PASS: test-virt-sparsify-in-place-fstrim-unsupported.sh ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 4 # PASS: 4 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/sparsify' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/sparsify' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/sparsify' Making check in sysprep make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/sysprep' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/sysprep' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/sysprep' PASS: test-virt-sysprep-docs.sh PASS: test-virt-sysprep-passwords.sh PASS: test-virt-sysprep-backup-files.sh PASS: test-virt-sysprep.sh PASS: test-virt-sysprep-script.sh ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 5 # PASS: 5 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/sysprep' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/sysprep' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/sysprep' Making check in v2v make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/v2v' make v2v_unit_tests windows.vmdk make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/v2v' CC v2v_unit_tests-libvirt_utils-c.o CC v2v_unit_tests-qemuopts-c.o rm -f windows.vmdk windows.vmdk-t OCAMLOPT v2v_unit_tests.cmx if [ -s ../test-data/phony-guests/windows.img ]; then \ qemu-img convert -f raw ../test-data/phony-guests/windows.img -O vmdk windows.vmdk-t; \ mv windows.vmdk-t windows.vmdk; \ else \ touch windows.vmdk; \ fi GEN v2v_unit_tests make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/v2v' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/v2v' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/v2v' SKIP: test-v2v-i-ova-bad-sha256.sh SKIP: test-v2v-i-ova-bad-sha1.sh SKIP: test-v2v-i-ova-good-checksums.sh PASS: test-v2v-docs.sh PASS: test-v2v-i-ova-formats.sh SKIP: test-v2v-i-ova-invalid-manifest1.sh SKIP: test-v2v-i-ova-invalid-manifest2.sh PASS: test-v2v-i-ova-gz.sh PASS: test-v2v-i-ova-subfolders.sh PASS: test-v2v-i-ova-tar.sh PASS: test-v2v-i-vmx.sh PASS: test-v2v-i-ova-two-disks.sh PASS: test-v2v-copy-to-local.sh PASS: test-v2v-bad-networks-and-bridges.sh SKIP: test-v2v-i-disk.sh SKIP: test-v2v-i-ova.sh PASS: v2v_unit_tests PASS: test-v2v-machine-readable.sh SKIP: test-v2v-virtio-win-iso.sh SKIP: test-v2v-windows-conversion.sh SKIP: test-v2v-cdrom.sh SKIP: test-v2v-floppy.sh SKIP: test-v2v-in-place.sh SKIP: test-v2v-networks-and-bridges.sh SKIP: test-v2v-no-copy.sh SKIP: test-v2v-o-glance.sh SKIP: test-v2v-o-libvirt.sh SKIP: test-v2v-o-null.sh SKIP: test-v2v-o-qemu.sh SKIP: test-v2v-o-rhv.sh SKIP: test-v2v-o-vdsm-options.sh SKIP: test-v2v-oa-option.sh rm -f test-v2v-conversion-of-centos-6.sh test-v2v-conversion-of-centos-6.sh-t f=`echo "test-v2v-conversion-of-centos-6.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-centos-6.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-centos-6.sh-t chmod 0755 test-v2v-conversion-of-centos-6.sh-t mv test-v2v-conversion-of-centos-6.sh-t test-v2v-conversion-of-centos-6.sh rm -f test-v2v-conversion-of-centos-7.0.sh test-v2v-conversion-of-centos-7.0.sh-t f=`echo "test-v2v-conversion-of-centos-7.0.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-centos-7.0.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-centos-7.0.sh-t chmod 0755 test-v2v-conversion-of-centos-7.0.sh-t mv test-v2v-conversion-of-centos-7.0.sh-t test-v2v-conversion-of-centos-7.0.sh rm -f test-v2v-conversion-of-debian-6.sh test-v2v-conversion-of-debian-6.sh-t f=`echo "test-v2v-conversion-of-debian-6.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-debian-6.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-debian-6.sh-t chmod 0755 test-v2v-conversion-of-debian-6.sh-t mv test-v2v-conversion-of-debian-6.sh-t test-v2v-conversion-of-debian-6.sh rm -f test-v2v-conversion-of-debian-7.sh test-v2v-conversion-of-debian-7.sh-t f=`echo "test-v2v-conversion-of-debian-7.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-debian-7.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-debian-7.sh-t chmod 0755 test-v2v-conversion-of-debian-7.sh-t mv test-v2v-conversion-of-debian-7.sh-t test-v2v-conversion-of-debian-7.sh SKIP: test-v2v-of-option.sh rm -f test-v2v-conversion-of-debian-8.sh test-v2v-conversion-of-debian-8.sh-t rm -f test-v2v-conversion-of-fedora-20.sh test-v2v-conversion-of-fedora-20.sh-t f=`echo "test-v2v-conversion-of-debian-8.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-debian-8.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-debian-8.sh-t f=`echo "test-v2v-conversion-of-fedora-20.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-fedora-20.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-fedora-20.sh-t chmod 0755 test-v2v-conversion-of-debian-8.sh-t mv test-v2v-conversion-of-debian-8.sh-t test-v2v-conversion-of-debian-8.sh rm -f test-v2v-conversion-of-fedora-23.sh test-v2v-conversion-of-fedora-23.sh-t f=`echo "test-v2v-conversion-of-fedora-23.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-fedora-23.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-fedora-23.sh-t chmod 0755 test-v2v-conversion-of-fedora-20.sh-t chmod 0755 test-v2v-conversion-of-fedora-23.sh-t mv test-v2v-conversion-of-fedora-20.sh-t test-v2v-conversion-of-fedora-20.sh mv test-v2v-conversion-of-fedora-23.sh-t test-v2v-conversion-of-fedora-23.sh rm -f test-v2v-conversion-of-rhel-5.10.sh test-v2v-conversion-of-rhel-5.10.sh-t rm -f test-v2v-conversion-of-rhel-6.8.sh test-v2v-conversion-of-rhel-6.8.sh-t f=`echo "test-v2v-conversion-of-rhel-5.10.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-rhel-5.10.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-rhel-5.10.sh-t f=`echo "test-v2v-conversion-of-rhel-6.8.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-rhel-6.8.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-rhel-6.8.sh-t chmod 0755 test-v2v-conversion-of-rhel-5.10.sh-t mv test-v2v-conversion-of-rhel-5.10.sh-t test-v2v-conversion-of-rhel-5.10.sh rm -f test-v2v-conversion-of-rhel-7.0.sh test-v2v-conversion-of-rhel-7.0.sh-t f=`echo "test-v2v-conversion-of-rhel-7.0.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-rhel-7.0.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-rhel-7.0.sh-t chmod 0755 test-v2v-conversion-of-rhel-6.8.sh-t mv test-v2v-conversion-of-rhel-6.8.sh-t test-v2v-conversion-of-rhel-6.8.sh rm -f test-v2v-conversion-of-rhel-7.2.sh test-v2v-conversion-of-rhel-7.2.sh-t chmod 0755 test-v2v-conversion-of-rhel-7.0.sh-t f=`echo "test-v2v-conversion-of-rhel-7.2.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-rhel-7.2.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-rhel-7.2.sh-t mv test-v2v-conversion-of-rhel-7.0.sh-t test-v2v-conversion-of-rhel-7.0.sh rm -f test-v2v-conversion-of-ubuntu-10.04.sh test-v2v-conversion-of-ubuntu-10.04.sh-t f=`echo "test-v2v-conversion-of-ubuntu-10.04.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-ubuntu-10.04.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-ubuntu-10.04.sh-t chmod 0755 test-v2v-conversion-of-rhel-7.2.sh-t mv test-v2v-conversion-of-rhel-7.2.sh-t test-v2v-conversion-of-rhel-7.2.sh chmod 0755 test-v2v-conversion-of-ubuntu-10.04.sh-t rm -f test-v2v-conversion-of-ubuntu-12.04.sh test-v2v-conversion-of-ubuntu-12.04.sh-t mv test-v2v-conversion-of-ubuntu-10.04.sh-t test-v2v-conversion-of-ubuntu-10.04.sh f=`echo "test-v2v-conversion-of-ubuntu-12.04.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-ubuntu-12.04.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-ubuntu-12.04.sh-t rm -f test-v2v-conversion-of-ubuntu-14.04.sh test-v2v-conversion-of-ubuntu-14.04.sh-t f=`echo "test-v2v-conversion-of-ubuntu-14.04.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-ubuntu-14.04.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-ubuntu-14.04.sh-t chmod 0755 test-v2v-conversion-of-ubuntu-12.04.sh-t chmod 0755 test-v2v-conversion-of-ubuntu-14.04.sh-t mv test-v2v-conversion-of-ubuntu-12.04.sh-t test-v2v-conversion-of-ubuntu-12.04.sh mv test-v2v-conversion-of-ubuntu-14.04.sh-t test-v2v-conversion-of-ubuntu-14.04.sh rm -f test-v2v-conversion-of-ubuntu-16.04.sh test-v2v-conversion-of-ubuntu-16.04.sh-t f=`echo "test-v2v-conversion-of-ubuntu-16.04.sh" | /usr/bin/sed 's/test-v2v-conversion-of-\(.*\).sh/\1/'`; \ echo 'script=test-v2v-conversion-of-ubuntu-16.04.sh exec $srcdir/test-v2v-conversion-of.sh' "$f" > test-v2v-conversion-of-ubuntu-16.04.sh-t chmod 0755 test-v2v-conversion-of-ubuntu-16.04.sh-t mv test-v2v-conversion-of-ubuntu-16.04.sh-t test-v2v-conversion-of-ubuntu-16.04.sh SKIP: test-v2v-on-option.sh SKIP: test-v2v-print-source.sh SKIP: test-v2v-sound.sh SKIP: test-v2v-trim.sh SKIP: test-v2v-i-ova-as-root.sh SKIP: test-v2v-conversion-of-centos-6.sh SKIP: test-v2v-conversion-of-centos-7.0.sh SKIP: test-v2v-conversion-of-debian-6.sh SKIP: test-v2v-conversion-of-debian-7.sh SKIP: test-v2v-conversion-of-debian-8.sh SKIP: test-v2v-conversion-of-fedora-20.sh SKIP: test-v2v-conversion-of-fedora-23.sh SKIP: test-v2v-conversion-of-rhel-6.8.sh SKIP: test-v2v-conversion-of-rhel-5.10.sh SKIP: test-v2v-conversion-of-rhel-7.0.sh SKIP: test-v2v-conversion-of-rhel-7.2.sh SKIP: test-v2v-conversion-of-ubuntu-10.04.sh SKIP: test-v2v-conversion-of-ubuntu-12.04.sh SKIP: test-v2v-conversion-of-ubuntu-14.04.sh SKIP: test-v2v-conversion-of-ubuntu-16.04.sh ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 53 # PASS: 11 # SKIP: 42 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/v2v' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/v2v' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/v2v' Making check in v2v/test-harness make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/v2v/test-harness' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/v2v/test-harness' Making check in dib make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/dib' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/dib' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/dib' PASS: test-virt-dib-docs.sh ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 1 # PASS: 1 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/dib' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/dib' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/dib' Making check in tools make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/tools' for f in tools/virt-list-filesystems tools/virt-list-partitions tools/virt-tar tools/virt-win-reg; do echo $f; done > ../po/POTFILES-pl make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/tools' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/tools' PASS: test-virt-list-filesystems.sh PASS: test-virt-tar.sh ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 2 # PASS: 2 # SKIP: 0 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/tools' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/tools' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/tools' Making check in fuse make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/fuse' make test-fuse test-guestmount-fd test-guestunmount-fd make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/fuse' CC test_fuse-test-fuse.o CC test_guestmount_fd-test-guestmount-fd.o CC test_guestunmount_fd-test-guestunmount-fd.o CCLD test-guestunmount-fd CCLD test-guestmount-fd CCLD test-fuse make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/fuse' make check-TESTS make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/fuse' make[3]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/fuse' PASS: test-guestunmount-not-mounted.sh SKIP: test-fuse-umount-race.sh PASS: test-docs.sh SKIP: /var/tmp/tmpv3HVTI/libguestfs/fuse/.libs/lt-test-guestmount-fd PASS: /var/tmp/tmpv3HVTI/libguestfs/fuse/.libs/lt-test-guestunmount-fd PASS: /var/tmp/tmpv3HVTI/libguestfs/fuse/.libs/lt-test-fuse ===========================================================================Testsuite summary for libguestfs 1.37.18 ===========================================================================# TOTAL: 6 # PASS: 4 # SKIP: 2 # XFAIL: 0 # FAIL: 0 # XPASS: 0 # ERROR: 0 ===========================================================================make[3]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/fuse' make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/fuse' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/fuse' Making check in utils/boot-analysis make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/utils/boot-analysis' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/utils/boot-analysis' Making check in utils/boot-benchmark make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/utils/boot-benchmark' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/utils/boot-benchmark' Making check in utils/qemu-boot make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/utils/qemu-boot' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/utils/qemu-boot' Making check in utils/qemu-speed-test make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/utils/qemu-speed-test' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/utils/qemu-speed-test' Making check in po-docs make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/po-docs' Making check in ja make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/po-docs/ja' make[2]: Nothing to be done for 'check'. make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/po-docs/ja' Making check in uk make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/po-docs/uk' make[2]: Nothing to be done for 'check'. make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/po-docs/uk' make[2]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs/po-docs' make[2]: Nothing to be done for 'check-am'. make[2]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/po-docs' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs/po-docs' make[1]: Entering directory '/var/tmp/tmpv3HVTI/libguestfs' make[1]: Leaving directory '/var/tmp/tmpv3HVTI/libguestfs'
Apparently Analagous Threads
- [PATCH 0/2] daemon: Replace GUESTFSD_EXT_CMD with --print-external-commands.
- [PATCH v2 00/11] btrfs support part2: qgroup/quota commands
- [PATCH 0/8] btrfs support part2: qgroup commands
- [PATCH] btrfs: Fix btrfs_subvolume_list on F18
- [PATCH 0/6] btrfs support part1: subvolume commands