commit 03936810c227454b1d40c5779732a479f3365244
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 16 10:38:16 2020 +0100

    Version 1.42.0.

commit 6b24f3c2ff6af5cde54590cf71b2e203288d145e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 16 10:55:59 2020 +0100

    build: Re-add BRANCH_TYPE=stable|development (from libguestfs).

commit df014a906fdaa25b4a597e9286dfe35bca813254
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 14 11:43:45 2020 +0100

    docs: Add release notes for 1.42 release.
    
    Also adds back the bugs-in-changelog.sh script (from libguestfs) which
    is used for preparing the list of bugs.

commit 5edfc2cb1dd59752d0bd171c6e052eae8e94cc21
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 16 09:59:47 2020 +0100

    tests: Fix EXTRA_DIST.
    
    Fixes commit c0047dfbcffb43730108d0acb9e32f5c5d5ac0f1.

commit 35b0c8b76b8baaac551f2abece37baba50c79a30
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 16 09:02:51 2020 +0100

    valgrind: Add suppression for all osinfo calls.
    
    See this thread:
    https://www.redhat.com/archives/libguestfs/2020-April/thread.html#00103
    
    Thanks: Pino Toscano.

commit fd4a37cc355c1c9f5a4cb19090b57fea54f270f4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 14 17:27:45 2020 +0200

    v2v: fix identifier for custom block for OsinfoOs
    
    Fixes commit de8f11f1356f40111c00ed0ef27b876ec75304f0.
    
    Spotted by Richard W.M. Jones.

commit cc294b7735dda467179b93a061d3631ac3547f26
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 14 11:45:13 2020 +0100

    Update gnulib to latest.

commit c87483ea71e9c0e5600f60a9e7b0ade604885b34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 22 11:44:44 2020 +0000

    build: Add build-aux/config.rpath from gettext.
    
    This is somehow required after updating gnulib.  I lack the energy to
    find out exactly why, but this fixes it.
    
    (cherry picked from commit d4a1c3a77840d8d6b5d6b3e9f57e7fa19d98db4e)

commit 6f7abd569224bae3ce5785cf28c55dd144d4e8fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 14 10:37:05 2020 +0100

    build: Use libtool instead of $(LIBTOOL) in VG macro.
    
    In commit 5f355c2952729581f1b988297fe8cabe756c01e2 I incorrectly
    rewrote ‘libtool’ from the original libguestfs file as ‘$(LIBTOOL)’.
    
    This was because of a comment that appears in the libguestfs file:
    
      Note we run libtool, not $(LIBTOOL) since the latter expands to
      libtool-kill-dependency-libs.sh
    
    Since virt-v2v doesn't have libtool-kill-dependency-libs.sh, I
    reasoned that we should change libtool back to $(LIBTOOL) and remove
    the comment.
    
    However the result of this was wrong.  $(LIBTOOL) expands to
    $(top_builddir)/libtool, but this breaks (because of the relative
    path) whenever the VG macro is used within pushd...popd pairs, as
    happens in several tests.
    
    Restoring the libguestfs version fixes this.

commit 8e870da79b5a61513f568b0b81c773084b8d7997
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 14 10:30:16 2020 +0100

    valgrind: Ignore leak of the libosinfo database.
    
    This is deliberately leaked when it is lazy-loaded, ignore memory
    leaks.

commit 9a360e67b2ffe79cc438fa76b3114139f5a562bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 6 12:23:46 2020 +0000

    valgrind: Add further suppressions for OCaml 4.10.
    
    See also:
    https://github.com/libguestfs/libnbd/commit/c260c25cf094272f26478ad3459cfc6ac1fa94b8
    
    (cherry picked from commit 55401b3f89db622f2ea25a39ae73942037347b43)

commit d6ffcba8d1ba2f9aeefc03479e9c95f8c4fd48be
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 6 17:17:25 2020 +0200

    v2v: nbdkit: change base dir for nbdkit sockets/pidfiles
    
    Since this new temporary directory will contain UNIX sockets for
    communicating with nbdkit, then its path must not be too long.
    
    Use the existing directory that libguestfs exposes for this, i.e.
    sockdir.

commit c0047dfbcffb43730108d0acb9e32f5c5d5ac0f1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 6 16:12:57 2020 +0200

    tests: fix location to generated images
    
    Some of the libvirt XMLs for tests refer to a generated phony disk
    image, and so far the relative path used worked almost by chance.
    (For each disk, the path to it was ../test-data/etc, and since the
    overlay pointing to it is stored directly in $LIBGUESTFS_CACHEDIR,
    which is $buildir/tmp, then the relative path was resolved.)
    
    Instead, have configure place the right top-level directory in those
    XMLs, so the full path points to the generated disks. This fixes the
    tests for at least two cases:
    - we change the place where the temporary overlays are stored
    - in srcdir!=builddir builds
    
    There is no functional change to the tests themselves.

commit 096aaa64cac53d9aa1486a1588ab9843ea836333
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 6 09:49:48 2020 +0100

    docs: Large files are placed in LIBGUESTFS_CACHEDIR (not TMPDIR).
    
    Fix the documentation which referred to the wrong environment
    variable.

commit 8cf4488d6bcde8dd0b84c199c96ff5763e6a08fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 10 13:13:29 2020 +0000

    build: Check for Perl Sys::Guestfs, needed to run the tests.
    
    Also remove a bogus comment - we already check for the
    OCaml guestfs module.

commit 9a3a71bc8b5030dd055636de425c93aa84de190f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 10 13:05:08 2020 +0000

    Change a few libguestfs -> virt-v2v and update copyright dates.

commit f8e4e8643f105bc2abeb6b80b17a0ded3b636b7c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 11 17:29:57 2020 +0100

    po: update podfiles
    
    Followup of commit 3c1db2f609fc531ab2e9dcefbf71c96a24308b92.

commit 79f9cd7d677df8ff5b0a32ee7b614bf368eb97ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 10 15:05:33 2020 +0000

    v2v: Use LIBGUESTFS_CFLAGS/LIBS when compiling and linking.
    
    This allows virt-v2v to be built against an uninstalled libguestfs, or
    libguestfs which is installed on a non-system library path.

commit b9539c8ab3bcda40979ad0dc561aa6f0d4103b5b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 10 18:23:09 2020 +0100

    bash: remove extra registrations
    
    The virt-v2v-copy-to-local completion script definitely does not need to
    register completions for libguestfs-test-tool, and virt-win-reg, as they
    are libguestfs tools.
    
    Also, rename the helper _guestfs_options_only to _v2v_options_only, to
    avoid potential clashes with the libguestfs completion scripts.

commit dc66e78fa37db33e3c7358b7f7c7fa809cf62f9d
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Mar 5 15:37:13 2020 +0100

    windows: delay installation of qemu-ga MSI
    
    Instead of running firstboot script during early boot schedule a task
    delayed for 2 minutes.
    
    During the first boot, after virt-v2v conversion, Windows installs the
    drivers injected by virt-v2v. When this installation is finished
    Windows enforces some kind of internal reboot. This unfortunately
    terminates any running firstboot scripts thus killing the installation
    of qemu-ga MSI.
    
    This is just a best-effort mitigation. It can still happen (e.g. with
    slow disk drives) that the drivers are not yet installed when the
    delayed installation starts. On the other hand we cannot delay it too
    much otherwise we risk that the users logs in and will be doing some
    work when the MSI installation starts. After MSI installation finishes
    the VM needs to be rebooted which would be annoying if that would happen
    under users hands. Although this is not a best fix (that may come later
    as it is more complex, e.g. introducing waiting mechanism), the delay as
    it is defined works in most cases. And it dramaticaly improves the
    situations -- originaly I experienced more than 90% failure rate.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit c6bb2b5491aced03f764887d7ae69397a0b337dc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 26 13:51:28 2020 +0100

    -o rhv-upload: fix path to nbdkit Python script
    
    Fixes commit c3a54d6aed6dfc65f9ffa59976bb8d20044c03a8.

commit 781b30c8643ef5c986b10ea62e1d184540ed8e82
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 26 09:48:42 2020 +0000

    Update common submodule to latest.

commit 3c1db2f609fc531ab2e9dcefbf71c96a24308b92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 24 11:12:51 2020 +0000

    Update common submodule.

commit 79dd6a6bbb7e95691be18f54d601318d7d713702
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Jan 16 16:05:10 2020 +0100

    add versioned directory for guest agent on EL8
    
    There was no source directory for EL8 guest agent (only EL6 and EL7).
    
    RHBZ#1791802
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 74a69a181bf2e4b26c2c15c5c33851d8f5cb4cfa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 19 18:04:10 2020 +0000

    v2v: nbdkit: Reduce message verbosity and log sizes (RHBZ#1782853).
    
    nbdkit >= 1.17.4 supports the -D nbdkit.backend.datapath=0 and
    -D vddk.datapath=0 debug flags which suppress ordinary data path
    messages (for things like pread operations).  This can be used to
    greatly reduce log sizes.

commit 62656a90910f4ba9c014a85d8b66ce90e3dee36d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 19 18:01:40 2020 +0000

    v2v: -it vddk: Only use LD_LIBRARY_PATH with nbdkit < 1.17.10.
    
    After this version of nbdkit, LD_LIBRARY_PATH is not needed or
    recommended.

commit c3a54d6aed6dfc65f9ffa59976bb8d20044c03a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 18 20:48:02 2020 +0000

    v2v: Add standalone nbdkit module.
    
    This standalone library can be used to examine nbdkit on the system,
    probe for plugins and filters, and construct and run nbdkit commands.
    
    We use this to rewrite and simplify both the Nbdkit_sources module and
    the -o rhv-upload mode.
    
    This is just refactoring, introducing common code for running nbdkit
    in all the places where it is currently used.

commit 172d13834174edded7d932bd7f4c79ca1bba949e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 18 20:20:14 2020 +0000

    v2v: Rename Nbdkit module -> Nbdkit_sources.
    
    This is in preparation for creating a new standalone library called
    Nbdkit for handling nbdkit as an abstract data type.

commit 2ca0f0b90af104e9f0de7c91bf6f0e89b795f54e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 18 20:15:48 2020 +0000

    Add a README.
    
    Acts as an introduction for people coming to the project on github.

commit 42199d7a76063b173a624ffb35cb41b2b8d8e77f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 18 12:34:16 2020 +0000

    docs: Fix corruption/confusion in documentation of VIRTIO_WIN env var.
    
    Fixes commit d2a9f66f34dce78831cbecfc5ad9600adabd121e.

commit e2ce290f6e366716f857eeaddc1dc680e5608c80
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 4 14:39:39 2020 +0000

    openstack: Increase Cinder volume attach timeout to 5 minutes (RHBZ#1685032).
    
    In some cases we have observed the time taken for a Cinder volume to
    attach to the conversion appliance can be longer than the current 60
    seconds.  Increase the timeout to 5 minutes.
    
    Thanks: Ming Xie.

commit 0edf419e983fe75daef9eaa7bd0578cbcada2e73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 15 10:55:27 2020 +0000

    docs: Fix update-crypto-policies command (RHBZ#1791257).
    
    The command as documented was wrong.  We need to use the --set option
    to change the policy.
    
    Fixes commit d5cbe7b4bee5dec9e28b1db03e933c97ef6d11e0.
    Thanks: Xiaodai Wang

commit 258e4b718d5d80c79634fe864c8c52b12e41777c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 22 15:47:12 2020 +0100

    v2v: try to get windows driver files from libosinfo
    
    Query libosinfo to get the list of files for drivers of Windows guests,
    copying them if they are local files only. In case it is not possible
    (e.g. no driver files are listed, or their location is a non-local URL,
    or they do not exists), the manual filtering of the virtio-win content
    is done as before.

commit de8f11f1356f40111c00ed0ef27b876ec75304f0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 22 15:34:55 2020 +0100

    v2v: add a minimal libosinfo interface
    
    Create a very minimal interface for libosinfo, in particular for
    OsinfoDb and OsinfoOs, aimed to get the list of device drivers for an
    OS.

commit fd0bf242414d55df62a93e7b368d8f63e8f71086
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 22 15:22:36 2020 +0100

    build: require libosinfo
    
    Require libosinfo for virt-v2v, as it will be used soon to get more
    information on guests.

commit 2d54b54e9a9eec5e3a66a074d7a67a588619eff5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 28 12:55:18 2020 +0100

    -o rhv-upload: check guest arch with cluster
    
    Get the CPU architecture of the specified cluster, and error out in case
    the architecture of the guest is not the same as the cluster one.

commit 9704167336d16d78401f45c807fe3d2702434a72
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 28 11:38:52 2020 +0100

    Add back guestcaps as parameter of output#prepare_targets
    
    It will be used to do extra checks in the output before copying the
    disks.
    
    Partially revert commit 3bafec4e693a25ef1c84abc0fd1bc3251862c7de.

commit 59f9ff40621240a6eed28c4425d3d69d8b21bc0e
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Wed Feb 5 14:11:36 2020 +0100

    windows: small tweaks of qemu-ga firstboot script
    
    - match log file with script name
    - restart manually only after successfull install, this also helps
      debugging because we can log the installer return code
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 45acf8d0557bee948c035305a6bafc6c9963a467
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Wed Feb 5 14:11:35 2020 +0100

    windows: fix detection of qemu-ga installer on RHV
    
    The detection was incorrectly matching only 32-bit installer on all
    architectures.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 68e76a4e7517d1aee7e7e092e30d73add58290fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 6 17:14:30 2020 +0000

    tests: Use explicit backing format for all backing disks.
    
    Libvirt 6.0 now requires that every disk in the backing chain has an
    explicit backing format.  For example this will be rejected by
    libvirt:
    
      qemu-img create -f qcow2 -b backing-disk disk.qcow2
    
    with the error:
    
      Original error from libvirt: Requested operation is not valid:
      format of backing image 'backing-disk' of image 'disk.qcow2' was not
      specified in the image metadata (See
      https://libvirt.org/kbase/backing_chains.html for troubleshooting)
      [code=55 int1=-1]
    
    Instead you have to use the -F option to specify the format, eg:
    
      qemu-img create -f qcow2 -b backing-disk -F raw disk.qcow2

commit 9131c652ffa2e938543e12818cc0cc460a4361ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 6 10:25:14 2020 +0000

    bundled/libvirt: Resynchronize with libvirt-ocaml sources.
    
    Synchronized with libvirt-ocaml commit
    db1e05d99b3cb195b19d531a8832b980e155cb1f, which includes
    fixes for OCaml 4.10.

commit 65353e7aaeed0a8c3dffa95fe3c5147cbd4f71d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 6 10:18:26 2020 +0000

    ocaml: Use caml_alloc_initialized_string instead of memcpy.
    
    See this commit in libguestfs-common:
    https://github.com/libguestfs/libguestfs-common/commit/398dc56a6cb5d6d01506338fa94ef580e668d5e9

commit 83a35f927a1f8b24a5bcc32c93d0aa8d9ac3c20a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 6 10:06:08 2020 +0000

    m4: ocaml: Remove HIVEX_OPEN_UNSAFE_FLAG.
    
    The test for this was missing, so it was always defined wrongly.  In
    any case nothing in libguestfs-common or virt-v2v actually uses this
    flag (it's used by the libguestfs daemon) so the code was dead.

commit 3c77c7f5c3f665f97518ea4bafac7d45ab3ac1e3
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Mon Jan 20 16:54:35 2020 +0100

    vCenter: pass user name to nbdkit curl plugin
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 1becdced2d9c247282912d9c79d0558a8f3410bf
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Mon Jan 20 14:05:41 2020 +0100

    nbdkit: fix condition in probe_filter
    
    The tests assume probe_filter returns true if the filter is available
    (and not the other way around).
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 3594f3d3972bf41087fbc426762855509fcad5e2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 17 17:10:34 2020 +0100

    -o libvirt: read pool name from object
    
    Now that we have a Libvirt.Pool object for the output storage pool,
    query it to get its name instead of reading it from the XML.
    
    The result is unchanged.

commit 9c9baae5c8e62219298f6ce5dde233068ddff23a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 17 17:07:01 2020 +0100

    -i ova: use Xml.parse_file for the OVF
    
    No need to read the whole OVF file in memory and parse that -- let
    libxml2 parse it directly.

commit 65ee9387d4be0e3c5cd214b967fef7a1a8841233
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 15 11:12:17 2020 +0000

    v2v: -o rhv-upload: Make -oo rhv-cafile optional in all cases (RHBZ#1791240).
    
    This is actually not required, because ovirtsdk4 will use the system's
    global trust store if necessary.  Therefore we can make it optional in
    all cases.

commit 2a0fb45f5f98f399e26926e56f45f9012cef8c84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 15 12:52:29 2020 +0000

    ocaml: Fix test for -runtime-variant _pic.
    
    This fails with Fedora 32, and possibly earlier versions:
    
      checking if OCaml ‘-runtime-variant _pic’ works... no
    
    The reason is:
    
      $ ocamlc -runtime-variant _pic test.ml -o test
      File "test.ml", line 1:
      Error: Cannot find file camlheader_pic
    
    which may even be a packaging error in the Fedora package.  However it
    makes no sense to test the bytecode compiler since we don't use it on
    any architecture we care about and bytecode doesn't even contain a
    linked runtime.  Changing the test to use ocamlopt instead of ocamlc
    fixes the problem.
    
    (cherry picked from
    libguestfs commit 711fab172ca2b2cad5d91636cd408dcefc5cea44)

commit 1f0fce52a60062abea632c326cc88ef437421293
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 10 16:38:43 2020 +0100

    Revamp check for Python code style
    
    It turns out that
    a) the standalone pep8 executable is deprecated in favour of pycodestyle
    b) $python-pep8 does not exist in modern distros
    and thus the style checks for Python scripts have been skipped for a
    long time.
    
    Instead, switch to pycodestyle directly, updating the list of ignored
    issues to the two categories left.

commit 0fecbb6a41ec5c858e1cb99ab3cac5d971bdeee8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 10 16:31:52 2020 +0100

    -o rhv-upload: remove unused Python imports
    
    No functional changes.

commit 42ddea4c5f52b2ba3ecd6a9c95ff3a9ece962426
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 10 16:22:26 2020 +0100

    tests: find all the Python scripts for syntax checks
    
    Find all the Python scripts in v2v, instead of hardcoding a list.

commit 555791e7e892d8052cbcacc08099315964b09dfc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 10 16:16:34 2020 +0100

    PEP 8: adapt empty lines
    
    Add or remove empty lines to match the needed ones around
    blocks/functions/etc.
    
    This is just formatting, no behaviour changes.

commit bfc2cec68b7959c3cc37d56ee2fd87672b9ee726
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 10 16:09:41 2020 +0100

    PEP 8: move imports at the top
    
    No functional changes.

commit c8e8bbc79d822436a2b5dfb2cc56ae6514ce5f3e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 10 16:03:09 2020 +0100

    PEP 8: adapt whitespaces in lines
    
    Fix continuation indentation, and whitespaces around operators.
    
    This is just code reformatting, with no behaviour changes; no content
    changed beside whitespaces, so "git diff -w" gives an empty diff

commit fbe1052589aa20ea3b74fb537c25c4c265565987
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 9 15:23:20 2020 +0100

    Update common to latest

commit 0e63bae4e84fd2a9752dbf5fa32fcb90631806e3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 17 15:38:00 2019 +0100

    build: fix make implicit dependencies on ml/mli files
    
    As proposed in the Debian bug #946594 [1], the implicit .cmi/.cmo/.cmx
    dependencies are tied to files in the source directory only, and thus
    they break when either the .ml or the .mli files are in the build
    directory. Since there is already VPATH set up by automake, rely on it
    to locate the right source.
    
    [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=946594#36
    
    Solution proposed by Vincent Danjean, thanks!
    
    This reverts commit 802c5d2055593adf6bfae796b102b8c902de571e in this
    file.
    
    See equivalent change in libguestfs:
    https://github.com/libguestfs/libguestfs/commit/4cd801dcff1393f6ffcb81cac9a6dcdb1f007bd2

commit 397b4a90d16f4eb116d55605cbdf3bd844108315
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Dec 18 12:12:26 2019 +0100

    docs: remove paragraph about VMware tools on Windows (RHBZ#1785528)
    
    Starting from libguestfs/virt-v2v 1.39.12, virt-v2v attempts to
    uninstall the VMware tools from Windows guests, so there is no need to
    remove them manually before the conversion.
    
    Thanks to: Ming Xie.

commit f170fc1b70f87a67e713f9a1b0316e2c864618f7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Dec 18 10:49:22 2019 +0100

    po: do not extract tests
    
    They do not contain messages.

commit 8ea8a3a34ebb49997a78462648ffb59ac8219c0e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 17 16:16:27 2019 +0100

    build: exclude common/windows from distcheck
    
    It is part of the common submodule but not used in virt-v2v, so it is
    not included in distribution tarballs.

commit 4d50cb8118a87cc6c96159caad38f738258c3d3d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 17 16:15:41 2019 +0100

    build: add utils.mli as mli source
    
    This way it is shipped in distribution tarballs.

commit 78843df55796d7b22c16665333c61c406f842ed3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 17 14:19:30 2019 +0100

    tests: fix srcdir references
    
    Make sure to properly reference to files in the source directory.

commit b0614f1372f1169bfdd86127167ba29f1595e12d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 17 13:01:05 2019 +0100

    tests: fix path to sources of fake-virtio-win.iso
    
    They are in the source directory, so properly point to them.

commit f1fc4d6bfb42b4a16d470fe0c9bbe55afd15128a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 17 13:00:13 2019 +0100

    libvirt-ocaml: add libvirt_c.h as source
    
    This way it is distributed in release tarballs.
    
    Followup of commit d442b09afd53d0c3c764e8d3696f56e68c2eed11.

commit 1d77179006e1aff74ffbb14361afdb7caa40e383
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 16 18:51:52 2019 +0100

    po: update POTFILES-ml
    
    Update according to the removal of the embedded copies of augeas-ocaml,
    and libvirt-ocaml from the common submodule.

commit fd4c7b1c15aa496f420e3b72f8f7c9e7969415e1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 16 18:48:15 2019 +0100

    Update common to latest

commit d83786b68e05f9c1f67621314a94b58e4d595b2b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 16 17:16:27 2019 +0100

    build: add --with-extra configure parameter
    
    Borrow this feature from libguestfs, so it is possible to "watermark"
    the virt-v2v executable with a extra string to the version string.

commit 3bd9ae08bfb29d347b31f64cb75e2e0ccfb6aa2d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 16 15:41:37 2019 +0100

    build: switch embedded copy of libvirt-ocaml
    
    Use the newer copy shipped locally as bundled, instead of the one in
    the common submodule, as the latter copy will go away soon.

commit d442b09afd53d0c3c764e8d3696f56e68c2eed11
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 16 15:26:03 2019 +0100

    Bundle the libvirt-ocaml library for use by virt-v2v
    
    Add a copy of the libvirt-ocaml library, currently available at:
      https://libvirt.org/git/?p=libvirt-ocaml.git;a=summary
    This is a snapshot at commit c4776d501309eb209211cdd46536bfe224267740,
    which has all the features we need (and that builds fine).
    It is expected to stay synchronized with upstream, until there is a new
    upstream release, and it will be widespread enough.

commit 3f8897aa36a723fe3fde5b62a6eb9ade427f77b2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 16 10:58:38 2019 +0100

    tests: use the right nbdkit python3 plugin
    
    Add the configure result in config.sh, so it can be used as variable.

commit 29604017af1eeff78a96c22e8dd91f91d7bb0971
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 16 10:43:51 2019 +0100

    Revert "tests: rhv-upload: Fix skip test of nbdkit python plugin."
    
    It will be fixed in an easier way.
    
    This reverts commit 04bb355d5c581e803585d80e786f5811f2144aac.

commit c7fd848a51fd53d8cf003d892efdb01e2b7efc0e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 16 10:42:09 2019 +0100

    build: add an empty config.sh
    
    This helper script will contain variables with results of configure
    checks, so other scripts can source it.
    
    Source it automatically in test-functions.sh, so every test can already
    make use of it.

commit eee1693831b3aecffc678350d9164ffa2dcf185f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 13 16:35:23 2019 +0100

    build: hopefully fix dependencies on generated files
    
    Make sure to directly address them by name, as the wildcard will not
    work for non-existing files.

commit b092b7fbd6f5c66376d957b3a8c42ec45d52e1e8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 13 12:43:35 2019 +0100

    build: actually require libvirt
    
    libvirt was already a required component, so make the build system
    enforce that.

commit 1477eb7be439ddead470264e281f90e65bd8d619
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 13 11:24:42 2019 +0100

    build: drop HAVE_OCAML conditionals
    
    OCaml is mandatory for virt-v2v.

commit 52d7a88aec057f8a60a8fb7d928671e7367350fb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 13 11:05:38 2019 +0100

    build: do not ship generated sources
    
    Exclude from EXTRA_DIST all the generated OCaml sources.

commit 74d073681c67daf982445fe70972e69417ff579b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 13 10:54:09 2019 +0100

    build: use the mlv2v library
    
    Instead of copying the sources of mlv2v into the v2v build directory,
    use the mlv2v convenience library instead.

commit 49098e01fd188bddfcaa702eb2d63c2ebdec9761
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 12 19:29:10 2019 +0100

    build: stop shipping files generated by configure
    
    They will be generated by configure.

commit 39c6fe5627a0c84f05fe1f901936eaa0325fd657
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 13 16:38:43 2019 +0100

    Update common to latest

commit ff7d1b2516fb877c01d2fecf509c1e5f85385840
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 12 11:22:01 2019 +0100

    tests: fix podcheck tests
    
    Pass to the various podcheck invocations the paths with POD files that
    are included.
    
    Followup of commit 51c839c77f83fae87c38ee1883ddc52c3dc1e4ad.

commit fb8524cb46f0453eb39a693d08dc729d26c10947
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 12 11:21:14 2019 +0100

    podcheck: __INCLUDE:file.pod__ and __VERBATIM:file.txt__ in POD files.
    
    See equivalent change in libguestfs:
    https://github.com/libguestfs/libguestfs/commit/b8f9bb3092dfeb15d89eb6fae703f9c475bdd117

commit c2ece94e63307e8af5a5c58ab8aafad3aecd366e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 9 15:32:38 2019 +0100

    v2v: -o libvirt: write CentOS 8 osinfo ID
    
    CentOS 8 is represented with a simpler osinfo ID without a minor
    version.

commit 40e1844827e4d096b1919a2159f9effc41915a73
Author: Nir Soffer <nsoffer@redhat.com>
Date:   Thu Nov 28 20:36:32 2019 +0200

    rhv-upload: Fix waiting for transfer
    
    We were not considering failures while initializing the transfer. In
    this case the transfer phase can change to PAUSED_SYSTEM or
    FINISHED_FAILURE, and transfer_url will be None, which failed the
    upload with a misleading error:
    
        RuntimeError: direct upload to host not supported, requires
        ovirt-engine >= 4.2 and only works when virt-v2v is run within the
        oVirt/RHV environment, eg. on an oVirt node
    
    Change the wait loop to consider all cases:
    - Transfer failed and was removed
    - Transfer failed and will be removed soon
    - Transfer paused by the system (cancel required)
    - Unexpected transfer phase (cancel required)
    - Timeout waiting for TRANSFERRING state (cancel required)
    
    Reported-by: Xiaodai Wang

commit 02bba57e12cd5506dde06dce7d99d6f4e84897a1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 10 17:46:23 2019 +0100

    po: update podfiles
    
    Followup of commit 51c839c77f83fae87c38ee1883ddc52c3dc1e4ad.

commit 04bb355d5c581e803585d80e786f5811f2144aac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 29 08:00:03 2019 +0000

    tests: rhv-upload: Fix skip test of nbdkit python plugin.

commit 51c839c77f83fae87c38ee1883ddc52c3dc1e4ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 29 09:03:13 2019 +0000

    docs: Use common documentation for --key SELECTOR.
    
    See equivalent change in libguestfs:
    https://github.com/libguestfs/libguestfs/commit/8ba0457e9eb4daac2d878e9822dfc604c0f89852

commit 9ce868234bd13e93db566501341d0fcd038b45dc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Nov 28 13:35:48 2019 +0100

    v2v: require 100 available inodes on each filesystem
    
    Enough free space in a filesystem does not imply available inodes to
    create/modify files on that filesystem.  Hence, require at least 100
    available inodes on filesystems that can provide inode counts.
    
    Related to: RHBZ#1764569

commit 48455a9185543bd6273fa881184caa10f01b606f
Author: Nir Soffer <nsoffer@redhat.com>
Date:   Tue Nov 26 04:24:06 2019 +0200

    rhv-upload: Support qcow2 disk format
    
    When using oVirt >= 4.3, we can enable the NBD based backend in imageio
    by specifying that we transfer raw data when creating a transfer. With  
    the NBD backend, we can import to disks using qcow2 format.
    
    To make it work, we override output#transfer_format to return always raw
    format, but we create the disk on RHV side using qcow2 format.
    
    The pipeline looks like this:
    
        qemu-img convert <nbd> rhv-upload <http> imageio <nbd> qemu-nbd

commit 9fb988c077c775e5b75944784361cfe79e0ad8ff
Author: Nir Soffer <nsoffer@redhat.com>
Date:   Tue Nov 26 04:10:22 2019 +0200

    v2v: Add output#tranfer_format method
    
    Typically the transfer format is the same as the target format. But some
    outputs may want to override the transfer format but create disks using
    target format.
    
    This change does not affect existing outputs, but will using raw
    transfer format in rhv_upload when using qcow2 target format.

commit 893fda48008ab5a9f260f2d007be644327d914de
Author: Nir Soffer <nsoffer@redhat.com>
Date:   Tue Nov 26 01:16:14 2019 +0200

    rhv-upload: Log params for easier debugging
    
    Log the params dict passed from v2v to the plugin for easier debugging.
    
    Here is an example output:
    
    using params: {'diskid_file': '/home/nsoffer/src/virt-v2v/tmp/rhvupload.To9y8J/diskid.0',
    'disk_size': 6442450944, 'disk_format': 'raw', 'disk_name': 'v2v-000', 'output_name': 'v2v',
    'verbose': True, 'output_conn': 'https://engine/ovirt-engine/api', 'output_password': '/var/tmp/engine-password',
    'output_storage': 'nfs1-export2', 'output_sparse': True, 'rhv_cafile': '/etc/pki/vdsm/certs/cacert.pem',
    'rhv_cluster': 'fc30', 'rhv_direct': True, 'insecure': True}

commit b7f4c8ffae08f4176ed9eee4e9ac6fa5497d75f9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 27 15:18:15 2019 +0100

    Remove extra entries from podfiles

commit 91e23acbe555b9a2175cf16e7e8110162f720221
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 27 15:17:47 2019 +0100

    build: remove unused gnulib modules
    
    Leave only the modules explicitly used.

commit 9ae648991a14bb877a389f2f1b1eaec0fcb9894f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 27 15:15:01 2019 +0100

    build: stop using gnulib in test-harness
    
    It does not directly use gnulib headers, and none of its OCaml helper
    submodules link to gnulib.

commit db9aeeef59341592ab379b79e571ec185f7da1ae
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 27 14:48:17 2019 +0100

    build: remove extra checks and submodules
    
    Remove various redundant checks for headers, functions, libraries,
    tools, and other stuff not actually used neither by virt-v2v nor by its
    submodules from common.
    
    Also, stop building the mlaugeas, and windows submodules, as they are
    not used.

commit 50b6e09c145eb607af606c535345cfdf266c2719
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 27 14:45:49 2019 +0100

    build: remove extra gnulib submodule
    
    There is already the "gnulib" submodule, so the ".gnulib" submodule is
    redundant.  Moreover, it is not actually used by git, as its name starts
    with dot (which is a configuration separator).

commit 9fca8345176d88934cf1f351633e5149175839fb
Author: Nir Soffer <nirsof@gmail.com>
Date:   Thu Nov 21 17:34:31 2019 +0200

    rhv-upload: Handle any error in NBD handlers
    
    Currently we handle only HTTP errors like getting unexpected response
    code from imageio server. However if we could not send the request, or
    some other error is raised, we failed to mark the handle as failed, and
    finalized the transfer in close(). This may fool virt-v2v to create a VM
    with an empty or partially uploaded disk.
    
    Decorate all the NBD hander functions with a @failing decorator,
    ensuring that any error in the decorated function will mark the
    handle as failed.
    
    Since errors are handled now by @failing decorator, remove the code to
    mark a handle as failed in request_failed().

commit 75fcf46379ec8cad31684f3ca3dd24caa7aaaa46
Author: Nir Soffer <nirsof@gmail.com>
Date:   Wed Nov 20 01:19:33 2019 +0200

    rhv-upload: Extract finalize_transfer() function
    
    Extract finalize_transfer() function hiding the complexity of finalizing
    and waiting for a transfer, and separating plugin logic like writing the
    disk_id file from oVirt logic.
    
    Since canceling a transfer is not part of finalizing, but the current
    plugin policy, move cancellation after finalize failure to close().
    
    When waiting for the disk status change, handle the ILLEGAL status, so
    we can fail quickly if oVirt failed to finalized and paused the
    transfer, instead of waiting for timeout.

commit d08cda73ea754f513fdbb4651ca4f70ce9024eee
Author: Nir Soffer <nirsof@gmail.com>
Date:   Wed Nov 20 01:19:32 2019 +0200

    rhv-upload: Extract cancel_transfer() function
    
    Extract a cancel_transfer() function, so we can cancel a transfer in
    plugin handlers without keeping the transfer_service around.
    
    Fixes a NameError when starting a transfer fails:
    
        During handling of the above exception, another exception occurred:
    
        Traceback (most recent call last):
          File "/var/tmp/rhvupload.Vw0CIU/rhv-upload-plugin.py", line 97, in open
            transfer_service.cancel()
        NameError: name 'transfer_service' is not defined
    
    Thanks: Martin Kletzander

commit 84a865d9603657d5ba97e28c1dd32f57babf8a64
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 21 09:12:01 2019 +0000

    v2v/rhv-upload-plugin.py: Fix typo in comment.

commit 508cda917ad106ba4759eb2df98e28f97b4a4583
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 19 15:36:53 2019 +0000

    Add license file.

commit f80f1c31c9446f326484ae93ba4919586f4f3df8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 19 15:25:07 2019 +0000

    po: Remove some POTFILES-ml which aren't included in the tarball.

commit b411fe23e4644eadb3b144f71cf76c1169c156e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 19 14:54:32 2019 +0000

    Version 1.41.8.

commit b8b9dcc90dbd91aec4b6bb82dd511d453f77aab9
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:50 2019 +0200

    rhv-upload: Clean up username and password
    
    Extract functions for getting the username and password, cleaning up
    open().

commit 2171e1ca446d0108a2d863e9db2db4f926839b70
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:49 2019 +0200

    rhv-upload: Extract optimize_http() helper
    
    Extract the code for optimizing the http connection using unix socket to
    a helper function. Calling the new function inside the try block ensure
    that errors creating the connection will cancel the transfer.

commit c1d53027efd751a8c4c9ddbbb007626b223988fd
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:48 2019 +0200

    rhv-upload: Extract get_options() helper
    
    Extract the code for sending OPTIONS request and handling response for
    new and old imageio daemon and proxy to a helper function.
    
    The response from imageio is normalized as a dict to make it easier to
    handle the various combinations.

commit 67abc517c8037fbcf641cd2dfeb14237cc088cbc
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:47 2019 +0200

    rhv-upload: Extract imageio helpers
    
    Starting an upload to imageio is complex. Starting extracting helpers to
    make the flow more clear:
    - parse_transfer_url(): Select and parse the transfer url.
    - create_http(): Create http connection for the selected url.
    
    Cleanup error handling by adding a try block after creating the
    transfer. Every error in this try block will cancel the transfer before
    raising the error. When the refactoring is done, all the code in open()
    will be protected by this try block.

commit d4ca9b6ca42d4ad3c717f5c59402ca6ff5d322bb
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:46 2019 +0200

    rhv-upload: Show transfer id in error message

commit 46c5f4c0a1394fca96481ee7f171710f14c66341
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:45 2019 +0200

    rhv-upload: Extract create_transfer() function
    
    Creating a transfer is complex and clumsy. Extracting the code to a
    helper function will clean up open() and make it easier to improve error
    handling.

commit 375930f3fa3f57bf4a01f54005a4f48e4014b805
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:44 2019 +0200

    rhv-upload: Get host before creating disk
    
    If getting the host object raised, we forgot to remove the disk. Getting
    the host object before creating the disk avoids the error handling, and
    will fail faster on errors, without waiting until the disk is ready.
    
    This will help to extract the code for creating transfer out of open().

commit 6e7bb491cc59359baa3082ccc59fac491f0d7a03
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:43 2019 +0200

    rhv-upload: Don't keep transfer_service in handle
    
    Instead of keeping the transfer_service in the handle, extract the
    transfer service object in close() using the transfer id.
    
    This will make it easier to extract the code for creating a transfer out
    of open().

commit 1b984f1706bbcf790431fae03e50dae1d0ceb6fa
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:42 2019 +0200

    rhv-upload: Show disk id in error message
    
    Having more context in errors makes debugging easier.

commit 8fd3034b81bc897c46e77d05d58d9f0bb25e001a
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:41 2019 +0200

    rhv-upload: Keep disk_id in handle
    
    We kept the disk object for its id. Replace it with the disk id. This
    can make debugging easier when we log the handle.

commit b7d52aad94bac2e6269718e691e46c9b2106d561
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 23:53:40 2019 +0200

    rhv-upload: Cancel transfer if finalize failed
    
    If engine fails to finalize the transfer, for example due to
    inaccessible storage, it will move to "paused by system" state and keep
    the disk. We need to cancel the transfer to have the disk removed.
    
    Thanks: Daniel Erez.

commit ce191c5c7df30f4e60953806fe2ea5e2eec0e981
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 01:04:31 2019 +0200

    rhv-upload: Extract create_disk() function
    
    Creating a disk is complex and clumsy. Moving the code to a helper
    function cleans open() and will make it easier to fix error handling.

commit b21d42acebf9840d7c25fd6dbca2709b6303876f
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 01:04:28 2019 +0200

    rhv-upload: Fix cleanup after errors
    
    When request failed, we paused the transfer. This is not needed since
    our intent it to cancel the transfer.
    
    When closing after failure, we canceled the transfer and removed the
    disk. This is not needed since the transfer owns the disk and will
    remove it when canceled.
    
    When finalizing times out, we canceled the transfer and removed the
    disk. This is not needed since the transfer will clean it self, and
    likely to fail because cancelling is not possible after finalizing.

commit f757e7c925136c16f18589f91975a3c21caf46d0
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 01:04:30 2019 +0200

    rhv-upload: Don't keep disk_service in handle
    
    We don't need to keep the disk_service object in the handle since it can
    be extracted from the connection and the disk id. This will make it
    easier to extract the code for creating a disk from open().

commit 50842e898c1d4562397f5d92b4bd340bc6bed1df
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 01:04:29 2019 +0200

    rhv-upload: Group oVirt SDK functions
    
    Group together functions for working with oVirt SDK. Currently we have
    only one (find_host), but I plan to extract other functions to make the
    flow more clear and fix error handling.
    
    Maybe these functions can be in a separate module, shared with other
    oVirt plugins. Starting with minimal change of grouping them.

commit 64e73c87688d3263f2b680fcb78eb45596b45423
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 01:04:27 2019 +0200

    rhv-upload: Ensure http is closed in close()
    
    After failure we forgot to close the http connection.

commit 5f9aec18263a2bae714a2f5edd14a50e68af4e91
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 01:04:26 2019 +0200

    rhv-upload: Ensure connection is closed in close()
    
    Previously the connection could be left open after close() if finalizing
    the transfer failed.

commit 757dab465181b4b0664f2a48dbc02dd5e7498643
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 01:04:25 2019 +0200

    rhv-upload: Don't flush() in close()
    
    Closing a file does not issue fsync() for the caller, and is also
    unsafe if previous fsync() failed. Clients should issue flush() and
    check the result.
    
    In imageio logs we see that every upload ends with 3 flushes:
    
    2019-11-09 20:07:48,223 INFO    (Thread-200) [images] [local] WRITE size=65536 offset=6442385408 flush=False ticket=a3981648-41b4-4b98-9937-6d42e7df1bfa
    2019-11-09 20:07:48,228 INFO    (Thread-200) [images] [local] FLUSH ticket=a3981648-41b4-4b98-9937-6d42e7df1bfa
    2019-11-09 20:07:48,229 INFO    (Thread-200) [images] [local] FLUSH ticket=a3981648-41b4-4b98-9937-6d42e7df1bfa
    2019-11-09 20:07:48,231 INFO    (Thread-200) [images] [local] FLUSH ticket=a3981648-41b4-4b98-9937-6d42e7df1bfa
    2019-11-09 20:07:48,233 INFO    (Thread-200) [http] CLOSE client=local [connection=17.320226/1, dispatch=13.651897/2151, operation=12.640790/2151, read=0.517585/1876, write=9.985399/1876, zero=0.652223/272, flush=0.000034/3]
    
    Removing flush() in close() should remove one of the 3 flush calls, so
    now we flush() only twice.

commit 8816c5db220f518ef70beec7ac543290e3d5c0c7
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 01:04:24 2019 +0200

    rhv-upload: Check status more frequently
    
    Checking status more frequently save a couple of seconds. Here is
    an example flow tested with oVirt upload_disk.py example:
    
    With 5 seconds wait:
    
    Created disk in 11.085111 seconds
    Created transfer in 1.857502 seconds
    
    With 1 second wait:
    
    Created disk in 4.991227 seconds
    Created transfer in 1.961243 seconds

commit d9181dac55bf46cfa67a62531d191e25517c1a63
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Nov 18 01:04:23 2019 +0200

    rhv-upload: Remove unused exception class

commit d5ce9c91469d3d384aa32735453a1f8a20d4ec25
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 18 10:11:57 2019 +0000

    tests: Add TESTS_ENVIRONMENT in a couple of makefiles.
    
    We were accidentally testing the installed virt-v2v rather than the
    locally built one.

commit fffa7732c5d4899217c36985f1ef753d2469f1cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 18 09:46:49 2019 +0000

    m4: Relax dependency on libguestfs versions.
    
    1.41 was only required to run a single test, but in all other respects
    1.40 works fine.  Relax the dependency and fix the test instead.
    
    Thanks: Nir Soffer.

commit 8cab32c0eb4b455d7f0700ef5966eed3a23b6327
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 18 09:45:05 2019 +0000

    m4: Remove daemon checks and dependency on hivex.
    
    Now that we've split out virt-v2v, there's no daemon, and hivex is not
    required (since it is only used through the guestfs API).

commit 48afc3b004e44feaf3844c5eeb96e2a1aadbeb03
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 18 09:44:12 2019 +0000

    m4: Check that ocaml 'guestfs' module is available.
    
    It is required to compile virt-v2v after we split out libguestfs and
    virt-v2v.
    
    Thanks: Nir Soffer.

commit 3c0bbe66da478b38b1618836540579e17b946311
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 12 15:02:54 2019 +0000

    Version 1.41.7.

commit 7681bcbda77f56fa620c5047c7ddb777695037a4
Author: Martin Kletzander <mkletzan@redhat.com>
Date:   Thu Nov 14 13:39:39 2019 +0100

    nbdkit: Use cacheextents if possible for vddk input
    
    It does not need configuring and speeds up the process of requesting extents if
    the client asks for them one by one (like qemu-img).
    
    Signed-off-by: Martin Kletzander <mkletzan@redhat.com>

commit 756e29fdc9c1921f573bdcb5772c15f1201564e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 12 18:31:16 2019 +0000

    autogen: Fix detection of gnulib submodule status.
    
    Don't require a rebuild every time the common module changes status.
    
    Cherry picked from libguestfs
    commit ededdce3c11d8e767d136130a15afe5941a1010c.
    
    For virt-v2v I re-added the cfg.mk file in this commit.  It is called
    from maint.mk.

commit e468bfec88fdc3885afef0fbf71979e673a163cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 12 15:02:18 2019 +0000

    po-docs: Rename pot file to virt-v2v-docs.pot.
    
    This contains the translations of man pages and similar,
    built using po4a.

commit cf93cbf4bf678b879d48f7ef2e3cee588b0131fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 12 15:03:49 2019 +0000

    build: Ignore ChangeLog file and tarball, built by make dist.

commit 387e606040ad8fd66aec8d10f220d62430d32448
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 12 15:01:03 2019 +0000

    build: Fix make maintainer-check-extra-dist.

commit 2193196aebd43ed2c330037a38780e20bac002ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 12 12:08:35 2019 +0000

    docs: Add hacking instructions from libguestfs.git.

commit 4150e13db657aef62531520843ccf8f9a7e22150
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 12 12:08:16 2019 +0000

    tests: Add regression test from libguestfs.git which is relevant to virt-v2v.

commit bc14a0440767df3ce33156ecc232378c14b933a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 12 12:07:48 2019 +0000

    Copy parts of TODO relevant to virt-v2v from libguestfs.git.

commit 2aa78ade2d48e926b7b04050338ebd8a0c5e3f05
Author: Nir Soffer <nirsof@gmail.com>
Date:   Fri Nov 1 22:56:18 2019 +0100

    v2v: Optimize convert for images with small holes
    
    "qemu-img convert" detects zeroes in allocated areas and punch holes in
    the destination image. This may save space on the destination image, but
    slows down conversion when using outputs such as rhv-upload, which have
    very large overhead per requests.
    
    Using the -S flag, we can treat small areas filled with zeroes as data,
    limiting the number of requests, and speeding the operation.
    
    Here is an example converting Fedora 30 image:
    
    $ virt-builder fedora-30 -o src.img
    ...
    
    $ qemu-img map -f raw --output json src.img | wc -l
    213
    
    $ qemu-img convert -f raw -O raw -t none -T none src.img dst.img
    
    $ qemu-img map -f raw --output json dst.img | wc -l
    1443
    
    $ ls -lhs *.img
    1.2G -rw-r--r--. 1 nsoffer nsoffer 6.0G Nov  1 21:48 dst.img
    1.2G -rw-r--r--. 1 nsoffer nsoffer 6.0G Nov  1 21:46 src.img
    
    Qemu did 1443 writes instead of 213 (5.8X). Lets repeat this conversion
    with the -S option:
    
    $ qemu-img convert -f raw -O raw -t none -T none -S 64k src.img dst.img
    
    $ qemu-img map -f raw --output json dst.img | wc -l
    213
    
    $ ls -lhs *.img
    1.2G -rw-r--r--. 1 nsoffer nsoffer 6.0G Nov  1 21:48 dst.img
    1.2G -rw-r--r--. 1 nsoffer nsoffer 6.0G Nov  1 21:46 src.img
    
    Picking a good value for -S is not easy. Testing show that 64k is best
    value for this test image for limiting the number of requests:
    
    $ for size in 4k 8k 16k 32k 64k; do \
        printf "%5s: " $size; \
        qemu-img convert -f raw -O raw -t none -T none -S $size src.img dst.img; \
        qemu-img map -f raw --output json dst.img | wc -l; \
    done
       4k: 1443
       8k: 731
      16k: 521
      32k: 387
      64k: 213
    
    We need more testing with oVirt to measure the performance improvement
    and pick a good value. This should probably be an option, but lets start
    with a minimal change.

commit 6935dbde0ba65bb29901903f0e17e985c6cf7b29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 16 22:46:55 2019 +0100

    po-docs: Remove references to non-v2v man pages.
    
    Fixes commit 5f355c2952729581f1b988297fe8cabe756c01e2.

commit 21ee3e29ef65b7e57d3e80e1e39722a463548117
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 16 22:41:35 2019 +0100

    build: Remove some common modules which are not used by virt-v2v or deps.
    
    Fixes commit 5f355c2952729581f1b988297fe8cabe756c01e2.

commit d28534a1130bfa082a5d963bd2da0f7663f7e8b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 16 18:34:03 2019 +0100

    Move documentation files to new docs/ subdirectory.

commit cda4296899405fb1d0f9bd103028f087d65a3012
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 16 18:27:40 2019 +0100

    Move v2v/test-harness to new top-level directory.
    
    Now there is a separate repo, no need for this to be in a
    subdirectory.

commit d5799461891cfeabd6db9c7a21626043e19875dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 16 18:14:14 2019 +0100

    Move tests to tests/ directory.
    
    Start to split up the large v2v/ directory into components to make the
    code more tractable.

commit 5f355c2952729581f1b988297fe8cabe756c01e2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 14:32:57 2019 +0100

    Add back basic build environment.
    
    Largely copied from original libguestfs.git.

commit f3210df238eafbe0825f2a218762f374a342f780
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 16 16:54:53 2019 +0100

    v2v/test-v2v-o-json.sh: Echo commands in test.
    
    Make it easier to see which particular command failed.

commit 2151a5034c725a69288a217024509c4db9191777
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 16 14:02:35 2019 +0100

    v2v: Replace Guestfs_config with virt-v2v's own Config module.

commit a02c6506e003b27f3c7350dd2e574f6f9b27942a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 12:55:08 2019 +0100

    customize, v2v: Remove existing file before copying.
    
    The generator creates these files with 0444 mode, so they cannot be
    overwritten by a simple ‘cp’ command.  We could use ‘cp -f’ or ‘rm -f’.
    
    Fixes commit 15394cb4ddb08f4650fc45bc6ca617ade6ec51a2.

commit ee40976b6ce5327347bd1446efff9024acad218a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 16:26:46 2019 +0100

    generator, customize, v2v: Only place generated files in libguestfs or common.
    
    After the proposed split of the libguestfs repo, we will end up with
    the following layout:
    
      libguestfs.git
          common -> git submodule libguestfs-common.git
          generator
    
      virt-v2v.git
          common -> git submodule libguestfs-common.git
    
      guestfs-tools.git
          common -> git submodule libguestfs-common.git
    
    The generator will only be able to write to libguestfs directories and
    the common directory/submodule.  This is mostly the case already with
    only 6 exceptions:
    
      customize/customize-options.pod
      customize/customize-synopsis.pod
      customize/customize_cmdline.ml
      customize/customize_cmdline.mli
      v2v/uefi.ml
      v2v/uefi.mli
    
    This commit moves these files around so they appear under common/ml*
    
    It is somewhat unsatisfactory because it involves copying files
    around, but there are some mitigating factors:
    
    (1) Any changes now give us more freedom to develop faster and thus
    clean things up in future.
    
    (2) The v2v/uefi files ought to go away in future anyway.
    
    This is simple code motion and should have no effect on the built
    programs or tests.

commit 7e7e0b51ea35f63b87231d216b95d8d0d14ec388
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 15:28:28 2019 +0100

    v2v: virt-v2v doesn't need to link directly with -lutils.
    
    It is linked indirectly via mlcutils.cmxa.

commit 43b982e57b7fe0a94e53f5969a6a01ddf75ea3d8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 11:35:52 2019 +0100

    customize: Move Firstboot and SELinux_relabel modules to common/mlcustomize.
    
    These two modules are a dependency of virt-v2v.  Since we intend to
    split virt-v2v from the other OCaml virt-* programs, we cannot have a
    dependency between virt-v2v and virt-customize.  Instead we must move
    the modules to a common directory (common/mlcustomize) and have both
    tools depending on the modules from there.
    
    This is simple refactoring and should not affect how the programs work
    or are tested.

commit a4c70e3506b751db40cf6e8baef695ca966287c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 12:36:13 2019 +0100

    .gitignore: Ignore website/download/builder/*.xz.
    
    This makes it easier to run the slow tests by copying the virt-builder
    templates into this directory.

commit 0884a7f42ac259e00cb3aa65cc40b26372b8b9e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 16:25:48 2019 +0100

    v2v: Split out source and source_disks.
    
    Remove the source.s_disks field and keep it as a separate list.
    
    This is just refactoring.  For more about the purpose of this change:
    https://www.redhat.com/archives/libguestfs/2019-October/msg00072.html

commit 3bafec4e693a25ef1c84abc0fd1bc3251862c7de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 16:12:41 2019 +0100

    v2v: Remove 4 unused parameters to output#prepare_targets.
    
    Not used by any existing output mode, remove the parameters.

commit fd0b471cc369dc9512d8a0721a2b200d4755c6fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 16:03:33 2019 +0100

    v2v: Don't pass full metadata to output#prepare_targets.
    
    The existing output objects only used the s_name field so pass that
    instead.  (There was one minor exception: -o libvirt adjusted an error
    message based on the hypervisor field but that was simply to fix.)

commit 258444a3465c7e7823436edf446c84c31a538999
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 15:56:51 2019 +0100

    v2v: Pass source.s_disks to conversion fn instead of whole metadata.
    
    Existing conversions do not use anything except the source disks, so
    only pass this.
    
    This also renames src_disks -> source_disks in a few places for
    consistency.
    
    Pure refactoring with no change in function, designed to reduce
    coupling between stages.

commit 89a2042ab7c3a3398679c8e0297382d66ad4fbdd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 15:33:51 2019 +0100

    virt-tools: Remove -Ifish from various tools.
    
    Appears to be a copy and paste error.  At least, I cannot understand
    why any of these tools would borrow source code from guestfish.

commit a33e878221aa6f64da2979c6ff694ee0b55b3fa1
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Oct 8 13:16:38 2019 +0200

    v2v: windows: install QEMU Guest Agent MSI
    
    Use firstboot script to install MSI with QEMU-GA from virtio-win ISO or
    oVirt/RHV guest tools ISO.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 15d2399a32a1b9d48311d589b9cb6115a64df694
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 9 19:14:12 2019 +0100

    Version 1.41.5.

commit ec0ce53fa16c0153bf41c68f7d9f3c65bd4a2e9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 4 16:09:42 2018 +0000

    v2v: Copy static IP address information over for Windows guests (RHBZ#1626503).
    
    For Linux the guest itself remembers the IP address associated with
    each MAC address.  Thus it doesn't matter if the interface type
    changes (ie. to virtio-net), because as long as we preserve the MAC
    address the guest will use the same IP address or the same DHCP
    configuration.
    
    However on Windows this association is not maintained by MAC address.
    In fact the MAC address isn't saved anywhere in the guest registry.
    (It seems instead this is likely done through PCI device type and
    address which we don't record at the moment and is almost impossible
    to preserve.)  When a guest which doesn't use DHCP is migrated, the
    guest sees the brand new virtio-net devices and doesn't know what to
    do with them, and meanwhile the right static IPs are still associated
    with the old and now-defunct interfaces in the registry.
    
    We cannot collect the required information from within the guest.
    However we can collect it outside the tool by some other means
    (eg. using VMware Tools APIs) and present this information to virt-v2v
    which then writes it into the Windows guest at firstboot time.
    
    This commit adds the --mac ..:ip:.. sub-option which creates a
    Powershell script to set network adapters at firstboot.  An option
    such as:
    
      --mac 00:0c:29:e6:3d:9d:ip:192.168.0.89,192.168.0.1,24,192.168.0.254
    
    approximately turns into this script:
    
      # Wait for the netkvm (virtio-net) driver to become active.
      $adapters = @()
      While (-Not $adapters) {
          Start-Sleep -Seconds 5
          $adapters = Get-NetAdapter -Physical |
                         Where DriverFileName -eq "netkvm.sys"
      }
      $mac_address = '00-0c-29-e6-3d-9d'
      $ifindex = (Get-NetAdapter -Physical |
                     Where MacAddress -eq $mac_address).ifIndex
      if ($ifindex) {
          New-NetIPAddress -InterfaceIndex $ifindex
                           -IPAddress '192.168.0.89'
                           -DefaultGateway '192.168.0.1'
                           -PrefixLength 24
          Set-DnsClientServerAddress -InterfaceIndex $ifindex
                           -ServerAddresses ('192.168.0.254')
      }
    
    Thanks: Brett Thurber for diagnosing the problem and suggesting paths
    towards a fix.

commit 75eaec1b05d3183819f5a40d0595e462a338c94f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 4 16:09:42 2018 +0000

    v2v: windows: Add a helper function for installing Powershell firstboot scripts.

commit 1318d7e6c3f7da2510321aecc7dd2d49d4c143f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 8 13:29:23 2019 +0100

    Update website/download/builder/index.
    
    Fixes commit a3320aaa500296986bedeb12942b8d2809ce8d93.

commit 44f8b4483cfb7e8ed3d82dad6fb06485f6955304
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 20 10:25:02 2019 +0100

    v2v: nbdkit: Add the retry filter unconditionally if it exists.
    
    This experimental filter can be used to work around brief
    interruptions in service, such as the network going down, firewalls
    timing out connections etc., without requiring virt-v2v to be rerun.

commit 22171a97812f0e7556a1adeca4c2e108c6f4082d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 17 12:15:40 2019 +0100

    v2v: Implement SSH password authentication for Xen and VMX over SSH.
    
    For example:
    $ virt-v2v -i vmx -it ssh -ip /tmp/passwd \
        'ssh://root@esxi/vmfs/volumes/datastore1/Windows/Windows.vmx' -o null

commit 2e5cc2b02632b16dc3b692ce706e8272b502486b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 9 12:22:17 2019 +0100

    v2v: Implement the --bandwidth* options to control network bandwidth.
    
    For input methods which use nbdkit, we can cheaply add
    nbdkit-rate-filter to control input-side network bandwidth.  These
    options control that filter.  We can choose to set the bandwidth
    statically and optionally change it dynamically:
    
      --bandwidth 10M
        # static bandwidth of 10 Mbps, no dynamic adjustment possible
    
      --bandwidth 5M --bandwidth-file /tmp/bw
        # initial static bandwidth of 5 Mbps, adjustable by writing to /tmp/bw
    
      --bandwidth-file /tmp/bw
        # no initial bandwidth cap, can be added later by writing to /tmp/bw
    
    It only makes sense to control the input side since virt-v2v writes a
    lot less data than it reads.

commit d67bd7c880fadf5ced7cd9b405a5abe83d816d51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 5 16:26:01 2019 +0100

    v2v: vCenter: Replace qemu block curl driver with nbdkit-curl-plugin.
    
    Because of the self-configuring readahead plugin we can entirely get
    rid of input#adjust_overlay_parameters, which is definitely a good
    thing.

commit 82400cc670b401d2db55471cc8bf69d5dd59ee11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 5 11:27:21 2019 +0100

    v2v: -i libvirtxml: Replace qemu block curl driver with nbdkit-curl-plugin.
    
    ‘virt-v2v -i libvirtxml’ has a little-known feature where it can read
    network disks over HTTP or HTTPS.  This can be used to test VMware
    conversions without needing VMware, although as far as I can tell the
    current test suite does not use the feature.  This commit changes this
    functionality to use nbdkit-curl-plugin instead of the qemu curl
    driver.
    
    This change shouldn't affect functionality.  The readahead size is
    changed from a fixed 1M buffer to using the readahead filter which is
    self-configuring.
    
    See also commit 38bf2a0f97c2e814d28c447ff6856bdd2d68df36 which
    originally introduced this functionality in 2017.

commit 19fb2237104af28a9203b6868a850a3ab0a2ba47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 5 15:33:14 2019 +0100

    v2v: nbdkit: Add the readahead filter unconditionally if it is available.
    
    The readahead filter is a self-configuring filter that makes
    sequential reads faster when the plugin is slow (and all of the
    plugins we use here are always slow).
    
    I observed the behaviour of the readahead filter with our qcow2
    overlay when converting a guest from a vCenter source.  Even when
    doing random reads, qemu issues 64K reads which happen to also be the
    minimum request size of the readahead filter, so there is no extra
    overhead.  When doing the sequential copy the readahead filter
    performed better than qemu curl’s readahead because it scaled the
    prefetched data appropriately on long contiguous stretches and then
    shrunk it back to 64K around fragmented parts of the base image.

commit a97e6c56a0bddcc4ddf8e27e6d8b74528931afdf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 24 14:28:13 2019 +0100

    v2v: nbdkit: Add a generic function to probe if filters are available.
    
    This uses the technique described in the nbdkit-probing(1) man page.
    It should work with a wide range of versions of nbdkit, and is the one
    which the nbdkit developers currently recommend.

commit 431186a27f9c7f8bc3bda8c8d27652eaff6cc6b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 16:42:51 2019 +0100

    v2v: nbdkit: Add support for nbdkit-curl-plugin.

commit 7a6f6113a25f96c813d2e73ee7e6cbd1606cfe4b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 17:13:34 2019 +0100

    v2v: -i vmx -it ssh: Replace qemu block ssh driver with nbdkit-ssh-plugin.
    
    One immediately advantage is we can use libvirt again.

commit d4f8e5a4a01b0fbbb0158d0acc11f1920a0ac4fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 16:43:21 2019 +0100

    v2v: xen: Replace qemu block ssh driver with nbdkit-ssh-plugin.
    
    Initially this is a like-for-like replacement, but in future commits
    this will allow us to implement:
    
     - password authentication (instead of SSH agent)
    
     - bandwidth throttling
    
     - readahead
    
    Note this requires nbdkit >= 1.12.

commit 10f8324bf8b97466092f9a43951a7766e0def947
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 16:42:51 2019 +0100

    v2v: nbdkit: Add support for nbdkit-ssh-plugin.

commit 19ecf5d39cfeced21999fc6d3215ab104366fd8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 15:13:25 2019 +0100

    v2v: Generic code for querying nbdkit version and plugin.
    
    In forthcoming commits we will be adding support for ssh, curl and
    other features that require nbdkit >= 1.12.
    
    As a prelude to that work, add generic code for querying ‘nbdkit
    --dump-config’ and ‘nbdkit plugin --dump-plugin’ and checking the
    minimum version number.
    
    This changes the minimum version from 1.1.16 to 1.2, although that was
    released about a year ago and is widely available, and in any case
    we're going to require 1.12 in the next commit.

commit 8312c03dc0f688b8e99e5602658fa3e288e29156
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 09:59:25 2019 +0100

    v2v: Factor out the nbdkit VDDK code into a new module.
    
    This refactoring takes the nbdkit-specific code from the ‘-it vddk’
    mode and puts it into a separate module.  The idea is to reuse this
    module (in future commits) to support ssh, curl and rate limiting.
    
    This refactoring is not quite neutral because it moves some of the
    prechecking into the Nbdkit.create function.  This means it will
    happen a little bit later in the cycle (in input#source instead of
    input#precheck - refer to the diagram in v2v/types.mli).  However it's
    still almost in the same place and importantly still happens before we
    start copying.

commit b466949779433c79b7e9c3bfe35061c32d61ff1e
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Mon Oct 7 11:47:21 2019 +0200

    build: define CGO_CFLAGS_ALLOW with -U option we need
    
    cgo does not allow arbitrary CFLAGS to be used. Instead it contains a
    list of flags (safelist) that are allowed to be passed to the compiler.
    Sadly -U option (introduced in commit d8d8c856a1) is not among them.
    
    See: https://github.com/golang/go/issues/23672
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit f9124aa1945fb1cccfd98f21bb3c51e6a1e82a0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 09:01:32 2019 +0100

    builder: templates: Add CentOS 8.0

commit 444212826c06b3f6286047adf19d65ff8ef45202
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 09:01:05 2019 +0100

    builder: templates: Work around for CentOS 8.0 kickstart brokenness.

commit aff075099a2dc060c7e607920520bdcb707d06ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 2 14:20:37 2019 +0100

    daemon: btrfs: Fix parsing for new output from btrfs scrub.
    
    The format changed at some point breaking our existing parsing code.
    Typical example of the new format is below.
    
    UUID:             b8604449-c7b5-4d3b-9fad-56114e8594f5
    Scrub started:    Wed Oct  2 12:54:06 2019
    Status:           finished
    Duration:         0:00:00
    \tdata_extents_scrubbed: 0
    \ttree_extents_scrubbed: 16
    \tdata_bytes_scrubbed: 0
    \ttree_bytes_scrubbed: 262144
    \tread_errors: 0
    \tcsum_errors: 0
    \tverify_errors: 0
    \tno_csum: 0
    \tcsum_discards: 0
    \tsuper_errors: 0
    \tmalloc_errors: 0
    \tuncorrectable_errors: 0
    \tunverified_errors: 0
    \tcorrected_errors: 0
    \tlast_physical: 253493248

commit a8902b0057577b337e71419d398dc7d8f2d99129
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 2 10:22:47 2019 +0100

    builder: templates: Increase RAM for installation to 4G on all architectures.
    
    We thought this could solve the CentOS problem, but it did not.
    However it's probably a useful change anyway.

commit 805f5efc74f36dd666ed71405efac1afaee6a5c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 2 10:22:10 2019 +0100

    builder: templates: Add support for centos-8.0.
    
    Unfortunately I could not get the install to work yet:
    https://lists.centos.org/pipermail/centos-devel/2019-September/017813.html

commit 4db9842c893f3e1ac04c155316de983cea67220b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 27 13:56:42 2019 +0200

    v2v: -o rhv-upload: make -oo rhv-cafile optional
    
    It makes little sense to require the oVirt certificate, especially when
    the verification of the connection (-oo rhv-verifypeer) is disabled by
    default.  The only work done with the certificate in that case is
    checking that it is a valid certificate file.
    
    Hence, make -oo rhv-cafile optional, requiring it only when
    -oo rhv-verifypeer is enabled.

commit 31f2a97b05ef81fed0079997dadf30173146dfe8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 26 13:32:50 2019 +0200

    builder: templates: set "unassigned" hostname
    
    By default the installer will set the hostname to what the DHCP returns,
    exposing details of the machine where make-template.ml runs.
    
    Instead, force "unassigned-hostname.unassigned-domain" as hostname, so
    plays nicely with the hostname setting code in virt-customize.

commit 509b420f5a85fe8d0dff4a3aa535c1cd8797fe02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 20 10:34:33 2019 +0100

    website: Update index file.

commit 87615f29949266ff2eb9e17cebb458b97e263e7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 20 10:32:49 2019 +0100

    erlang: Avoid deprecation warnings.
    
    According to the Erlang website:
    
      The old legacy erl_interface library (functions with prefix erl_) is
      deprecated as of OTP 22, and will be removed in OTP 23. This does
      not apply to the ei library. Reasonably new gcc compilers will issue
      deprecation warnings. In order to disable these warnings, define the
      macro EI_NO_DEPR_WARN.
    
    That's a shame and probably means we will have to drop the Erlang
    bindings soon unless someone ports them to this new API (stable APIs
    FTW people!).  In the meantime add the flag to prevent warn-errors
    about deprecation.

commit 0bc1411fc8693dd981efef0088b3d335a11332cf
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 19 14:28:32 2019 +0200

    v2v: -o rhv-upload: use same tmpdir for Python scripts
    
    Make use of the temporary directory of the rhv-upload mode also for the
    Python scripts that the mode creates, instead of creating new
    directories.

commit e26b482994681d2cbbfbd1e8cc978110cb425c2d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 19 14:26:59 2019 +0200

    v2v: add optional tmpdir parameter for Python_script
    
    Add an optional parameter for Python_script.create, to specific the
    temporary directory to use instead of creating a new one.

commit a30383e35d348dfd47609ab5baace69c18048b66
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 19 13:50:44 2019 +0200

    v2v: linux: do not install qemu-guest-agent if already installed
    
    In case qemu-guest-agent is already installed in the guest, then do not
    attempt to install it again.
    
    Reported by Martin Kletzander.

commit 657107fda65a0d0519667269b68d98d153850c4a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 19 13:30:45 2019 +0200

    v2v: linux: install linux tools after unconfigurations
    
    Install the new tools after removing the old hypervisor tools.
    
    It should not change the result of the conversion.

commit a2786c430b2fc4e78db640a7bc0bb7e1e7185f6d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 19 12:19:09 2019 +0200

    v2v: -o rhv-upload: add -oo rhv-disk-uuid option
    
    This way it is possible to override the UUIDs of the uploaded disks,
    instead of letting RHV generate them.
    
    This can be useful to force certain UUIDs, and to specify the disks in
    --no-copy mode (which now can be used).

commit 9863044f5e825e4e29bea0310b1da0e40add579e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 19 09:52:41 2019 +0200

    v2v: -o rhv-upload: check for a valid image transfer right away
    
    Check for the INITIALIZING state of the image transfer right away,
    without waiting 5 seconds even before the first time: this way, if the
    transfer is already in the right state then there is no need to wait.

commit 78fad43306c2a3609925f998dbe6794ac1b2df7b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 19 09:39:51 2019 +0200

    v2v: -o rhv-upload: cancel disk transfer on open failure
    
    Make sure to cancel the trasfer in RHV in case of failure during the
    open/creation of the disk in RHV, so it is automatically removed.

commit 3676756547ed1fa6e0ed6f6d6c7daef9a1e28b20
Author: Martin Kletzander <mkletzan@redhat.com>
Date:   Fri Sep 20 10:53:56 2019 +0200

    build: Move po subdir after everything else except po-docs
    
    Otherwise it complains about missing files that it has no rules for, for example
    `builder/index-parser.c`.
    
    Signed-off-by: Martin Kletzander <mkletzan@redhat.com>

commit 87d3b05344b413eee5a5fe4afeab83e9af4a615c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 19 08:19:26 2019 +0200

    v2v: -o rhv-upload: adapt phony ovirtsdk4 module to recent changes
    
    Add the missing objects, methods, variables, and relations among the
    various objects.
    
    Followup/fixes commit c49aa4fe01aac82d4776dd2a3524ce16e6deed06, and
    commit 8118f28b6ff93c11f92fd65873285c2eba10ea0a.

commit 3f0584474a3ff97af2fca35210d5f19de1aa089c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 18 10:51:43 2019 +0100

    builder: templates: Add centos-7.7.

commit 1561786e83b45f317430acca9af8a5ac252ca5e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 11 16:40:47 2019 +0100

    builder: templates: Add rhel-7.7 kickstart and virt-install command.

commit 11a5d8b3ecd7701c58a9aeded0688eb140640191
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 16 14:26:07 2019 +0200

    v2v: -o rhv-upload: cancel disk transfer on failure
    
    Make sure to cancel the trasfer in RHV in case of failure during the
    copying of a disk: this way, the disk can be actually removed by RHV
    itself.

commit 326f092e6ca4172961619b9a7453a2b6f29cbbdc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 16 14:19:20 2019 +0200

    v2v: -o rhv-upload: remove uploaded disks on failure
    
    In case the whole conversion fails, run a new Python script to cleanup
    all the uploaded (and finalized) disks.

commit cb8007bbf0333ce1a1399bd41cabca5ee8c51917
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 16 14:07:22 2019 +0200

    v2v: -o rhv-upload: collect disks UUIDs right after copy
    
    Instead of waiting for the completion of the nbdkit transfers to get the
    UUIDs of the disks, use the new #disk_copied hook to do that after each
    disk is copied.
    
    This has almost no behaviour on rhv-upload, except for the --no-copy
    mode:
    - previously it used to hit the 5 minute timeout while waiting for the
      finalization of the first disk
    - now it asserts on the different number of collected UUIDs vs the
      actual targets; at the moment there is nothing else that can be done,
      as this assumption is needed e.g. when creating the OVF file

commit a04a183ff7970806ee469662ac3891fbbf36bb58
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 16 14:01:14 2019 +0200

    v2v: add output#disk_copied hook
    
    Add a simple method in the Output class to do work right after a disk
    was successfully copied.

commit cb1018d3f8c8e5117d8bfb0b19cf772903bd7081
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 13 12:40:34 2019 +0200

    v2v: -o rhv-upload: tell whether a SD actually exists
    
    If there is no DC with the specified storage domain attached to it, it
    can mean that the SD does not exist.

commit 5f923596a72bdcfcd8f294d78b391c4a388c8f56
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 12 15:21:26 2019 +0200

    v2v: -o rhv-upload: improve lookup of specified resources (RHBZ#1612653)
    
    Improve the way the precheck script checks for the specified resources:
    - look directly for a data center with the specified storage domain
    - get the storage domain object from the storage domains attached to the
      data center found
    - similarly, look for the specified cluster among the ones attached to
      the data center found
    When everything is found, return the UUID of the storage domain, and of
    the cluster back to virt-v2v, which will store them.
    
    Similarly, rework the createvm script to directly get the requested
    cluster, instead of looking for it once again.  Also, since the UUID of
    the storage domain is available in virt-v2v already, use it directly
    instead of using a placeholder.
    
    This should fix a number of issues:
    - unexisting/unattached storage domains are rejected outright
    - the cluster is rejected if not part of the same data center of the
      selected storage domain
    - renaming the specified storage domain during the data copying will not
      cause the conversion to fail (which will still use the specified
      storage domain, no matter the new name)
    
    Based on the hints by Daniel Erez in RHBZ#1612653.

commit 09f22cadbbedab6175e64e789436daa39028f599
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 12 14:17:36 2019 +0200

    v2v: -o rhv-upload: change precheck script to return a JSON
    
    This way it is possible to communicate data from the precheck script
    back to virt-v2v.
    
    For now there are no results, so the resulting JSON is discarded.

commit 4c4f0e735cedef9d76e06cb1aed50507044e70f3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 12 13:19:48 2019 +0200

    v2v: -o rhv-upload: split vmcheck out of precheck
    
    Split the VM existance check out of the precheck script to a new vmcheck
    script, and invoke that in #prepare_targets.  Invoke the precheck script
    in #precheck, as now it can be run with only values of command line
    options.
    
    This does not change which checks are performed; however, an invalid
    cluster name will make virt-v2v fail way earlier (even before connecting
    to the source).

commit 7fff98f4f3a367477c29a6b69c1de2368c373271
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 10 18:45:44 2019 +0200

    Remove remaining virt-p2v bits
    
    Remove (almost) all the remaining bits related to virt-p2v.

commit c68de87b0048557fd7e51526b55411dfb416ad00
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 10 18:29:45 2019 +0200

    Remove virt-p2v
    
    This removes only the tool itself, and all the bits strictly needed to
    not break the build.
    
    This is now available as separate tool in its own repository:
    https://github.com/libguestfs/virt-p2v

commit dccb276f7838881195e8927bd1e5c809f829fbb4
Author: Eric Blake <eblake@redhat.com>
Date:   Sat Sep 7 14:47:49 2019 -0500

    drives: Typo fix
    
    Favor 'atomically' over 'atomicly'.
    
    Signed-off-by: Eric Blake <eblake@redhat.com>

commit 37acf3f524a6dd157ee8d12456177754761e9f7f
Author: Daniel Erez <derez@redhat.com>
Date:   Mon Mar 18 18:51:26 2019 +0200

    v2v: rhv-upload-plugin - improve wait logic after finalize (RHBZ#1680361)
    
    After invoking transfer_service.finalize, check operation status by
    examining DiskStatus.  This is done instead of failing after a
    predefined timeout regardless the status.
    
    Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1680361
    Signed-off-by: Richard W.M. Jones <rjones@redhat.com>
    Tested-by: Ilanit Stein <istein@redhat.com>

commit f4631139b217a6c1cf30d87a37a63b121c89eaed
Author: Chris Lamb <lamby@debian.org>
Date:   Fri Sep 6 09:09:16 2019 +0100

    Make the build reproducible
    
    Whilst working on the Reproducible Builds effort [0] we noticed
    that libnbd could not be built reproducibly.
    
    This is due to it shipping a pod generation wrapper that
    does not use/respect SOURCE_DATE_EPOCH [1] and additionally
    varies the output depending on the build user's current
    timezone.
    
    (This was originally filed in Debian as #939546 [2].)
    
     [0] https://reproducible-builds.org/
     [1] https://reproducible-builds.org/docs/source-date-epoch/
     [2] https://bugs.debian.org/939546
    
    Signed-off-by: Chris Lamb <lamby@debian.org>

commit a05b0637435862a863402385cc03dfd81badc988
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 15:08:48 2019 +0100

    html: Link within all libguestfs projects.

commit abb08cd3e83b5a04551e40cca8ba185525ea611f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 09:00:14 2019 +0100

    ocaml: Change calls to caml_named_value() to cope with const value* return.
    
    In OCaml >= 4.09 the return value pointer of caml_named_value is
    declared const.
    
    Based on Pino Toscano's original patch to ocaml-augeas.

commit cc6562bfc7620aceb186b8fe646c6f6cac630952
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Sep 2 17:45:13 2019 +0100

    v2v: Set DISKTYPE=2 in RHV and VDSM meta files (RHBZ#1746699).
    
    Added in virt-p2v commit:
    
      commit e83b6f50af34ce650063ecc520bfabab400e8e73
      Author: Matthew Booth <mbooth@redhat.com>
      Date:   Fri Mar 26 09:40:20 2010 +0000
    
        Add export to RHEV
    
        Allow guests to be written to a RHEV NFS export storage domain.
    
        Add 'rhev' output method and -osd command-line option.
        Example command line:
    
         virt-v2v -f virt-v2v.conf -ic 'esx://yellow.rhev.marston/' \
                  -o rhev -osd blue:/export/export RHEL3-32
    
        This will connect to an ESX server and write the guest 'RHEL3-32' to
        blue:/export/export, which is a pre-initialised RHEV export storage domain.

commit 81d79062b71f8a151abdd67b2f4f79c1782aff55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 19:45:12 2019 +0100

    Version 1.41.4.

commit a25fd4e886a3e916a4addd1774c405f22ad88c68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 19:23:54 2019 +0100

    rust: Don't add Cargo.lock to EXTRA_DIST.
    
    It's a file generated by cargo.  If cargo is not installed then this
    breaks ‘make dist’.

commit 1475b2dd87d1e7e902ef02b3a3a00bb3b129ec71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 12:56:12 2019 +0100

    Version 1.41.3.

commit a1b73b6195e620c96143c29c2bbcea2d9699d685
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 12:34:07 2019 +0100

    docs: Remove p2v/ directory from generated docs files.
    
    make[2]: *** No rule to make target '../p2v/about-authors.c', needed by 'internal-documentation.pod'.  Stop.
    
    Since we're going to remove the whole p2v subdirectory shortly anyway,
    it was simplest to ignore the whole directory.

commit 24639849a3fecb29c798d0f55999ac543f33318e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 12:23:28 2019 +0100

    Version 1.41.2.

commit 989751a5fffd4eac7da1836c077cd2cdef71cc6a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 12:21:45 2019 +0100

    docs: Remove generated file common/mllibvirt/libvirt_c.c.
    
    Avoids this error when building from git:
    
    make[2]: *** No rule to make target '../common/mllibvirt/libvirt_c.c', needed by 'internal-documentation.pod'.  Stop.
    
    This file doesn't have any generated docs or gettext annotations in it
    so adding it to these files is useless anyway.

commit 9e6fc0b29f7db3af047eb5cfcd954ad9291b7af7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 16:45:07 2019 +0100

    Version 1.41.1.

commit 8ec3f785e71799491290040182c35634bd32f56a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 10:00:28 2019 +0100

    rust: Add more source files to EXTRA_DIST.
    
    Fixes commit 3f7ff1b0689408695d21b4c50384fa24b47e5e8f.

commit bf2bbd92650719fb065ce70bbf480efa9c9c6899
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 09:56:42 2019 +0100

    Revert "rust: Add missing file to EXTRA_DIST."
    
    This reverts commit 9a6d1628523e59d65cfe0ce6063bee90c7715a5a.
    
    (This file was later removed in
    commit 3f7ff1b0689408695d21b4c50384fa24b47e5e8f.)

commit 3738ce2dc5f0c2280e19e5d7240a5085ecaa6e9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 08:57:11 2019 +0100

    python: Ignore -Wcast-align warnings in Python 3.8 header files.
    
    Disable this warning/error in the Python 3.8 header files:
    
    In file included from /usr/include/python3.8/abstract.h:837,
                     from /usr/include/python3.8/Python.h:147,
                     from actions.h:31,
                     from actions-6.c:34:
    /usr/include/python3.8/cpython/abstract.h: In function '_PyVectorcall_Function':
    /usr/include/python3.8/cpython/abstract.h:91:11: error: cast increases required alignment of target type [-Werror=cast-align]
       91 |     ptr = (vectorcallfunc*)(((char *)callable) + offset);
          |           ^

commit f72572a6fd96e830119e769409f5be254703f005
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 08:55:00 2019 +0100

    python: Include <Python.h> in one place.
    
    Previously to work around some problems in Python 2 header files we
    had to include <Python.h> before any other config file.
    
    For Python 3 which is all we really care about now this is no longer
    needed.  We can move the include from three files into the local
    "actions.h" file, bringing all the Python definitions and workarounds
    into a single place.

commit a47b99b654382f77eb72ee9ebb4c20006f8247c6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 30 12:14:23 2019 +0200

    build: disable deprecated GTK stuff
    
    We are not using deprecated GTK APIs/stuff, so make sure to not
    accidentally use them, and easily catch more deprecations in the future.

commit 1c07b5ff48fa3650a630a0aa9a119b9ee282a9e5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 30 12:05:03 2019 +0200

    Copy GtkAttachOptions from GTK >= 3.4
    
    GtkAttachOptions is part of GtkTable, which is used only with GTK < 3.4;
    however, these enum values are used also in the GtkGrid version of the
    code, so they are needed also when disabling deprecated stuff.
    
    As easy solution to make the current code working without deprecated
    stuff of GTK, copy the GtkAttachOptions enum when using GtkGrid (i.e.
    with GTK >= 3.4).

commit 453f7906d6d4a6bb6ccf5d614fd975f86428fb85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 20 18:01:27 2019 +0100

    ocaml: Compile compat bytes.mli file.

commit 441e478d3afd798b455e21c7a065291ecfa983f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 20 17:58:40 2019 +0100

    m4: ocaml: Remove unused definitions of OCAML_BYTES_COMPAT_*
    
    These were last used in commit 024efc0f2fb26de6444bc1831ab05de0458c6481
    and commit 8d09d716aa849e2ee539c73567756904c994ea2b (both in Jul 2017).

commit 9f6fe1041acd7940639be953c724dae4e5672ebd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 20 17:43:10 2019 +0100

    v2v: Fix missing backslash character in list of tests.
    
    Fixes commit c0d95dcde8e9b6f9acf165c57678d5eedcbfd1b6.

commit bb2dc7d204f96625002c7ce4d56beba222f3062b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 20 17:32:19 2019 +0100

    Update gnulib.
    
    Contains fix for a bug where it would always compile the
    replacement accept4 function.
    
    https://lists.gnu.org/archive/html/bug-gnulib/2019-08/msg00029.html
    
    Thanks: Eric Blake

commit f38e921bd0582ef3dcd1f2b11c57f3457524c39d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 20 15:12:06 2019 +0100

    builder: templates: Add Debian 10 (buster).

commit 5d01f526fffd27ff783a01442393cd436207e978
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 20 16:05:15 2019 +0100

    Update gnulib.

commit b169858949e9d5c11759d081e51546eba0c2d6b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 20 15:29:38 2019 +0100

    Update docs/C_SOURCE_FILES.

commit 5c77f8fc456b05a71af040950e961864d86e59ab
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 13 13:52:46 2019 +0200

    generator: improve pod2text invocation
    
    - feed the content directly to stdin, avoid the need of read (and write)
      a temporary file
    - read all the output at once, without a tail-recursive function
    - apply trimming and first line discarding after closing the process

commit 6ecd51181364e889f75628c84e6750c1c2cbaf70
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 13 13:25:22 2019 +0200

    generator: adjust variable names
    
    Rename some pod2text-related variables to better-fitting names.
    
    This is just a small refactoring.

commit dfebb61f46608b05842fd0160763959fbd8355b1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 13 13:19:17 2019 +0200

    generator: isolate memoized cache in own module
    
    Isolate the logic for the memoized disk cache in a small module, so it
    can be reused for other tools.
    
    Other than refactoring, there should be no behaviour changes.

commit 8eaf1b7bfc502b81983b059fe390b353a3a31032
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 12 16:25:52 2019 +0200

    v2v: -o rhv-upload: fix the phony ovirtsdk4 module
    
    - add a no-op Connection.close(), as it called explicitly in the
      close() callback of the nbdkit plugin (rhv-upload-plugin.py)
    - fix the types of the 'id' variables, which are strings

commit 6aa7ac712ab04821233a021cc07e5e0309c1c2e8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 12 14:12:11 2019 +0200

    Fix small issues in documentations of APIs
    
    - fix names of arguments & optional arguments in C<..> markers
    - use https for URLs where possible
    - fix links to other guestfs APIs
    - use more C<..> markers for special tests, shell commands, values of
      arguments, and names of fields
    - link to command man pages where an explicit command is mentioned
    - fix few incorrect documentation bits

commit bf5981c73fd5ab99baa6d34a286262f4b74f8666
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 20:36:28 2019 +0100

    rust: Add README.md to EXTRA_DIST.
    
    Fixes previous commit.

commit b9431d166fbd062d25685f59a2a611223bb52175
Author: Hiroyuki Katsura <hiroyuki.katsura.0513@gmail.com>
Date:   Sun Aug 11 13:42:22 2019 +0900

    Rust bindings: Make it able to publish this crate
    
    I added
    - data required to publish this crate to `crates.io`.
    - README.md which contains the details of how to publish this crate.

commit efca1ccbb3ae823b7d3c419a862b1be7910293bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 13:41:24 2019 +0100

    v2v: Remove double space.
    
    Tiny whitespace-only fix.

commit b8821e3adce0af7a24c5bf360549334974f9ad9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 8 13:12:29 2019 +0100

    Update gnulib to latest version.
    
    This fixes some test breakage I was experiencing with recent
    kernel/glibc.

commit d265639c2ab31418cfdbdedd0cc3e68cf290d834
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 25 14:52:42 2019 +0100

    v2v: -i vmx: Use scp -T option if available to unbreak scp (RHBZ#1733168).
    
    Tested using:
    
    cd v2v
    LIBGUESTFS_BACKEND=direct ../run virt-v2v -i vmx -it ssh "ssh://localhost/$PWD/test-v2v-i-vmx-1.vmx" -o null -v -x
    
    and manually examining the debug output.
    
    Thanks: Ming Xie, Jakub Jelen.

commit e1fe4656e491b02c35c40d17b1b7d555113a0bc8
Author: Hiroyuki Katsura <hiroyuki.katsura.0513@gmail.com>
Date:   Mon Aug 5 15:59:32 2019 +0900

    Rust bindings: Implement callback handlers
    
    This patch includes:
    
    - Event callback handlers
    - Tests related to events(410-430)
    
    src/bin/event.rs and src/bin/event_leak.rs
    are the PoCs that Boxes related to callbacks are
    not leaked.

commit 15d3bad3143642b0210c3f507b210f0f4ced5a72
Author: Hiroyuki Katsura <hiroyuki.katsura.0513@gmail.com>
Date:   Mon Aug 5 15:59:31 2019 +0900

    Rust bindings: Add Event structs, Clarify Handle lifetime
    
    Without clarifying handle's lifetime, it is unable
    to see how long the callbacks which the handle
    owns will live. Then, Rust compiler will infer
    that the callbacks have 'static lifetime. It is
    not convenient for users.

commit 9134ec47eb65a36ca34e58d606a25ed79615255a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 12:57:24 2019 +0100

    build: Update miscellaneous files.
    
    BUGS
    docs/C_SOURCE_FILES
    po/POTFILES
    po/POTFILES-ml
    
    These files are normally updated by ‘make dist’ but as we've not had a
    release in a while they had not been updated for some time.

commit 09e1d59504267e5c6abb51903b0caa8042fdb584
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 12:55:22 2019 +0100

    p2v: Add .gitignore to EXTRA_DIST.
    
    Fixes commit 9fe175cd7648694ed03a163a214e7afb41ed06fa.

commit 380c4c5886b74149bb5ecbab11a4ab360d7b2406
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 12:54:11 2019 +0100

    v2v: Fix EXTRA_DIST.
    
    Fixes commit a27748d7000f417c16045967497208d275a09ce8.

commit daf5472a197403218e2f57432342d64005197193
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 12:53:14 2019 +0100

    common/mltools: Fix EXTRA_DIST.
    
    Fixes commit f79129b8dc92470e3a5597daf53c84038bd6859e.

commit 7cd1b27c5c41b5f4820585bb4b40ae6320559207
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 12:22:20 2019 +0100

    rust: Add missing file to EXTRA_DIST.

commit 8185a359869620cda0cb091ff09a28f1608f82b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 12:18:17 2019 +0100

    rust: Remove rust/.gitignore from EXTRA_DIST.
    
    Fixes commit b484ca4da1dde457777a72ce26086de6a0cd9aba.

commit 02cd85a6340c1b5d3b1dae251e7d8e0b9b716064
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 12:15:32 2019 +0100

    generator: Use ~copyrights shorthand for ~copyrights:copyrights

commit 78aaea690efa90b39c9731e4d1670bed70df4270
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 12:14:23 2019 +0100

    generator: copywrites -> copyrights

commit c5ad75adad872fe6d3d66ca2ede9fab145ea1c85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 12:12:14 2019 +0100

    rust: Move .gitignore to top level file and add extra files.

commit 878046983f00585f7b8163f0df32c87fdb550ac9
Author: Hiroyuki_Katsura <hiroyuki.katsura.0513@gmail.com>
Date:   Mon Jul 29 12:10:42 2019 +0900

    Rust bindings: Add Rust bindings
    
    This patch includes Actions and their tests. Missing:
    
    - Events
    - Examples
    
    Rust bindings: Add create / close functions
    
    Rust bindings: Add 4 bindings tests
    
    Rust bindings: Add generator of structs
    
    Rust bindings: Add generator of structs for optional arguments
    
    Rust bindings: Add generator of function signatures
    
    Rust bindings: Complete actions
    
    Rust bindings: Fix memory management
    
    Rust bindings: Add bindtests
    
    Rust bindings: Add additional 4 bindings tests
    
    Rust bindings: Format test files
    
    Rust bindings: Incorporate bindings to build system

commit bf93704208dc1b3e5d1898a2a0f85dd067c80616
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 18 15:38:53 2019 +0200

    v2v: remove extra nbdkit bit from documentation (RHBZ#1723305)
    
    Since there is no more need to build nbdkit from sources, then there is
    no need to set $PATH with a custom build of nbdkit.
    
    Followup of commit 0704d8eb0bcc8139886eb4291f75a3ca49a91e58.

commit 08139036d372fdaae679ebf9bf1022ab0c7ddd09
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 8 18:58:19 2019 +0200

    p2v: split appliance tests in own variable
    
    This way they can be properly shipped also when creating a distribution
    tarball ('make dist') from a build configured with --disable-appliance.

commit 7deb36ddd1a414b03540c0a2a33515e67cfd420b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 8 18:56:06 2019 +0200

    p2v: fix tests with srcdir!=builddir
    
    Point to files in the source directory using the right variables, so
    they are found also when the build directory is different than the
    source directory.

commit 97667a2d3452cd398efe5d2bde9151323a689105
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 8 17:58:23 2019 +0200

    p2v: consider p2v-config.h as generated source
    
    While it is generated at configure time for dependency reasons, consider
    it a generated source nevertheless: after the first run, there will be
    dependency rules available, so automake will trigger the proper rule to
    generate it again using generate-p2v-config.pl.

commit 1a932c9a6ec4040a23acbbcaf1d46ede022f69ed
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 8 17:57:41 2019 +0200

    p2v: clean also the test images
    
    Followup of commit ea4d9bd1574d32cfb9d1241f911fcab5a4ccc624, and
    commit f02c0cb552e0cf3a82a9447791db4c430426d569.

commit 7478bd877a55842b10d1950e0d71879827114df0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 4 15:51:25 2019 +0100

    v2v: Allow Windows virtio ISO to be a block device as well as a regular file.
    
    Thanks: Steven Rosenberg

commit cf957de7dd3ac978995afe4a1a4fbe6a8ef6bc33
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 3 12:04:03 2019 +0200

    p2v: stop including guestfs.h
    
    It is no more needed, guestfs-utils.h is enough these days.

commit 4d3ea41207b8920cf9bfc250d8c7a7727babcbfe
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 2 17:31:09 2019 +0200

    contrib: move p2v files within p2v

commit 88c6140bd29dfc3d8d60a05e0e3e41c40d029271
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 2 16:32:31 2019 +0200

    p2v: generate C about data authors from AUTHORS file
    
    Create a small Perl script to generate about-authors.c from the p2v
    AUTHORS file at build time, instead of generating in the generator
    at dist time.

commit f1e2187a55280097f8da0209754af6a203783c0a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 2 16:01:02 2019 +0200

    p2v: ship generate-p2v-config.pl
    
    Fixes commit 796ce74f319e819a03d10bf7106f20deabb1f014.

commit ad87c19b6cd74474d0e22bfe86b4fe7ec34906a5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 2 15:54:13 2019 +0200

    p2v: remove non-author credits
    
    Soon only the virt-p2v authors will be available, so remove all the
    other roles.  This leaves only in the virt-p2v about dialog, which is a
    mild regression compared to the current situation, although it is just
    for user information.

commit 7e20e808378f65bef9f07f1fa9bc0de6359b31eb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 2 15:39:21 2019 +0200

    p2v: generate an AUTHORS file
    
    Create a simple AUTHORS file for virt-p2v, so it is easier to
    extract or use it later on.

commit 332ef58c9a2aed428fc44f6c992152151f8d45a8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 1 16:35:24 2019 +0200

    p2v: tests: use a local blank-part disk image
    
    Instead of using the "global" blank-part test image, use a local version
    of it created with guestfish.

commit 7335272c962dbdcb16c0e9988bb60c729fe3312e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 1 16:06:00 2019 +0200

    p2v: tests: switch windows image with local fedora one
    
    Instead of using the "global" Windows test image, use a local Fedora
    image created with virt-builder.

commit 1ca567a29b485b1cfbd6707526c85b6e6753d9cf
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 1 18:35:03 2019 +0200

    p2v: split gitignore
    
    Move (or copy the general ones) all the p2v entries in the top-level
    .gitignore file to a new file specific for p2v.  This will make it
    easier to keep them when splitting p2v.

commit 26be27b4d66082de92a6d436dee8dcbc1ab7aa71
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 1 14:26:44 2019 +0200

    generator: remove p2v_config
    
    No more used now, as this configuration is generated within p2v itself
    at build time.

commit 77a25943cdc3061b469169244cf8c5cf61824ac4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 1 14:14:56 2019 +0200

    p2v: move kernel config POD docs to perl script
    
    Copy from generator/p2v_config.ml also the bits for POD documentation,
    adding them to generate-p2v-config.pl; this way,
    virt-p2v-kernel-config.pod can be generated at build time directly,
    instead of statically shipped as generator output.

commit d2904d0746ffe6be9bf2f3be4e04e9b5e13f9393
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 1 13:08:27 2019 +0200

    p2v: move kernel config to perl script
    
    Instead of generating the p2v kernel config using the OCaml generator,
    create a Perl script to do this job, mostly at build time.  This is done
    to rely less on the generator for p2v, and because the generation of
    these sources is quick enough that it can be done at build time (instead
    of shipping the generated sources in dist tarballs).
    
    The generate-p2v-config.pl mimics what generator/p2v_config.ml --
    namings, and general structure are kept close to that for comparison.
    
    The two C sources are created at build time by the script; however, the
    p2v-config.h header is generated at configure time: this is done because
    p2v-config.h is included by p2v.h (another header), which in turn is
    included by all the p2v C sources -- automake is not able to properly
    resolve the dependency, and thus it would not be generated properly.

commit 79d4ea35d4b24d7a30fff72ed5224dae77e64842
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 31 13:07:25 2019 +0100

    python: PYTHON_LIBS is not set in Python 3.8 (RHBZ#1705482).
    
    Python 3.8 no longer links C extensions to -lpython, instead relying
    on the fact that the python binary itself already contains those
    symbols.  This means $PYTHON_LIBS is empty and so the Python bindings
    are not built.
    
    Use a different test to see if the python module is available.

commit b7df203ef69ca33d33e9d0d3f56d51b8360fea47
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 30 09:45:40 2019 +0200

    Revert "daemon: implement OptString for OCaml APIs"
    
    This causes the build to fail, as Val_optstring is still not used by any
    generated C glue function.
    
    This reverts commit 8e51e9078f0204008b262e14cbde3123b545ec37.

commit 1de95f5d6fc615acdaf40c685ef26993a35a08dd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 27 19:03:12 2019 +0200

    daemon: implement OptString for OCaml APIs
    
    It is already considered as string option, so create an option string
    value in the C glue for OptString parameters.

commit ec49f8cfefa9a025bf75c6c7a4c6199a6b9521fe
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 27 13:12:07 2019 +0200

    appliance: remove custom Shadow augeas lens
    
    Now that augeas 1.2.0 is required, assume the Shadow lens is available
    there, and thus drop the local copy.

commit ecd33b592360c006b215be989cd5110d671d2617
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 27 12:58:27 2019 +0200

    build: raise augeas requirement to 1.2.0
    
    It is widely available also on older distributions.

commit 4f362c1cf1c4e74c89b552521a41f39e83e66855
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 18 10:53:39 2019 +0100

    appliance: Remove /etc/dhcp/dhclient-enter-hooks.d/resolved.
    
    Workaround for Ubuntu which uses this script to try to start a systemd
    service.  That won't work because systemd is not used inside the
    appliance.  See:
    
    https://bugs.launchpad.net/ubuntu/+source/supermin/+bug/1824236
    
    Thanks: Ioanna Alifieraki

commit a895c13178069bbff97e60707f9c28945c9623e2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 28 10:17:46 2019 +0200

    build: build C sources using OCaml API with CAML_NAME_SPACE
    
    This way no non-namespaced OCaml C symbols are used, reducing the risk
    of clashes with other code.
    
    The only exception is ocaml-augeas, which does not build with
    CAML_NAME_SPACE; it will be fixed upstream, and it affects only
    ocaml-augeas itself.

commit 08af79996d42638aa6ab17708caf02bf3d10df7c
Author: Martin Kletzander <mkletzan@redhat.com>
Date:   Mon May 27 13:30:05 2019 +0200

    Use proper label for nbdkit sockets
    
    While svirt_t can be used for sockets it does not always guarantee that it will
    be accessible from a virtual machine.  The VM might be running under svirt_tcg_t
    context which will need a svirt_tcg_t label on the socket in order to access it.
    
    There is, however, another label, svirt_socket_t, which is accessible from
    virt_domain:
    
      # sesearch -A -s svirt_t -c unix_stream_socket -p connectto
      ...
      allow virt_domain svirt_socket_t:unix_stream_socket { ... connectto ... };
      ...
    
    And virt_domain is a type attribute of both svirt_t and svirt_tcg_t:
    
      # seinfo -x -a virt_domain
      Type Attributes: 1
         attribute virt_domain;
              svirt_t
              svirt_tcg_t
    
    Resolves: https://bugzilla.redhat.com/1698437
    
    Signed-off-by: Martin Kletzander <mkletzan@redhat.com>

commit 5d095340b5ca3de8d64d35c8c33104751d05cd07
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 24 14:46:42 2019 +0200

    tests: import importlib.util directly
    
    It seems that on older Python 3 versions importlib.util is not imported
    automatically when importlib is imported; as solution, import
    importlib.util directly (as it is what is used, anyway).
    
    Fixes commit f79129b8dc92470e3a5597daf53c84038bd6859e.

commit 4a184478afdb5c4e4691d7fe1660b5a1647e3da0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 24 12:32:29 2019 +0200

    launch: libvirt: fix custom hypervisor check
    
    Previously, is_custom_hv() used to compare the QEMU executable found
    during configure to the hypervisor set to check whether it is a custom
    one; however, the QEMU found at configure time can be different than
    what libvirt was configured with.
    
    This fixes the libvirt backend when libguestfs is configured with a
    different QEMU, that now will be specified as emulator overriding the
    libvirt one.

commit e9641c85615426426064560ec1eeb893b0d5368c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 24 12:29:34 2019 +0200

    launch: libvirt: get default QEMU from domcapabilities
    
    Parse the libvirt domain capabilities for the default emulator
    capabilities, and get the path to the default QEMU executable.

commit e96816f74ef9efccf3a84847999ae9e164c23b38
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 30 18:44:36 2018 +0200

    build: stop looking for ocaml-libvirt
    
    We ship our own copy of it, so we do not need the external version.
    (Also, the latest upstream version of ocaml-libvirt was already not
    usable to build the test harness of v2v.)

commit 2d70eeb4f9cf2527b160d5eb352f00cb6fa5dc9f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 30 18:43:53 2018 +0200

    v2v: test-harness: stop using the external ocaml-libvirt
    
    Use the embedded copy.

commit b91d08bf231108f5b9756d4caa33a035342d3b6c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 30 18:10:16 2018 +0200

    v2v: -o libvirt: switch away from virsh
    
    Now that we have a proper libvirt connection object, use it directly to
    refresh the storage pool, and define the final guest.  This avoids
    spawning a new virsh process twice, with no possibility to even share a
    possible authentication required.

commit 51b0c18e3777f15f70f27f3ee46e8f75635c808f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 30 18:03:45 2018 +0200

    v2v: -o libvirt: use a Lazy for the connection
    
    Store the Libvirt.Connect.t object as instance variable, so it can be
    used also outside of prepare_targets.  Use a private method to access
    it, so there is no need to directly use the Lazy object.

commit 69296a0877e0a305c00948eaf832f1e59054f92b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 30 16:01:30 2018 +0200

    v2v: switch to ocaml-libvirt
    
    Currently virt-v2v has few custom C-based functions for libvirt
    operations, which are limited in what they do, and there is a lot of
    duplicated code.
    
    Instead, switch to ocaml-libvirt for all the libvirt interaction
    currently done by the Libvirt_utils module.  This has few advantages:
    - each input & output module now opens a libvirt connection only once,
      only when needed
    - no need to pass URIs and passwords around, if not needed
    - a wider range of libvirt APIs can now be used, with no need to create
      bindings manually
    
    The hierarchy of input_libvirt* classes is changed to take a Lazy object
    with the libvirt connection, accessing it through a "proctected" method:
    this way, the connection is opened only at the first access.
    Also, the Libvirt_utils module now is just helpers around the Libvirt
    module, to centralize error handling, and few common operations.

commit b30c00819b8e3e373153fd5d23b755f5789d51b1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 30 11:43:32 2018 +0200

    common: Bundle the libvirt-ocaml library for use by virt-v2v
    
    Add a copy of the libvirt-ocaml library, currently available at:
      https://libvirt.org/git/?p=libvirt-ocaml.git;a=summary
    This is a snapshot at commit d3ed8dcf1b0a6a8a855ceecbe0bb97f21e6665e3,
    which has all the features we need (and that builds fine).
    It is expected to stay synchronized with upstream, until there is a new
    upstream release, and it will be widespread enough.

commit 1e66065a62cfa9b01a6d866403468a7144d4160e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 28 09:05:02 2018 +0200

    v2v: require libvirt
    
    While there are input modes that do not use libvirt, making libvirt
    mandatory for virt-v2v slightly simplifies the code now, and allow for
    further improvements/integration with libvirt later on.

commit 207211abc93e662983cd368055f4d57f96557d4a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 16 11:07:25 2019 +0200

    v2v: -o json: add a simple test for it
    
    Followup of commit f190e08d85556dac293ef15bfeee38e54471570f.

commit e00ab7e0aff9f1690c12ddcb0c9cb9b8434009e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 10 16:04:18 2019 +0100

    builder: templates: Add RHEL 8.0 (x86-64 only for now).

commit 99e92d974c3018b9135f39b75cc15ef643c7eae9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 10 15:14:32 2019 +0100

    builder: templates: Remove RHEL 8 Alpha temporary hacks.

commit 5907b7fef571d9736580cb0aebef7b2abe701942
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 4 20:45:12 2019 +0100

    builder: Fedora 30 templates.

commit 5b1963655eabc299961c000c7182c4cdaa76cbb4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 2 18:34:18 2019 +0200

    test-data: switch away from deprecated APIs
    
    Adapt make-fedora-img.pl to not use deprecated APIs anymore:
    - set_e2uuid -> set_uuid
    - txz_in -> tar_in + compress:xz
    
    This causes no changes in the generated test images.

commit 02acbc6532ab849fd70f45051f13c13c927837fc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 24 12:49:48 2019 +0200

    python: silence usage of add_cdrom in test
    
    One test explicitly tests add_cdrom, so silence the deprecation warning
    only for that function.

commit d3a7408164b420b2132050be5e2e8397836149f4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 24 12:49:28 2019 +0200

    perl: silence usage of add_cdrom in test
    
    One test explicitly tests add_cdrom, so silence the deprecation warning
    only for that function.

commit d9949cc6a7756baf6d966ff23d315c383e5cebf8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 24 11:59:36 2019 +0200

    python: modernize inspect_vm example
    
    Since we already assume Python >= 2.7, modernize this example to make it
    work also on Python 3:
    - use print() as function
    - sort the mount points using a key for sorted(), instead of a
      comparison function
    - remove extra newline escape
    - reident two lines according to the PEP 8 style

commit 77d7d16075d337beb815c8d29581c14c2f887d1b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 23 18:02:33 2019 +0200

    perl: show warnings for deprecated functions
    
    Emit a deprecation warning when a deprecated function is used, so users
    have a way to know that they are using one.

commit 261d85abf7864c62d083c834cad069d0cbf1c41f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 23 17:41:43 2019 +0200

    ruby: show warnings for deprecated functions
    
    Emit a warning when a deprecated function is used, so users have a way
    to know that they are using one.

commit 73182ad596f9694f364072cf1866424357840d13
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 23 14:51:49 2019 +0200

    python: show warnings for deprecated functions
    
    Emit a DeprecationWarning warning when a deprecated function is used, so
    users have a way to know that they are using one.

commit ab5d1b0b5f00957bd71d7a2674dc229777cb2d58
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 23 12:58:05 2019 +0200

    lib: introduce GUESTFS_NO_DEPRECATED
    
    Add a simple way to do not even provide prototypes of deprecated
    functions in the C library: this way, users (like our tools) can build
    against the library making sure to not use any deprecated function, not
    even when compiler deprecation warnings are disabled.
    
    Add it to the majority of our tools/internal libraries, and make sure
    that it is not defined when building the API bridges of our bindings.

commit 950d7fb55bd39011f8824fdd4eef844f01938ec3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 23 12:54:46 2019 +0200

    build: stop using GUESTFS_WARN_DEPRECATED
    
    This is no more used now, as compiler deprecation warnings are triggered
    by default.

commit e90dc3a572dd219cad2dddd6b1514e5a2b7a1dde
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Apr 18 17:26:25 2019 +0200

    lib: enable deprecation warnings by default
    
    Right now, deprecated functions of the library do not trigger any
    compiler deprecation warning by default; they do that only if
    GUESTFS_WARN_DEPRECATED=1 is defined.  However, this is not something
    that seems to be done often -- at least none of the projects using the
    libguestfs C API does that.
    
    Hence, do a small behaviour change to change this on the other way
    round: now deprecated functions trigger compiler deprecation warnings by
    default, using GUESTFS_NO_WARN_DEPRECATED to disable this (and revert
    to the previous behaviour).  Even though deprecated functions will not
    be removed, we really want users to migrate away from them, as they were
    deprecated for good reasons.
    
    Define GUESTFS_NO_WARN_DEPRECATED where needed:
    - in all the bindings, as they bind all the functions including the
      deprecated ones
    - in the guestfish actions, as it exposes almost all the APIs
    - in the C API test, as it runs the automated tests of all the APIs that
      have them
    - for two tests that explicitly test deprecated functions

commit 9245d804044d2e4093667949b3f1b024fe2f154b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 23 17:24:53 2019 +0200

    tests: switch last-errno away from deprecated APIs
    
    This test only calls stat to check the failure on missing file, so
    switch to statns to get the same behaviour with a non-deprecated API.

commit 78954d9c52b716857ef1d1cce385b5f4ed23f535
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 15 17:24:42 2019 +0200

    v2v: -o rhv-upload: check whether the cluster exists
    
    In the precheck script, check that the target cluster actually exists.
    This will avoid errors when creating the VM after the data copying.

commit b2f904ae0b9239233d225afd65ef0f4fca2ed8b8
Author: Denis Plotnikov <dplotnikov@virtuozzo.com>
Date:   Mon Apr 15 14:06:29 2019 +0300

    daemon: drop error message check in do_part_expand_gpt
    
    part-expand-gpt takes extreme cautions and doesn't proceed to writing
    to the disk if the preliminary dry run of sgdisk has generated any
    warnings on stdout.
    
    This blocks the use of part-expand-gpt on disk shrink (with disk
    resize being the main usecase for part-expand-gpt), because sgdisk dry
    run produces a warning in that case.
    
    So remove the excessive safety check, and leave it up to the caller.
    
    Signed-off-by: Denis Plotnikov <dplotnikov@virtuozzo.com>
    Reviewed-by: Roman Kagan <rkagan@virtuozzo.com>

commit 7a21652c2d8970bc1fba62f1a6074c2d5d2d91b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 10:01:24 2019 +0100

    v2v: Move have_selinux to utils.
    
    This is not quite a neutral refactoring, because it means we now run
    the getenforce command every time virt-v2v starts up.  However it's a
    trivial command that reads a single /sys file and it can't fail even
    if the command is missing or on platforms that know nothing about
    SELinux.

commit 1febcbe56d739444fff517c19a55cc49f0d9b648
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 15 11:39:54 2019 +0100

    common/mlstdutils: Add String.unix2dos function.
    
    Simple string line ending replacement convenience function.

commit aed3d6264a5be6582ab560d14504306b73a25637
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 12 17:28:12 2019 +0200

    v2v: warn when the guest has direct network interfaces (RHBZ#1518539)
    
    virt-v2v obviously cannot convert this kind of devices, since they are
    specific to the host of the hypervisor.  Thus, emit a warning about the
    presence of direct network interfaces, so at least this can be noticed
    when converting a guest.

commit 7fe96678bbe124105634a4c93db78924dbd564f7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 12 16:19:43 2019 +0200

    v2v: update documentation on nbdkit (RHBZ#1605242)
    
    nbdkit >= 1.6 ships a VDDK plugin always built, so recommend that
    version instead of recommending to build nbdkit from sources.

commit ee279a6b468804964c50567a3e90e6c9525ff138
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 8 18:23:27 2019 +0200

    v2v: start reading the new libvirt firmware autoselect
    
    Starting with 5.2.0, libvirt has a way to select automatically the
    firmware for a guest using an attribute of the <os> tag.  Hence, use
    this information (when available, of course) to flag the firmware used
    by the guest.

commit 55558ecd94dd2e83a646d00a7bea064387ad58fc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 8 13:34:11 2019 +0200

    inspect: get icon of OpenMandriva guests
    
    Followup of commit a4ef6716b4119e476949c55f1bc12d81e735f0c0.

commit 5bb23b4d4dc9afb8a49284a09ab23ae12e15ff00
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 2 14:28:23 2019 +0200

    inspect: correct osinfo ID for ALT Linux >= 8
    
    ALT Linux 8.x has different IDs in osinfo-db, so return the proper IDs
    for the newest stable series.

commit 2d59ce0ad3c8c6a342dea017dd309d40202f4419
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 19 08:56:52 2019 +0100

    inspect: return osinfo short IDs for rolling distros
    
    Return the right osinfo short IDs for some rolling Linux distributions,
    such as Arch Linux, Gentoo, and Void Linux.  Their IDs were recently
    added to osinfo-db.

commit 5ec5340f04a6292b5bb05001c0fa3c419afc8e98
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 2 10:49:27 2019 +0200

    inspect: fully detect Arch Linux from os-release
    
    Consider Arch Linux as rolling distribution, so it is recognized using
    /etc/os-release.
    
    The end result does not change, although this makes Arch Linux inspected
    using os-release only, instead of getting inspection details mixed from
    both os-release and lsb-release.

commit 85b45871fe508d42ea4bb8a175668e7fa614401d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 19 08:35:06 2019 +0100

    inspect: detect Gentoo from os-release
    
    Add "gentoo" as recognized ID in /etc/os-release, and consider it as
    rolling distribution (so without VERSION_ID in os-release).
    
    This avoids using a not-useful version read from /etc/gentoo-release,
    e.g. "Gentoo Base System release 2.6".

commit 4addc9cfd273627136c69a876d0faa8e9189b4a0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 2 12:46:11 2019 +0200

    inspect: factorize list of rolling distros
    
    Use a static list of rolling distros, so it is easier to handle them
    differently; use this list for handling the lack of VERSION_ID in
    os-release files.
    
    This is just refactoring, no behaviour changes.

commit 0dff2f938d462546874f6c19121464f5af5ac32c
Author: Hiroyuki Katsura <hiroyuki.katsura.0513@gmail.com>
Date:   Wed Apr 3 15:55:52 2019 +0000

    Add missing python bindings tests
    
    Signed-off-by: Hiroyuki Katsura <hiroyuki.katsura.0513@gmail.com>

commit 077c66ae311042c3389a43268d34afead7eb2c67
Author: Bernhard Rosenkränzer <bero@lindev.ch>
Date:   Tue Apr 2 08:31:46 2019 +0100

    Add OpenMandriva support as guest and host (RHBZ#1694268).

commit fba6a498d472ae2099a67bedcec19cc484ccde49
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 25 13:14:43 2019 +0100

    v2v: add -o json output mode
    
    Add a new output mode to virt-v2v: similar to -o local, the written
    metadata is a JSON file with the majority of the data that virt-v2v
    knowns about (or collects) during the conversion.
    
    This is meant to be used only when no existing output mode is usable,
    and a guest needs to be converted to run on KVM anyway.  The user of
    this mode is supposed to use all the data in the JSON, as they contain
    important details on how even run the guest (e.g. w.r.t. firmware,
    drivers of disks/NICs, etc).

commit cada159dd79e056499733229cdda6332fc781405
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 19 14:54:31 2019 +0100

    v2v: add Var_expander
    
    This helper module provides a facility to replace %{FOO}-like variables
    in text strings with user-provided content.

commit 395d64993cf1ab3590d04721663ca91753a9244b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 19 10:50:01 2019 +0100

    common/mlpcre: add offset flag for PCRE.matches
    
    This way it is possible to change where the matching start, instead of
    always assuming it is the beginning.

commit 44179de322adc0592f75d38e5456affd68e05c0e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 1 17:01:44 2019 +0200

    OCaml tools: fix 3999 -> 3339 typo
    
    RFC 3339 is the actual RFC for date/time strings.
    Typo found by Martin 'eagle eyes' Kletzander.
    
    Fixes commit f79129b8dc92470e3a5597daf53c84038bd6859e.

commit 61c736e68e41cc85b0d0a361ff2bd9751adf12c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 1 16:36:15 2019 +0100

    lib: qemu: rbd: Properly escape IPv6 addresses.
    
    Each ':' character in the address must be escaped from qemu.
    
    Thanks: Jonathan Wright

commit 4cb6773387b16ba0b25be6e4d5f5026c09bb04d1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 22 16:24:25 2019 +0100

    OCaml tools: output messages into JSON for machine readable
    
    When the machine readable mode is enabled, print all the messages
    (progress, info, warning, and errors) also as JSON in the machine
    readable stream: this way, users can easily parse the status of the
    OCaml tool, and report that back.
    
    The formatting of the current date time into the RFC 3999 format is done
    in C, because of the lack of OCaml APIs for this.

commit 9034aba4b0e4fa4f0a1cc87fbee27aba541b0d8e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 22 12:59:11 2019 +0100

    common/mltools: allow fd for machine readable output
    
    Allow to specify a file descriptor for the machine readable output.
    
    Use the same assumption as done in v2v, i.e. that Unix.file_descr is
    simply the int file descriptor.

commit 895a67dbdf1aa3eda5443389cfed5a0e31784373
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 22 11:36:41 2019 +0100

    common/mltools: make sure machine readable output is flushed
    
    Enhance the helper printf function for machine readable output to always
    flush after each string: this way, readers of the machine readable
    stream can get the output as soon as it is outputted.

commit c1487cfedf6f245131f11e2fb72a5dc9a581fd9a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 21 17:16:37 2019 +0100

    common/mltools: move the code for machine readable up
    
    Move the code for handling machine readable up in the file, so it can be
    used by other functions.
    
    Only code motion, no behaviour changes.

commit 7d9ab131f9f5ed42bcdcf5b06421ecf4ba725d79
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Feb 14 14:38:21 2019 +0100

    v2v: windows: save log file from rhev-apt installer
    
    Store log from MSI installer. Log file will be located in firstboot
    scripts-done directory with name rhev-apt.log. The path has to be
    double-quoted to handle spaces in path name properly.
    
    Hopefully this can help resolve RHBZ#1584678 someday.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 6f804792d3a40540360c8cfd3d3309087aab3e78
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Fri Feb 8 11:44:41 2019 +0100

    v2v: fix path to source when copying files from guest tools directory
    
    The debug message was slightly changed too to better match the similar
    message for ISO case. It refers to the root directory instead of the
    specific subdirectory inside guest tools.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 5e44c941bd26f1c588a64b493f0e74c2b1369ede
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 26 17:37:56 2019 +0100

    v2v: change the reporting of RHV Tools messages/warnings/error
    
    The RHV Tools ISO is provided as Red Hat only product, and thus not
    available for all the virt-v2v users.  Hence, change the way we report
    the status of the installation of the qemu guest agent from the RHV
    Tools ISO:
    - do not warn if virt-v2v does not know how to install the package for
      the current guest
    - do not warn if the ISO does not contain packages for the current guest
    - on successful installations, show an info message
    
    Related: RHBZ#1691659

commit d3c3a122394395281fbc8fb9c900e856f218ce12
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 26 17:10:38 2019 +0100

    v2v: try to pick the right arch for qemu-ga pkgs
    
    Right now the code copies, and then tries to install, all the files
    found for the directory of a distro.  This does not take into account
    differences in the architectures of the packages available, so a x86_64
    package must be installed only on x86_64 guests.
    
    As solution, filter the packages using the typical suffix used by
    packages (so architecture + file extension), to pick only packages
    compatible with the current guest.

commit 9da714a41e6c385690201e74136965ae4242a0a5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 26 17:02:02 2019 +0100

    v2v: linux: add helper functions for pkg arch and extension
    
    Add helper functions to get the typical extension of binary packages
    for a package manager, and the string for an architecture.

commit 1b3a0a9e8f3f05c9c22a163f26cccc18140e092f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 23 18:11:21 2019 +0000

    lib: direct: Set QEMU_AUDIO_DRV=none when testing schema.
    
    Schema parsing was failing with errors such as:
    
    libguestfs: QMP parse error: '[' or '{' expected near end of file (ignored)
    
    This happened because the QMP command was actually completely failing
    and never printing a result at all.  This happens because the qemu
    audio driver can't be set up without a console.  We can suppress this
    by setting the environment variable QEMU_AUDIO_DRV=none, which is the
    same thing that libvirt does, and also the same thing that we are
    already doing when launching the real appliance subprocess.
    
    See also: https://bugzilla.redhat.com/show_bug.cgi?id=1692047

commit 6632c0d006f19f83c3fb79a7516fdc1f19a02408
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 26 14:22:38 2019 +0100

    v2v: test-v2v-conversion-of.sh: basic check for libvirt XML
    
    Use virt-xml-validate to check that the libvirt XML is actually valid,
    at least regarding its schema.

commit 1caa0d5e150d12514d5fd646142744a764656e44
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 26 14:12:53 2019 +0100

    v2v: test-v2v-conversion-of.sh: update the guest
    
    Make sure the create guest is always up-to-date: this way it is possible
    to test the conversion even taking into account the latest upgrades
    available.

commit 4f02127719e7a440f9260ff0c924158f923cf374
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 26 14:11:57 2019 +0100

    v2v: tests: add debian-9 and fedora-29 for test-v2v-conversion-of
    
    Test the newer versions of these distros.

commit 380a49f7908dcfcd979e8e19899421d86c202c18
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 26 10:18:22 2019 +0000

    inspector: Fix tests to match new Windows 7 osinfo information.
    
    Fixes commit 3ed32996ddf863f2c30a92c554029aa01d3689bc.

commit bf131cda22318b7f43b903ca562bc06aea3b1e00
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 27 17:51:59 2019 +0100

    v2v: linux: do not uninstall open-vm-tools w/ ubuntu-server
    
    ubuntu-server depends on open-vm-tools on Ubuntu, so if v2v tries to
    uninstall open-vm-tools then dpkg will (rightfully) fail with a
    dependency issue.
    
    Since open-vm-tools is harmless after the conversion anyway (it will
    not even run), then do not attempt to uninstall it if ubuntu-server is
    installed too.
    
    Followup of commit 2bebacf8bf611f0f80a66915f78653ce30b38129.
    
    Thanks to: Ming Xie.

commit 25cbc2107cb270532a24ae666841d081cd1285fe
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 19 09:28:53 2019 +0100

    inspect: return osinfo short IDs for recent Windows versions
    
    Return the right osinfo short IDs for the majority of Windows versions
    since Windows XP.

commit af7b4eafeec35ad24be34a499ee641695b1eedd7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 28 11:00:27 2019 +0100

    v2v: -o libvirt: write win2k19 osinfo ID
    
    When writing the libosinfo metadata in the libvirt XML, use the newly
    added (in osinfo-db) ID for Windows Server 2019; sadly, this version of
    Windows has the same version as Windows Server 2016, so distinguish it
    by looking at its product name.

commit 1cea0cb02a6e819f6b31aa6086c7eb3cf053c92a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 11 19:28:00 2019 +0100

    inspect: fix icon of RHEL
    
    Use a better icon for RHEL guests, still provided by redhat-logos (or
    equivalent in downstream distributions), and which fits a better
    definition of logo for the distribution.
    
    Thanks to Ray Strode for the hints.

commit 20bc8402abc93f29be7acb1c7c7ecae2987a794d
Author: Mike Latimer <mlatimer@suse.com>
Date:   Mon Mar 25 14:38:00 2019 +0000

    v2v: Fix default graphics driver for SUSE guests.
    
    See discussion in this upstream thread:
    https://www.redhat.com/archives/libguestfs/2019-February/thread.html#00047
    
    Thanks: Mike Latimer, Pino Toscano.

commit 49bd87ab0a29fc875674b1f203af0b8e09fb8480
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 20 12:32:02 2019 +0100

    v2v: linux: improve arch detection from modules (RHBZ#1690574)
    
    Try to look for a well known kernel module (so far only virtio, or kvm)
    to use for detecting the architecture of a kernel.  This way, we can
    avoid picking 3rd party modules that cause troubles.

commit aab42c52fe574f350009326147677414361846ba
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 20 16:55:05 2019 +0100

    v2v: linux: canonicalize module path for arch detection (RHBZ#1690574)
    
    Kernel modules can be also symlinks to files available outside the
    "canonical" module directory; the "file" API, used by the
    "file-architecture" API, return the actual type of a file (so symlinks,
    block devices, etc), and thus "file-architecture" fails on symlinks.
    
    To prevent this situation, canonicalize the path of the module picked
    for architecture detection: this way, "file-architecture" will act on a
    real file.

commit eab7a23487abfd73824b8e6d9469a2e2bdf3c36b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 11 16:43:53 2019 +0100

    tests: skip test-relabel.pl when selinuxrelabel is not available
    
    test-relabel.pl performs a full SELinux relabelling of the phony guest,
    and the selinux_relabel API does not work if the "selinuxrelabel"
    feature is not available.

commit 178239b45e7d5a3ab55c299e30c65fb3d4e809a6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 7 19:00:13 2019 +0100

    inspect: get icon of Gentoo guests
    
    The icon is installed by x11-themes/gentoo-artwork, which is not
    installed by default (and most probably only on "desktop"
    installations), although it's the best hit so far...

commit 1dd0354ccf6ac75b6dfbe810b961c4cad47c741d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 6 15:19:53 2019 +0100

    inspect: revamp icon extraction for *SUSE guests
    
    Newer versions do not have the 24px distributor.png icon; OTOH they have
    the 48px version, so look for that one before the 24px one.
    
    Also, bump the size limit to 10K, as newer versions of the icon are
    bigger than 3K.

commit b09c7c4c32d6298e39fa413ef94e67053d86f157
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 6 15:15:08 2019 +0100

    inspect: factor out find_png helper function
    
    Isolate the code for looking for a PNG file among a specified list from
    the icon_ubuntu implementation, and switch that function to it.
    
    This is just code refactoring, with no behaviour changes.

commit 4d97cf535975a594f77b96111bf3cb6014786ea3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 6 15:05:51 2019 +0100

    inspect: bump size limit for Mageia guests
    
    Newer versions of the logo in Cauldron are almost 3K, so bump the limit
    to 10K for now.

commit 096f7d3be5579d69f28ac4c0915e8ad64547a176
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 29 15:07:18 2019 +0100

    v2v: linux: use NEVR for querying RPM packages (RHBZ#1669395)
    
    Use NEVR when querying RPM for the list of files of a package, instead
    of ENVR.  Also, use the epoch only when non-zero, and version of RPM
    supports it.
    
    The approach is basically copied from what supermin does in its RPM
    package handler.

commit 60c63b73119e00e1f92d4d08668b2e6343637fb5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 21 15:59:45 2019 +0000

    build: Reduce -Wformat-overflow=2 to =1.
    
    GCC 9 gives this error:
    
    qemuopts.c: In function 'qemuopts_to_config_channel':
    qemuopts.c:987:29: error: '%.*s' directive output between 0 and 2147483647 bytes may exceed minimum required size of 4095 [-Werror=format-overflow=]
      987 |             fprintf (fp, "  %.*s = ", (int) k, values[j]);
          |                             ^~~~
    qemuopts.c:987:26: note: assuming directive output of 1 byte
      987 |             fprintf (fp, "  %.*s = ", (int) k, values[j]);
          |                          ^~~~~~~~~~~
    
    See discussion at the following GCC bug:
    
    https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88993

commit fb76badf8c2600f3550af2ad08d0a76467caa1f9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 23 14:56:27 2019 +0100

    build: correctly report whether vala is enabled
    
    Use the right autoconf variable.
    
    Followup of commit 4f96e823d31109a4458be700a1270566e05eae3e.

commit 81fce0b463e2566dc3d40f976db262a7a113744b
Author: Corentin Noël <corentin.noel@collabora.com>
Date:   Tue Jan 22 13:12:57 2019 +0100

    gobject: Add Vala binding support
    
    RWMJ: Add optional dependency on vala to the docs.

commit e7cae83600bb88bbaf592144060d079447b97fdb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 22 13:04:59 2019 +0100

    python: change types for RBufferOut/FBuffer with Python 3 (RHBZ#1661871)
    
    So far RBufferOut return values, and FBuffer struct fields are 'str' on
    all the versions of Python.  Python 3 distinguishes between 'str'
    (unicode strings), and 'bytes', with 'str' no more able to hold
    arbitrary data.
    
    For this reason, switch the return value of RBufferOut functions, and
    FBuffer struct fields to bytes on Python 3: while this is a potentially
    incompatibile change, this is the only way to handle safely sequences
    of arbitrary bytes.

commit 51d5fd088b58e78211119381df758a1f9bc4880a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 22 12:43:11 2019 +0100

    python: fix call of Python handlers of events
    
    Make sure to reference the arguments, to make sure they are kept alive
    during the function call; this is visible when setting an event handler
    for the CLOSE event, and testing it with Python 3.
    
    This does not seem to create a memory leak e.g. with Python 2.
    
    Also, switch away from the quasi-internal PyEval_CallObject to the
    public PyObject_CallObject, which takes care of doing safety checks.

commit a5d976aa7736ff675234ba627657854e4538929a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 18 13:22:26 2019 +0100

    build: integrate ocaml-link.sh with automake silent rules
    
    In case either the silent rules are disabled, or V=1 is set, print the
    full command line that is executed.

commit 6c1a86d5410cdfa4e45ebe14f0fdfc7b960791d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 17 12:03:07 2019 +0000

    valgrind: Add workaround for slow loading of debuginfo by valgrind.
    
    See nbdkit commit
    https://github.com/libguestfs/nbdkit/commit/bd32d899edb4c592a2df0ce4b26a2cf8396eba1d
    and https://bugzilla.redhat.com/show_bug.cgi?id=1662656

commit 2227128b4b9acfb1b7631ad352944ca5f80d0b1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 15 14:39:41 2019 +0000

    Version 1.40.0.

commit 38d748b2450dfc025f748a1623db33145c103e67
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 16 11:49:45 2019 +0000

    po: Drop ca and pt_BR from linguas.
    
    Commit 4252a490bb117940c1d38c838345ed110457386e dropped the PO files
    for ca (Catalan) and pt_BR (Brazilian Portuguese).  However it did not
    drop these languages from the linguas line in the Makefile resulting
    in a build failure.

commit ccf0fe1667cc95b8950d17e7eb28178f67328d4a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 16 11:39:33 2019 +0000

    configure: Move remaining detection of p2v features to m4/guestfs-v2v.m4.
    
    ./configure output now contains a distinct section for v2v and p2v:
    
      --- Checking the virt-v2v and virt-p2v dependencies ---
      checking for the nbdkit python plugin name... python3
      checking for --with-gtk option... 2
      checking for GTK... yes
      checking for DBUS... yes
      checking if we can build virt-p2v... yes, with Gtk 2
    
    Thanks: Pino Toscano.

commit 20e703d879b3e1cf00c9d9c9544a170f42ad8e02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 8 12:11:20 2019 +0000

    v2v: -o rhv-upload: Allow configure to set the nbdkit Python version.
    
    No functional change, but it does allow downstream distributions to
    adjust the nbdkit Python plugin used by virt-v2v -o rhv-upload mode:
    
    ./configure --with-virt-v2v-nbdkit-python-plugin=...

commit 243ca820beb41a0308be0ae217e5a3143ff2a513
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 15 14:43:28 2019 +0000

    po-docs: uk: Fix inconsistent use of \n in translation.
    
    Invalid po file ./uk.po:
    ./uk.po:90428: 'msgid' and 'msgstr' entries do not both begin with '\n'
    msgfmt: found 1 fatal error

commit b2d30e9040d216582f733bddd022d96dfb2a44a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 15 13:43:29 2019 +0000

    docs: Finalize release notes for 1.40.
    
    Updates commit 0ce8ecdf6627bedfebc235fc4fd69f435a480e88.

commit e5b2ada5235083afbc3b497ce842d383c04c8e12
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 15 13:42:18 2019 +0000

    website: Update website for 1.40.

commit 3bdbe518fe5f0b622768695fbbbe8cedd9eae112
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 14 17:07:45 2019 +0100

    inspect: fix inspection of partition-less devices (RHBZ#1661038)
    
    When parsing "xdev"-kind devices, do not assume that the partition
    number can be converted to integer: re_xdev accepts an empty part of the
    partition number, so just handle as it is, as string.
    
    This fixes a regression due to the conversion of the inspection code to
    OCaml, as the old C version did not have this issue.

commit a3f829d4913e624032e617b17b9123dd3de7dbd6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 11 17:00:11 2019 +0100

    OCaml: use the new behaviour of Std_utils.which
    
    Since Std_utils.which can handle relative/absolute paths, remove the
    manual checks, and use Std_utils.which directly.

commit dbdbf2af590acbfcb8bf79680c7e8214b53879e7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 11 15:59:03 2019 +0100

    mlstdutils: allow relative/absolute paths for Std_utils.which
    
    Make Std_utils.which behave a bit more like which(1), checking the
    existance of relative/absolute paths specified.

commit deb3261e09061a41ef8eca20d4fae3ea38d51c7c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 11 15:19:48 2019 +0100

    mlstdutils: add a very simple test for Std_utils.which

commit b9a0e2fc4bb4a817c5f94832b8262758703aa508
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 14 15:18:34 2019 +0100

    automake2junit.ml: string -> bytes
    
    Make it usable OOTB with OCaml >= 4.02.0.

commit efc86779719f9ca61c69db07dae905b582f9c66b
Author: Yuri Chornoivan <yurchor@ukr.net>
Date:   Fri Jan 11 17:14:21 2019 +0000

    Fix miscellaneous typos in comments.

commit 3872a696bc47a4954c219f7e133f59a03a9768aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 8 18:29:14 2019 +0000

    Update gnulib to latest version.

commit 956acd37eb170a745f940c8f5efaf41ee28ad029
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 8 16:11:31 2019 +0000

    Update PO files from Zanata.

commit 9c066089fbe37a757c37fdaa4bc0e46480cd1550
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 8 14:03:25 2019 +0000

    v2v: -o openstack: Don't echo full commands (RHBZ#1664310).
    
    They can contain passwords or tokens if for example the
    ‘-oo os-password’ option is used.
    
    Thanks: Tomáš Golembiovský, Brett Thurber.

commit 05d085017bde9f5b891ae5420f69f36b6ab2faee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 8 11:58:30 2019 +0000

    Update copyright dates for 2019.
    
    This command run over the source:
    
    perl -pi.bak -e 's/(20[01][0-9])-2018/$1-2019/g' `git ls-files`

commit 895f30ee399bc5b32f7ac6bb1fd26811ccc90901
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 7 16:48:15 2019 +0000

    Update release notes for 1.40 release.

commit 3c13ea8da1f77ff1343e0747a1aba8dc9fb32ab7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 2 16:44:07 2014 +0100

    Revert "launch: libvirt: Use qemu-bridge-helper to implement a full network (RHBZ#1148012)."
    
    We've been carrying this exact patch in RHEL 7 for several years.  It
    reverts the change made in 2014 where we switched to using the virbr0
    bridge for libguestfs networking instead of SLIRP.  We thought SLIRP
    was going to become unsupported in qemu, but recently there have been
    more encouraging signs since it looks like SLIRP will be spun off as a
    separate project, running as a modular process and properly secured
    and supported.
    
    This reverts commit 224de20b9a8d5ea56f6337f19b4ca237bb88eca0.

commit e63b9ac1a13f000d57af8f2f322ef3aa677da366
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 7 12:23:25 2019 +0100

    v2v: further doc update for VMware roles
    
    Remove "Allow virtual machine download", added with
    commit 37955f14aa628bedbe0c06bddb5f8fa4f508cc62, because it does not
    seem to be actually needed.
    
    Related: RHBZ#1530967

commit bf09cf399d51951f7f9a755498f8d3e086c4c88b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 13 18:36:20 2018 +0100

    v2v: -o rhv-upload: decouple name of nbdkit python plugin
    
    Do not assume that the Python plugin of nbdkit has the same name of the
    Python interpreter.
    
    Use the default upstream name of nbdkit to identify it; downstream
    distributions must adjust this variable, in case they rename the Python
    plugin of nbdkit.

commit 65e4d5a43e6141066746f4894b64cb3cc344913e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 14 13:06:44 2018 +0000

    v2v: windows: Add comment about possibility of removing GPO restrictions.
    
    Although it may not be a good idea because usually they are installed
    for a reason.

commit 50282db683fd3a7ad14941767e77379c5597e22a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 13 11:49:48 2018 +0100

    v2v: update docs for VMware roles (RHBZ#1530967)
    
    Update the list of permissions needed for VMware vCenter 6.5.

commit 4807509e4b484e1b0475dfbbaf34a92f56bce7e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 12 12:35:30 2018 +0000

    Version 1.39.14.

commit 1828792fed214682dcec332fe98c2bbf4f9fd928
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 12 12:26:48 2018 +0000

    lib: direct: Move serial option from -drive to -device.
    
    qemu deprecated and removed this option from the -drive parameter,
    resulting in:
    
      Block format 'raw' does not support the option 'serial'
    
    See also:
    https://www.mail-archive.com/qemu-devel@nongnu.org/msg574583.html

commit 9f84aa06cc6a2de4b91b475d92680c02cc6a9f35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 19:40:02 2018 +0000

    Version 1.39.13.

commit 91b2d31b1e445f41726724c6f86e5af34157fd7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 19:38:09 2018 +0000

    gnulib: Use https URL instead of git.
    
    This is apparently more secure (against MITM attacks), and furthermore
    Savannah git: access is broken at the moment.

commit b505136daf155af1c903a0dc4a9f517f15b8ffde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 19:15:22 2018 +0000

    Version 1.39.12.

commit b769808da650ee331e4b2d7108d97732dff9b19d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 17:53:29 2018 +0000

    tests: Provide a way for skipping tests/bigdirs/test-big-dirs.pl.
    
    This test is currently broken because of a kernel bug
    (https://bugzilla.redhat.com/show_bug.cgi?id=1657200).

commit 7b6d5f7cefc2f2035e600becdcfc686154c10ef6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 16:38:55 2018 +0000

    tests: Fix console for slow tests on Ubuntu 18.04.
    
    Use the same fix as for Debian and Ubuntu 16.04.

commit 99ab5eac2fb32488790f0ec3b8e22032138ff48d
Author: Nir Soffer <nirsof@gmail.com>
Date:   Fri Dec 7 19:55:28 2018 +0200

    v2v: -o rhv-upload: Fix emulated zero
    
    Replace python 2 only "buffer" with "memoryview".
    
    Falling back to emulated zero would fail with:
    
        NameError: name 'buffer' is not defined
    
    I did not test the changed code but it was not tested before so it is
    unlikely to be worse.
    
    Detected by pylint.

commit ade48b45ff7b0e3fe279b3fb52c7b9f572400ad2
Author: Nir Soffer <nirsof@gmail.com>
Date:   Fri Dec 7 19:30:15 2018 +0200

    v2v: -o rhv-upload: Fix request headers in pread
    
    headers was initialized with a set literal {"key", "value"} instead of
    dict literal {"key": "value"}.
    
    Calling pread() will fail with:
    
        AttributeError: 'set' object has no attribute 'items'
    
    I did not test the changed code, but it was not tested before, so it is
    unlikely to be worse.
    
    Detected by pylint.

commit fb69ce801a54d0bee67dd1cfbb9a06b3a79e3b15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 6 14:52:59 2018 +0000

    builder: Add a second archive repo to the virt-builder repos.
    
    builder.libguestfs.org has almost run out of space.  I would like to
    move templates for older guests to the archive site (which is slower
    but has unlimited space).  The easiest way to do this is to add a
    second repo.
    
    This only affects obsolete/unsupported Fedora releases.

commit 0e8cde39a8bd2540e159e0849f92d8569b42e748
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 6 14:51:42 2018 +0000

    builder: Fix redirect in virt-builder configuration.
    
    For a while libguestfs.org/builder has redirected to
    builder.libguestfs.org.  This change just makes virt-builder go direct
    to the subsite instead of via the redirect.

commit 64edfc7982073b96f5b417130b5bd23b6e3205a9
Author: Nir Soffer <nirsof@gmail.com>
Date:   Fri Dec 7 02:44:21 2018 +0200

    v2v: -o rhv-upload: Fix upload when using https
    
    Fix rhv-cafile option access, broken by commit 6694028f9827 (v2v: -o
    rhv-upload: Only set SSL context for https connections).

commit c373150c353723a1c4391d53910926f91ddbc08b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 6 15:45:34 2018 +0000

    builder: templates: Build CentOS 7.6.

commit f89d227c6a627877c290cb66859017287a8c66a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 5 20:17:13 2018 +0000

    v2v: -o glance: Mention glance(1) in the SEE ALSO section of the manual.
    
    It is already mentioned in the main body text.

commit a69459f6e9c2d994f5ad3f3d5e6b98f7bad09e3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 09:14:11 2018 +0000

    v2v: -o openstack: Check openstack binary exists before running it.
    
    Improves the error message when openstack is not installed.
    
    This also mentions the openstack command in the manual page.

commit 0c048d49e1ae33ced7a40ca72c5b0f3fc1ef9262
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Dec 4 22:46:40 2018 +0100

    v2v: don't fail when virtio-win does not have qemu-ga packages
    
    It should not be error to use virtio-win ISO that does not have Linux
    packages of QEMU Guest Agent. Only oVirt/RHV guest tools ISO has such
    packages now. Regular virtio-win ISO does not have them and maybe never
    will.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit d0023ac641d9da588523218bf7de81c137055d46
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 4 18:43:59 2018 +0100

    v2v: linux: improve regex for resume= entries (RHBZ#1651987)
    
    Add few more characters for the devices of resume= entries in the
    command line of grub: this way it is possible to match also /dev/mapper
    devices.
    
    This should require no further processing, since the names of the
    /dev/mapper devices do not change after the conversion.

commit b140200db2c89ecdf03381799dbaa0188a1e7496
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 30 14:56:16 2018 +0000

    tests: md: Increase size of MD partitions in test.
    
    Commit c11a92751e003b3d4bc3584b598afc9bd9d9e703 chose some strangely
    sized partitions for testing Linux MD devices.  The disks were 100M
    however the four partitions only covered the first 10M of disk space
    (with the rest being unallocated and unused in the test).
    
    This worked until Linux 4.20 where the ~2M-sized partitions become too
    small for a Linux MD device.
    
    This commit changes the test to use four 20M-sized partitions which is
    sufficient space to create the MD device with recent kernels.  I also
    modified the partition allocation code to use explicit calculations
    and variables, making it considerably clearer.

commit ca1c527c23f1f9b32703d6b1433449b55e659e22
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 30 12:30:34 2018 +0100

    lib: inspect: tweak limits of package manager files
    
    Tweak the limits of the files of package managers downloaded to list the
    installed applications:
    - bump RPM 'Packages' up to 500M: Fedora installations upgraded to each
      new Fedora release have an ever-growing file, reported to be even
      slightly bigger than 400M
    - reduce the other files down to 50M: they are usually small, not bigger
      than 1M-5M, so 50M is a good enough high threshold

commit eb574679670c74f8b0f72fa213bfc4cbec29451e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 30 11:40:51 2018 +0100

    lib: inspect: split limits of package manager files
    
    Use different defines for the limits of the package manager files
    downloaded during the inspection of applications.  This way it will be
    possible to tweak each of them without affecting the others.
    
    This is a minor refactoring, with no behaviour change.

commit 697e03c12349b81f08c2fba54ade2b05145d3302
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 30 11:29:43 2018 +0100

    lib: move MAX_PKG_DB_SIZE to inspect-apps
    
    It is used only there, so avoid exposing it to all the users of
    guestfs-internal.h.
    
    This is just code motion.

commit d70a060c8e302a84c48a93910c10ca816fe2cac6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 30 12:41:03 2018 +0100

    inspect: handle os-release "opensuse-tumbleweed" as opensuse
    
    Followup of commit 70407cd622dda6f088a0876e1e1ae669e9f8a281 for openSUSE
    Thumbleweed.

commit 58e8c191fdf4707643e8cdf4bbb0c37ba3c16c9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 21 10:55:45 2018 +0000

    v2v: docs: Remove sentence about supporting qemu-kvm-rhev in RHEL (RHBZ#1651977).
    
    The previous support documentation said that for UEFI guests, when
    using RHEL ≥ 7.3 host, you must use qemu-kvm-rhev.  For RHEL 8 this is
    inaccurate since qemu-kvm-rhev no longer exists.
    
    To fix this I've dropped the whole sentence.  It only applies to the
    downstream product (RHEL) and so RHEL can add the right documentation
    if it needs to.
    
    Thanks: Ming Xie, Pino Toscano.

commit 553a4591158ff4feb435308937c37da25e88cdb6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 30 11:03:14 2018 +0000

    Replace -nodefconfig with -no-user-config.
    
    This option was removed from qemu for no apparent reason except to
    break existing consumers.  It does the same as -no-user-config, added
    in May 2012, so use that instead.

commit 23092eed101683a40e0259f989fdddb103ea0d26
Author: Martin Kletzander <mkletzan@redhat.com>
Date:   Fri Nov 23 21:14:55 2018 +0100

    v2v: Add support for libosinfo metadata
    
    There's a standardized libosinfo namespace for libvirt domain metadata.  For now
    it supports the id of the OS only.  However that is still a very helpful feature
    that is already supported in gnome-boxes and virt-manager (at least).
    
    The discussion happened here:
    
      https://www.redhat.com/archives/libosinfo/2018-September/msg00003.html
    
    So let's add the support to local and libvirt outputs.
    
    Signed-off-by: Martin Kletzander <mkletzan@redhat.com>

commit bc5f0e23d2565209644a1ffcbfa596621dcb3dc7
Author: Martin Kletzander <mkletzan@redhat.com>
Date:   Thu Nov 22 23:55:24 2018 +0100

    Fix include for xattr.h
    
    The proper file that should be included is `sys/xattr.h` as that comes from
    `glibc` and not `attr/xattr.h` which ships with the `attr` utility.
    
    New enough `attr` utility (at least 2.4.48 in my case) even includes a #warning
    in `attr/xattr.h` for projects that still have this mistake in the code.

commit b4d0df5fbfd9b0823df97d1f8c46998d93c79a33
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 17:00:33 2018 +0000

    v2v: -o rhv-upload: Fix test so it doesn't fail if Content-Length header missing.
    
    If the Content-Length header was missing from the headers returned by
    the server then the test would fail with:
    
    KeyError: 'content-length'
    
    This happens on RHEL 7.6 in particular.  We can fix this by using an
    alternate method to fetch the header, which will return None instead
    of throwing an exception if the header doesn't exist.  See:
    https://stackoverflow.com/a/19255675

commit 6b070f51c53683721e8ad04f3aa56217c4bfd6a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 19 18:53:42 2018 +0000

    v2v: -o openstack: -oo verify-server-certificate=(true|false) (RHBZ#1651432).
    
    If ‘virt-v2v -oo verify-server-certificate=false’ is used then
    ‘openstack --insecure’ flag is added whenever we invoke the openstack
    command.  This turns off SSL certificate validation.  The default is
    to verify the server certificate (which is the default of the
    openstack command).

commit 7e81c67eff031803456e806e7f241dcfa9fee046
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 12:19:18 2018 +0000

    v2v: -o openstack: Restrict passthrough auth params to ‘os-*’.
    
    This was already documented, but the implementation allowed you to
    pass through anything to the openstack command.

commit 9615fa341c4a6174346507792cb5e25ccbb5d416
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 14 15:47:24 2018 +0000

    test-data: Allow tests to be run when Btrfs is not available.
    
    Create the fedora-btrfs.img as an empty file.
    
    The only place this is used explicitly is tests/mountable/
    test-mountable-inspect.sh, but that test already skips if !btrfs.
    
    Also this is used via guests-all-good.xml, but the script that creates
    this XML skips the file if it has zero size.

commit 87c3c59871d08f1e6131c67426ac97a4e99d6fd4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 19 19:05:59 2018 +0000

    common/mltools: Add a debug statement when we try to run a non-existent program.
    
    Previously:
    
      $ virt-v2v -v -x -i disk fedora-28.img -o openstack -oo server-id=foo
      virt-v2v: libguestfs 1.39.11fedora=29,release=1.fc29,libvirt (x86_64)
      libvirt version: 4.5.0
      virt-v2v: error: openstack: precheck failed, there may be a problem with
      authentication, see earlier error messages
      rm -rf '/var/tmp/null.dTxRFN'
    
    Notice there is no "earlier error message".
    
    After this commit the error changes to:
    
      openstack: executable not found
      virt-v2v: error: openstack: precheck failed, there may be a problem with
      authentication, see earlier error messages

commit a0e52189327ace0c4c154db3ab7ee34792474d1a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 19 19:30:41 2018 +0100

    v2v: create an empty windows.vmdk in case of disabled appliance
    
    In case the appliance is disabled at configure, then all the phony
    guests will not be built during the 'make check' time.  Since the tests
    already handle an empty windows.vmdk fine (in case ntfs-3g is not
    available), then just create it empty in this case.
    
    Reported by: Martin Kletzander.

commit 96d075215760c29c4e4ecf31f19593708c004a19
Author: Martin Kletzander <mkletzan@redhat.com>
Date:   Mon Nov 19 23:52:07 2018 +0100

    m4: Add java search path for Gentoo
    
    In Gentoo the java alternatives are managed using jva-config (or eselect java),
    but because the selection is treated as a configuration the symlink to the
    current jvm selected is stored in /etc, particularly in the symlink
    /etc/java-config-2/current-system-vm which works such as /usr/lib/jvm/default.
    
    Signed-off-by: Martin Kletzander <mkletzan@redhat.com>

commit 7907375b9f140de47e4e8fb2a2e8317996368f02
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 7 17:33:10 2018 +0100

    v2v: windows: uninstall VMware Tools
    
    It looks like VMware Tools support their unattended uninstallation even
    after the guest is not running anymore on VMware.

commit 53847717fa1d0ffc2a174275badf486eb1ed6fae
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 7 15:11:24 2018 +0100

    v2v: windows: factor uninstall commands search
    
    Turn the code for 'prltools_uninsts' into an helper function
    'unistallation_commands', so that can be used also for other
    applications installed.

commit df674800dcd7223623c877823d8862c94697d931
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 14 19:00:38 2018 +0000

    v2v: tests: Fix module ordering of v2v_unit_tests.
    
    New dependency from Windows_virtio -> Linux requires the
    objects to be linked in a slightly different order.
    
    Fixes commit 6b2e0b5468e5e2f427560653e093e84855b8c03c.

commit 4bde87e340aacf2ced25e80c1d3da3d02f27d066
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 1 14:15:47 2018 +0000

    v2v: Split up huge manual page into smaller pages.
    
    The primary virt-v2v(1) page now contains a more concise overview of
    virt-v2v, along with things like detailed options documentation which
    we would expect in a tool manual.
    
    The documentation for VMware, Xen, local output, oVirt and OpenStack
    has been moved to new pages where it is introduced in a more narrative
    / tutorial style.  The idea is that people who are interested in
    converting from or to these sources will be able to start at
    virt-v2v(1) for an overview before moving to one of these new pages
    for a friendlier introduction to the topic.
    
    The support matrix has also been moved to a new page called
    virt-v2v-support(1).  The idea is that downstream packagers will be
    more easily able to modify or completely replace this page according
    to their support requirements.
    
    When rewriting the VMware documentation, I dropped the section
    "INPUT FROM VMWARE ESXi HYPERVISOR" which discussed using
    virt-v2v-copy-to-local.  This should no longer be necessary since you
    can use SSH or VDDK.  (See also previous commit).

commit c1c4ed4c16e83a83d6d2835e05d6adf97836db70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 1 13:00:40 2018 +0000

    v2v: copy-to-local: Remove references to using this tool for ESXi.
    
    virt-v2v is capable of accessing ESXi hypervisors now.  There is only
    one remaining use of this tool - when converting from Xen hypervisors
    over ssh which are using host block devices for storage.

commit b2e4dd306067b526edecc31c7fe99253b30a498d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 14 18:17:16 2018 +0000

    test-data: Fix indentation in make-fedora-img.pl.
    
    Only a whitespace change.

commit fa8d5419c830eb942679d9e341b2b67f58324a31
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 14 17:07:49 2018 +0000

    v2v: Reduce the amount of appliance memory back to around 2GB.
    
    Commit ba82fb023de8ff0d271b4b82e3ef12a8d169728e changed the default
    libguestfs appliance memory from 500 -> 768MB.
    
    Virt-v2v used a formula to calculate how much memory to use which is
    based on this which was designed to result in around 2GB of memory:
    
      500 * 20 / 5 = 2000
    
    However after the commit the same formula now produces:
    
      768 * 20 / 5 = 3072
    
    This commit reduces the numerator in the formula to yield (about) 2GB
    again:
    
      768 * 14 / 5 = 2150

commit 18345acbefc21f4aab00c3b1447751e0c3e65ce5
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Nov 13 23:36:07 2018 +0100

    v2v: linux: install QEMU-GA (RHBZ#1619665)
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 90cecf1003e9d30293e0b144d8e32656c96fa5cd
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Nov 13 23:36:06 2018 +0100

    v2v: fix path construction in Windows_virtio.copy_files()
    
    Some paths in the function are evaluated in libguestfs environment.
    Previous commit copied the invalid construction. This is now fixed.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 409311ed5d78249488e5add22d6c79f2fb629368
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Nov 13 23:36:05 2018 +0100

    v2v: refactor copy_drivers() in Windows_virtio
    
    Changed the function to be more generic and renamed.
    The only change in behavior is in produced debug messages.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit b1086f14b893b93e1ffc55a82d939152569e59d1
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Nov 13 13:41:41 2018 +0100

    v2v: linux: install packages
    
    Install packages from local files without touching network.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit e277f6fe2f01f6802278e036176363b18b040bd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 8 17:03:41 2018 +0000

    Update gnulib to latest.
    
    Various tests fail with the new Linux kernel, update gnulib to see if
    this helps.

commit f8e4cfd39be32af6c506aa43387a1bfcc7b67865
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 6 17:28:48 2018 +0100

    p2v: use newer GTK+ APIs if possible
    
    Make use of APIs available in early GTK+ 3 versions, adding
    compatibility functions/macros for older GTK+ versions.
    
    There is no behaviour change, and it helps in porting to even newer GTK+
    versions.

commit e9b0edd4eb62ef428b39799dccc59bc8f0c86b38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 6 21:44:42 2018 +0000

    builder: templates: Set 0644 permissions on final disk image.
    
    I think libvirt or virt-install has changed recently so that it
    creates disk images which are not public readable.  This has lead to
    me uploading two sets of non-readable templates for virt-builder.  Set
    the mode explicitly to 0644.
    
    Thanks: Laine Stump, Jacob Shivers.

commit 63f2bd00a222f3b8e8849112e5e82e5f5c41398b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 6 12:52:08 2018 +0100

    p2v: make-disk: rely on os-release for host distro detection
    
    Instead of assuming the latest Fedora version if /etc/redhat-release is
    available, or the latest Debian with /etc/debian_version, use only
    /etc/os-release.  The possible name of the virt-builder template is
    created by concatenating $ID and $VERSION_ID, which is generally a
    better guess than what previously done, and better matches the host OS.
    
    This affects only the case when os-version is not specified as command
    line argument.

commit 3bd3454e39f7a1026b3053ae107b0d38f5d82e15
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 5 17:04:20 2018 +0100

    p2v: add a Shutdown action (RHBZ#1642044)
    
    Add a "Shutdown" action to the Shutdown button in the conversion dialog,
    before the Reboot action: this way it is possible to shutdown the
    physical server directly from the GUI after the conversion.

commit 9239574a0a55663f273ea41d2fd076932590aed6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 5 16:56:19 2018 +0100

    p2v: turn Reboot button into a Shutdown popup menu button
    
    To ease adding a proper Shutdown action in the conversion dialog, turn
    the current Reboot button into a button that pops a menu up, with Reboot
    as the only available action.
    
    The menu is implemented using a popover when using "recent" versions of
    GLib, and GTK+ 3, because of all the APIs needed.  In older versions, a
    simple toggle button with menu is used, which though needs a manual menu
    firing when pressing the button itself (and not its side arrow).

commit 73e009c04cfb65f6b251dbfe1b1c7eda56f8afa7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 6 12:22:33 2018 +0000

    v2v: windows: Document use of pnputil to install drivers.
    
    This seems to be necessary for Windows Server Core 2012 + R2, although
    it has not been necessary with virt-v2v previously.  By adding this
    simple comment-only change we will know this for future reference.

commit 3597cad9c79d640e2792d8cfc9a6ea6c11acf96f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 5 17:58:51 2018 +0000

    v2v: -o qemu: Comma before -device ...,mac=<MAC>
    
    The comma before the mac option was lost accidentally during
    refactoring in commit f6ece2c01a9a1a43d6715103e7dbdda0f09ee862.

commit c382562842ca3a28e0d06054fd426d505ca368bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 19:41:46 2018 +0000

    lib/launch-libvirt.c: Fix tabs/spaces issue in this file.
    
    Convert randomly used tabs into spaces.

commit 3bd211d59e8b0d5b976521f2939c92d07a749cf4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 4 12:29:20 2018 +0100

    lib, p2v: Use single_element() macro where possible.
    
    After the previous commit, wherever we had:
    
      start_element ("foo") {
        string ("bar");
      } end_element ();
    
    this can now be replaced by:
    
      single_element ("foo", "bar");

commit 0140d402fe1d1344351f2a80bba166ef5576571d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 4 11:52:22 2018 +0100

    inspector: Use libxml writer macros.
    
    Change virt-inspector so it uses the common set of macros.  I also
    added:
    
    * single_element() and single_element_format():
      creates <foo>bar</foo> which is used extensively by virt-inspector
    
    * base64():
      used by virt-inspector for the icon

commit a9c39a055cab3f9fa0a3dbe6ff3b6ce8cfc3d64a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 4 11:16:47 2018 +0100

    common/utils: Move libxml2 writer macros to a common header file.
    
    In some places when generating XML output in C code we use some clever
    macros:
    
      start_element ("memory") {
        attribute ("unit", "MiB");
        string_format ("%d", g->memsize);
      } end_element ();
    
    This commit which is mostly refactoring moves the repeated definitions
    of these macros into a common header file.
    
    I also took this opportunity to change / clean up the macros:
    
     - The macros are now documented properly.
    
     - comment() and empty_element() macros are now available everywhere.
    
     - Error handling has been made generic.
    
     - Added do..while(0) around some of the macros to make them safe to
       use in all contexts.

commit fad5372e072328a43fa327380689d9c33046eadf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 4 12:48:51 2018 +0100

    docs: Allow enhanced comments for macros (ie. #define).

commit a59a42afaed62329d0184422c86c67c77843bb1c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 16 13:40:27 2018 +0100

    lib: Increase default memory assigned to the appliance.
    
    With recent Linux kernels, adding and partitioning 255 disks causes
    the appliance to run out of memory.  This causes a test failure in
    tests/disks/test-255-disks.sh.  This change gives the appliance enough
    memory to complete the test.

commit 40233f489bd4f2690f5d14f61bd06263ebdef796
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 12 17:16:20 2018 +0100

    lib: Use qemu-img info -U option to avoid locking error.
    
    https://bugs.launchpad.net/qemu/+bug/1740364

commit 25a0093548e4f47da30c510b43343fc983bf255c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 1 12:11:43 2018 +0000

    builder: Add RHEL 7.6 templates.

commit 9f2b983e68bf9059bb8e3d3084b1d424cc623210
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 1 10:10:08 2018 +0000

    builder: Add Fedora 29 templates.

commit ae86d473d257f2a6a139edb94b59a7703e2c887e
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Wed Oct 10 19:25:50 2018 +0200

    v2v: enable UEFI for oVirt/RHV outputs
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>
    
    RWMJ: Update documentation with versions of oVirt/RHV and virt-v2v
    required for UEFI support.

commit c4d2800d90bf97118eef9a091a461126fad979a8
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Wed Oct 10 19:25:49 2018 +0200

    v2v: ovf: add firmware and machine type element
    
    Add oVirt specific elemnt to OVF. It represents the combination of
    machine type (i440fx/q35) and firmware (BIOS/UEFI).
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 48174505016c9137778603fe9afed02c0f8d362c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 16:07:52 2018 +0100

    v2v: -o rhv-upload: Test using HTTP/1.1 protocol.
    
    Fixes commit b54b58c44e3f1f54a05117c758eaa21d9f1085f0.
    
    Thanks: Nir Soffer.

commit 8dc15d188211ca840b7755e4a15fc985017d37d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 22:15:37 2018 +0100

    builder: templates: Add RHEL 6.9, 6.10.

commit e18a2ac7004496338dcc8fe70f052d7b85c6b534
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 26 10:24:15 2018 +0100

    v2v: -it vddk: Add a warning about using vddk* options (RHBZ#1527334).
    
    Stress these options shouldn't be used unless you know what you're
    doing.

commit 2af28a495955a648a142ed1106157d69c041e5ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 26 10:18:16 2018 +0100

    v2v: -it vddk: Remove ‘-io vimapiver’ option (RHBZ#1527334).
    
    This option was added in error.  It never had any effect and now the
    nbdkit VDDK plugin ignores it.  Virt-v2v users shouldn't have been
    using it.
    
    This removes the option completely (so if anyone was using it they
    will now get an error).

commit 1a44f6ba35ded96eabce47a43bfeedc04a17ee10
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 4 10:57:25 2018 +0200

    v2v: linux: try to trick vmware-uninstall-tools.pl
    
    When installing the VMware tools from tarball, the installation script
    rebuilds the initramdisk of all the available kernels to inject the
    missing kernel drivers; in the end, the information on which kernels
    were changed is recorded in the internal "database" of the installation
    answers.  When uninstalling the VMware tools, the uninstallation script
    reads the saved answers, and in the case of ramdisks will do the reverse
    job done during the installation (which is done again when new kernels
    are installed).
    
    OTOH, virt-v2v already rebuilds the initramdisk of the default kernel,
    not touching the other available kernels (no matter whether they have
    the right modules or not).  Hence, trick the answers "database" of the
    VMware tools to discard all the information about ramdisks to restore on
    uninstallation: this way they are not rebuilt, and the whole
    uninstallation time will be reasonable enough (a couple of minutes or
    so).

commit 5e9acd5dde8842adea94a5c0ebc38690103a1907
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 4 10:48:17 2018 +0200

    v2v: linux: remove open-vm-tools packages
    
    Linux distributions usually ship the open source VMware tools as
    open-vm-tools (and open-vm-tools-desktop for the integration with X).
    While they will not run already anymore after the conversion, uninstall
    them during the conversion, to save some space in the converted guest.

commit 30d4629c68d75e86dae2d63dd682e65b67a7bc59
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 3 12:45:32 2018 +0200

    build: remove extra quote in result message
    
    Followup of commit 3acf6768f0142d71b826b255e00d31276b8982ac.

commit 9b36348cea185b1df583336b797ff2392b0e2c4e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Oct 2 12:54:26 2018 +0200

    rpm: generalize openSUSE support
    
    It seems that all the newer versions of openSUSE have an 'opensuse-'
    prefix in their distro ID; hence, check for that prefix at once, keeping
    compatibility for the old "opensuse" ID.
    
    Followup of commit a4e53bcbc52594f8863e7866448640f7ac8ab0f9.

commit 5697994d20bbd87552b9c06fcc56a92630f4a871
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 1 16:32:25 2018 +0200

    v2v: -o rhv-upload: test-v2v-o-rhv-upload.sh: add more skip checks
    
    -o rhv-upload requires python3, and nbdkit with the python3 plugin, so
    skip this test if they are not installed.

commit 0e39f50a88ebd09ed1d41fa09fbd6e8118da68a9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 1 15:36:29 2018 +0200

    build: support openSUSE Leap 15.0
    
    Support the ID found in openSUSE Leap 15.0 in addition to  the other
    SUSE-related IDs.  While there is already --with-distro=ID to force the
    ID without using os-release, this makes it possible to build OOTB.

commit bba57e1f881b16c7c6d1442756f5545203c0c95d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 1 09:51:15 2018 +0100

    inspection: Parse os-release "opensuse-leap" as opensuse (RHBZ#1634248).

commit b937e2bec429e767ea078b415de576f510104268
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 27 15:51:01 2018 +0200

    ocaml: make sure to pass LDFLAGS to ocamlmklibs linker (RHBZ#1624130)
    
    Pass the LDFLAGS properly as arguments for the C linker when using
    ocamlmklibs via the -ldopt option.
    
    Followup of commit 34c23403c51a4d59d826c8045e06f9aabc2ceb16.

commit 6462534c78d04c562bc67602d799bb6a02f36dd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 19 13:46:01 2018 +0100

    v2v: -o rhv-upload: Add a test.
    
    Previously this output method was almost completely untested.
    
    This commit adds a fake ovirtsdk4 module so we can test the
    -o rhv-upload method fairly completely without needing an actual
    oVirt instance around.
    
    Thanks: Pino Toscano.

commit 0bebdd210a4393097e861fca922749975852a01d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 19 15:29:13 2018 +0100

    v2v: -o rhv-upload: Only set SSL context for https connections.
    
    For real imageio servers the destination will always be https.  This
    change has no effect there.
    
    However when testing we want to use an http server for simplicity.  As
    there is no certificate or cafile in this case the call to create the
    context will fail.
    
    This also simplifies creation of the context object and recognizes the
    "insecure" flag for connecting to imageio.
    
    Thanks: Nir Soffer.

commit d41ea68fcacf98a311c47582ceb475f0ab3078e2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 19 13:59:17 2018 +0100

    v2v: -o rhv-upload: Print commands before running them in verbose mode.

commit 003e77f0240dfa7d0df7cf55b41cc523b806ce2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 21 16:15:37 2018 +0100

    Version 1.39.11.

commit 50648562713d50012b22ce7d7f57984e17162e50
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 5 17:28:57 2018 +0100

    sparsify: Fix test-virt-sparsify-in-place-fstrim-unsupported.sh
    
    Since Linux commit f663b5b38fff trimming vfat is now supported by
    Linux.  This broke the test which assumed it was not supported.  Use
    another filesystem (minix) which does not support trimming instead.
    
    Thanks: Daniel P. Berrangé and Pino Toscano.

commit 8edb6174d0ea3918f072d5489c29ac6eff413019
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 21 11:57:08 2018 +0100

    Version 1.39.10.

commit 49b746b0a8f86fb40e68bae45ca2b8778c1b019c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 13 12:20:37 2018 +0100

    lib: direct: Query qemu binary for availability of KVM (RHBZ#1605071).
    
    When using the direct backend, you should see the result of testing
    the qemu binary for the availability of KVM:
    
      libguestfs: qemu KVM: enabled
    
    Thanks: Andrea Bolognani.

commit e2d53e6a24b6fceccf7a644df4e9f818e69cb2fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 20 12:59:44 2018 +0100

    tools: Ensure CFLAGS and LDFLAGS are passed to all OCaml binaries (RHBZ#1624130).
    
    After this commit, all annocheck errors are fixed except for:
    
      Hardened: virt-get-kernel: MAYB: Gaps were detected in the annobin coverage.  Run with -v to list.
    
    After discussion with the annocheck maintainers this gap in coverage
    (which corresponds to the OCaml runtime) seems to be caused either by
    the runtime not being linked with the right flags, or might be a bug
    in annocheck itself.  In any case it's not something that can be
    resolved within the scope of libguestfs.

commit 1d47476af6f2b33b610ca2186ad9043982f9a054
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 20 12:42:59 2018 +0100

    tools: Link OCaml programs with -runtime-variant _pic if available.
    
    OCaml has a small runtime which is statically linked into the virt
    tools (providing things like GC and primitives).  Since OCaml 4.03 it
    has been possible to select variants of this runtime, one of which is
    compiled with -fPIC, using ‘ocamlopt -runtime-variant _pic’.
    
    This has performance implications on i686, but is relatively free on
    other architectures.  Since it (in theory) adds to the security of the
    final binary this commit enables it whenever it is available.

commit 981dd0f678b39a402395e980c04db0be6f803a8c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 18 17:32:07 2018 +0200

    Introduce a --key option in tools that accept keys
    
    The majority of the tools have already options (--echo-keys &
    --keys-from-stdin) to deal with LUKS credentials, although there is no
    way to automatically provide credentials.  --keys-from-stdin is
    suboptimal, because it is a usable solution only when there is just one
    device to open, and no other input passed via stdin to the tool (like
    the commands for guestfish).
    
    To overcome this limitation, introduce a new --key option in tools:
    * --key /dev/device:file:/filename/with/key
    * --key /dev/device:string:the-actual-key
    this way it is possible to pass all the credentials needed for the
    specific devices to open, with no risk of conflict with stdin, and also
    in a secure way (when using the "file" way).
    
    On the technical side: this adds a new "key_store" API for the C tools,
    making sure it is used only when needed.  Partially mirror it also for
    the OCaml tools, although there will be a conversion to the C API
    because the decryption helpers used are in the common C parts.

commit ae8a69a3f7f7aab224e4dee053ec3791565fc58d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 17 18:18:01 2018 +0200

    mltools: create a cmdline_options struct
    
    Instead of returning directly a Getopt.t handle, now
    Tools_utils.create_standard_options returns a struct, which at the
    moment contains only the Getopt.t handle.  This way, it will be easy to
    add more data needed for handling standard command line options.
    
    This is mostly refactoring, with no functional changes.

commit a87f5660eb2794176fcbb90ff735d5c1c4d18118
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 14 14:58:10 2018 +0100

    v2v: Add a slow test of Windows conversions.
    
    As with the previous commit this requires that Windows guests have
    been created first using the procedure from:
    
    https://rwmj.wordpress.com/2018/09/13/creating-windows-templates-for-virt-builder/
    
    For me:
    
    PASS: test-v2v-conversion-of-windows-6.3-server.sh
    PASS: test-v2v-conversion-of-windows-6.2-server.sh
    PASS: test-v2v-conversion-of-windows-10.0-server.sh
    
    If you don't have these templates in virt-builder then the tests will
    skip.

commit 6b6d964699af1831fe45f4a7c60f341449af388c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 13 10:19:26 2018 +0100

    customize: tests: Add slow test of Windows firstboot.
    
    This requires that Windows guests have been created using the
    procedure outlined here:
    
    https://rwmj.wordpress.com/2018/09/13/creating-windows-templates-for-virt-builder/
    
    For me:
    
    PASS: test-firstboot-windows-6.2-server.sh
    PASS: test-firstboot-windows-6.3-server.sh
    PASS: test-firstboot-windows-10.0-server.sh
    
    An incidental change is that we dump the firstboot log from the guest
    (even on success).  If the firstboot fails this is very useful for
    determining the real cause.

commit f1d6a62ba5d13fd56f4ff52f37cf7da612debcef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 14 13:49:06 2018 +0100

    customize: Use set -x for test-firstboot.sh slow test.
    
    Aids in debugging failed tests.

commit cb11b20e90847fec2753ae41229ecc8c990d01d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 14 11:59:38 2018 +0100

    v2v: -it vddk: Fix check for incorrect LD_LIBRARY_PATH.
    
    In nbdkit >= 1.7.2, nbdkit vddk --dump-plugin will print the shared
    library name in normal output, which breaks this test.
    
    The actual error when LD_LIBRARY_PATH is not set includes this line:
    
      nbdkit: error: libvixDiskLib.so.6: cannot open shared object file: No such file or directory
    
    so search instead for the error message "cannot open shared object file".

commit 203286792ff17f45fd32408dbdc2f999d4e70fc4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 11 15:57:03 2018 +0100

    builder: templates: Add Windows template support.
    
    Provides support for building:
    
     - Windows 7
     - Windows Server 2008 R2
     - Windows Server 2012
     - Windows Server 2012 R2
     - Windows Server 2016
    
    Note that these images cannot be released to the public because of
    obvious licensing issues.  But this documents how we build them for
    internal consumption so that others can also build them.
    
    Thanks: Christophe Fergeau, Tomáš Golembiovský.

commit b00c3da97a3667ec2cb175cc28cff516b2e41250
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 12 22:11:17 2018 +0100

    builder: templates: Use virt-sparsify --in-place (instead of copying).
    
    virt-sparsify in copying mode takes a huge amount of temporary space
    and takes a very long time.  In any case it's not really necessary for
    modern guests since in-place sparsification is fully supported now.

commit ae770cc0b7bab6fad2144922f79004949e926f96
Author: Nikolay Ivanets <stenavin@gmail.com>
Date:   Tue Sep 11 12:18:07 2018 +0300

    daemon: consider /etc/mdadm/mdadm.conf while inspecting mountpoints.
    
    Inspection code checks /etc/mdadm.conf to map MD device paths listed in
    mdadm.conf to MD device paths in the guestfs appliance. However on some
    operating systems (e.g. Ubuntu) mdadm.conf has alternative location:
    /etc/mdadm/mdadm.conf.
    
    This patch consider an alternative location of mdadm.conf as well.

commit 62a29f187849386fb57b4098b5a2c53171b9348b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 11 16:44:14 2018 +0100

    builder: templates: Specify --arch explicitly, even on x86_64.

commit 52867cffe22dbaace02edf789d9d49abd7a86f57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 11 16:31:25 2018 +0100

    builder: templates: Make UEFI code arch-independent.
    
    Previously it only worked for aarch64.

commit 9241385dc868b3c13f81ce4e27f8b4ca6c9f0c71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 11 16:16:26 2018 +0100

    builder: templates: Refactor code for using UEFI.
    
    Simple refactoring.

commit bdf9b1e0f175a087d7b4f0fe65948c5cfe004902
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 11 15:53:56 2018 +0100

    builder: templates: Refactor code for adding --initrd-inject.
    
    Initrd is a Linux thing, so this code should only be used for
    Linux-based OSes.  Refactor to make it a bit cleaner.

commit 442df60cdfa8c3a5bfd7cbb1ea0dd695f8347018
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 11 15:51:20 2018 +0100

    builder: templates: Add a can_sysprep_os function.
    
    Does virt-sysprep know how to sysprep this disk image?  Add a function
    to find out.
    
    Just refactoring.

commit 15d2530dc649170c4e66ad5d9ee2478ffe1e01c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 11 15:49:24 2018 +0100

    builder: templates: Rename make_kickstart function.
    
    This function will soon be used to generate Windows unattended.xml
    files (as well as Debian preseed) so just rename it back to
    ‘make_kickstart’ rather than attempting to explain in the name every
    way it could be used.

commit c6f125719fe628612f8170854ae6ef68bef4e79a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 11 15:48:35 2018 +0100

    builder: templates: Add generic method for deleting files on exit.
    
    Simple refactoring.

commit 9af0587abdf52c014cddc8e6207c6337a1cfc500
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 11:25:40 2018 +0100

    Revert "build: Maintain a central list of skipped tests."
    
    This reverts commit 79a3ac5d0eb377591e4c488257196888f0ae7e73.

commit eaa204d6acb38b94e14712afe631dc89b38febbc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 11:25:32 2018 +0100

    Revert "tests: Disable 255 disk test until we can find a way to make it reliable."
    
    This reverts commit 9b911a2a853284f973b848d809bccbdb86519583.

commit 54965103b2c7ca11bda39809be2eae05accbd294
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 11:33:48 2018 +0100

    v2v: Add -o openstack target, writes to OpenStack & Cinder using APIs.

commit 310e6201e6d8c7c362bd124a76e11ccc9bb212bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 3 16:20:54 2018 +0100

    mltools: Add with_timeout utility function.
    
    Higher-order function which performs an operation repeatedly until it
    succeeds or fails, or a timeout is reached.

commit ad1717a8863041a9a4a7cd2066ef15eddf4ed248
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 29 11:22:01 2018 +0100

    v2v: -o glance: Refactor OpenStack image properties into a new module.
    
    Straightforward refactoring.  Apart from small modifications to clean
    up the code and reorder the properties more logically there should be
    no functional change.

commit 1a5f126cbba0decda18431d291c65904a0ae792a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 3 15:24:05 2018 +0100

    v2v: windows: Fix rhev-apt command line (RHBZ#1624902).
    
    See:
    https://bugzilla.redhat.com/show_bug.cgi?id=1584678#c15
    
    Fixes commit bcdbe6405c10ecb7374ae47eee6385be17dbd49e.  However this
    bug was copied directly from old virt-v2v which did the same thing
    (from lib/Sys/VirtConvert/Converter/Windows.pm):
    
      echo installing rhev-apt >>log.txt
      "rhev-apt.exe" /S /v /qn >>log.txt
    
    Thanks: Lev Veyde

commit 5a0a22adcdaf911baff9adfaaf54c893352f306b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 3 14:30:21 2018 +0100

    v2v: docs: Describe support for SHA-2 certs for Windows 7 / 2008 R2 (RHBZ#1624878).
    
    Thanks: Yan Vugenfirer.

commit 17e0c9b98c9809fc845e915135d7d428befabfa8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 14:40:01 2018 +0100

    java: Link with gnulib to resolve missing hash_free symbol.

commit c0202144cb5364698e8e671e00eb2c4305189cf0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 13:35:51 2018 +0100

    tests: Disable 255 disk test until we can find a way to make it reliable.

commit 7df435e10d32bc64ac20069e63577f8a80606911
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 12:51:07 2018 +0100

    build: Maintain a central list of skipped tests.
    
    I was maintaining this list unofficially.  Let's maintain it in the
    sources so it is versioned and branched along with the libguestfs
    code.

commit ac31f7103b9e1c47171070bddb2957bae0b6e92c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 08:55:06 2018 -0400

    ppc64le: Remove bogus __powerpc64le__.
    
    Not a thing - tested on P9.

commit e294de7bbf92cb0b5932560a458b4f288cc6b60c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 12:59:06 2018 +0100

    ppc64le: Don't use -cpu parameter under any circumstances (RHBZ#1605071).

commit 83454a667af86cce7eb0472ae91a6f68635f2097
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 22:17:02 2018 +0100

    Version 1.39.9.

commit ea499a4770dbe64021c2f384111556670c3eddeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 22:15:30 2018 +0100

    mltools: Add test-machine-readable-script.sh to EXTRA_DIST.
    
    Fixes commit afa8111b751ed33e1989e6d9bb03928cefa17917.

commit 90da1024c1845a77c8482be9d8baa5d7b02b158a
Author: Nir Soffer <nirsof@gmail.com>
Date:   Tue Aug 28 23:50:56 2018 +0300

    v2v: rhv-upload-plugin: Use BrokenPipeError
    
    With python 3, we have a nicer way to handle socket.error with errno set
    to EPIPE (or ESHUTDOWN).
    
    This is also more correct since in some cases (that I could not
    reproduce yet with v2v), using e[0] with BrokenPipeError will fail with:
    
    >>> OSError(errno.EPIPE, "Broken pipe")[0]
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: 'BrokenPipeError' object is not subscriptable
    
    For python 2 e[0] seems to work, but is leftover from historic python
    version that used to raise a tuple instead of socket.error instance.
    In python 2.7 library code e.args[0] is used. If we ever port this to
    python 2 this is the best form.

commit a3458afe611c0dd17df9f45a5b788c29098bdd99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 21:37:29 2018 +0100

    v2v: Document how to adjust ESXi NFC memory limit (RHBZ#1614276).

commit 41af6ed016b7613b104740606f9fec0e50bf932c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 18:11:43 2018 +0100

    v2v: Add --print-estimate option to print copy size estimate.
    
    This option prints the estimated size of the data that will be copied
    from the source disk.
    
    Currently this overestimates by the size of the qcow2 header, but for
    real disk images that doesn't matter much.
    
    For example:
    
    $ virt-builder fedora-27
    $ virt-v2v -i disk fedora-27.img -o null --print-estimate
    [...]
    virt-v2v: This guest has virtio drivers installed.
    [  44.0] Mapping filesystem data to avoid copying unused and blank areas
    [  44.5] Closing the overlay
    disk 1: 1047920640
    total: 1047920640

commit e33e6709e5aa25bc2dcff2f7430d7318b960c32c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 24 13:11:09 2018 +0200

    v2v: test-harness: use Xml.parse_file
    
    Use Xml.parse_file instead of read_whole_file + Xml.parse_memory.

commit 81ddc90ca786442a2b57cd45cfd5d007425e65f9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 24 13:06:36 2018 +0200

    builder: index_parser_tests: really use parameter
    
    Really use the parameter of the "read_file" function, instead of
    hardcoding "out".  This does not change the behaviour, since all the
    callers already use "out" as the file name to read.
    
    Fixes commit 7e3689bfe019d93de2e04711a13b18248de7051d.

commit 96d96840d1e735d20075662e2bab4b87b4e7e6ad
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 23 19:12:46 2018 +0200

    builder: use the new json_parser_tree_parse_file
    
    No need to read the whole file manually.

commit 9ae15737aad5aa5b6843fc19f26361b3516236ed
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 23 19:06:22 2018 +0200

    mltools: JSON: add json_parser_tree_parse_file
    
    Easy way to parse JSON from a file, without reading it all to string
    first.

commit 2939e23ae5efc5ac12dd95e58fe5e8ca4beca0c1
Author: Sebastian Meyer <meyer@b1-systems.de>
Date:   Thu Aug 23 16:45:27 2018 +0200

    Fix error with --uninstall option on SUSE
    
    The `-l` option for some `zypper` subcommands is short for
    `--auto-agree-with-licenses` and not available on the `zypper rm` command.

commit a7abc5a19064a4b14bf8615ffc41bc6b7639d081
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 23 17:12:15 2018 +0200

    OCaml tools: add output selection for --machine-readable
    
    Add an optional argument for --machine-readable to select the output,
    adding a new function to specifically write data to that output stream.
    The possible choices are:
    * --machine-readable: to stdout, like before
    * --machine-readable=file:name-of-file: to the specified file
    * --machine-readable=stream:stdout: explicitly to stdout
    * --machine-readable=stream:stderr: explicitly to stderr
    
    Adapt all the OCaml-based tools to use the new function, so the
    --machine-readable choice is respected.

commit 347f8f37eabb32a313a319962fe7ad16929e31a9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 20 18:17:29 2018 +0200

    common/mltools: getopt: add Getopt.OptString
    
    Introduce a new type of option with an optional string argument.

commit cb8065e92406a7f06cc881233c792a67d35f03d2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 22 16:53:34 2018 +0200

    lib: create: avoid one extra string allocation
    
    When creating the qemu-img command, use the guestfs_int_cmd_add_arg &
    guestfs_int_cmd_add_arg_format APIs to add the proper filename directly,
    without creating a string for it.
    
    This should cause no functional change.

commit ee6fb621ec2795bd208999c92b20142553546b6e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 20 15:45:20 2018 +0100

    mltools: JSON: unify JSON_parser type with JSON.json_t.

commit 81560b2f063a0d4f6e843627c8464765f773b304
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 22 15:31:59 2018 +0100

    mltools: JSON: Implement JSON.Null.
    
    Implements the ‘null’ value.

commit 6d698cf27a41ad8e33848b3909c72211511558af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 22 15:24:48 2018 +0100

    build: Rebuild docs/C_SOURCE_FILES and po/POTFILES.
    
    Remove:
    
    common/utils/libxml2-utils.c
    common/utils/libxml2-utils.h
    
    These were accidentally added by
    commit a63d02f8f127d085c1d72a3213676b0830edc0ec because of a bad
    interactive rebase.

commit f28e80284d72064c6f58eb63dd09e5c24515be4a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 20 15:31:09 2018 +0100

    mltools: JSON: combine JSON.Int and JSON.Int64 into a single variant.
    
    It was convenient to have these as separate variants when we were only
    using this type to generate JSON.  However if we also use it to parse
    JSON documents then integers in the document should only map to a
    single variant.

commit 40fa72b2686cb429aba140d174ab15db5368d59c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 20 15:26:57 2018 +0100

    mltools: JSON: Implement JSON.Float.
    
    This is not actually used anywhere, but it completes the JSON
    implementation and it will be useful for unifying JSON with
    JSON_parser.

commit 6d867a55ea1417bee8f0baf19c06e7f4c78b9c1e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 14:19:25 2018 +0100

    mltools: JSON: Rename Yajl module as JSON_parser and move to common/mltools.
    
    Commit bd1c5c9f4dcf38458099db8a0bf4659a07ef055d changed all the code
    to use Jansson instead of yajl.  However it didn't change the OCaml
    module name (still Yajl).
    
    This commit changes the module to a neutral name ("JSON_parser") and
    moves it into common/mltools so it can be used by other tools.
    
    This leaves us in a slightly awkward situation of having two JSON-ish
    OCaml modules (JSON for creating trees and JSON_parser for parsing
    them) with incompatible types.  That is left for future work to
    resolve.  (It should be easier to do now that both modules live in the
    same directory.)
    
    This is just renaming and general refactoring.  There should be no
    change in functionality.

commit 9c90000a394a741d194c23cb209285a49be77d9d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 12:52:56 2018 +0100

    build: Use LT_INIT in configure.ac.
    
    Avoids the warning:
    libtoolize: Remember to add 'LT_INIT' to configure.ac.
    
    This is the new name for AC_PROG_LIBTOOL, so I removed that.
    
    However to use this macro we must enable AC_USE_SYSTEM_EXTENSIONS.
    (AC_GNU_SOURCE was removed back in 2011).

commit dbbd65726d24fc0d846d0fc948c915c8b99e0ce7
Author: Bernhard M. Wiedemann <bwiedemann@suse.de>
Date:   Wed Aug 22 05:52:10 2018 +0200

    generator: Do not claim copyright for future years
    
    This change helps to make libguestfs package build reproducible.
    See https://reproducible-builds.org/ for why this is good.
    
    Without this patch, building today's libguestfs in 2033, claims
     Copyright (C) 2009-2033 Red Hat Inc.
    which cannot be correct.
    
    This affected files like
    /usr/include/guestfs-gobject.h
    /usr/lib/perl5/vendor_perl/5.26.2/x86_64-linux-thread-multi/Sys/Guestfs.pm
    /usr/lib64/python2.7/site-packages/guestfs.py
    /usr/lib64/ocaml/guestfs/guestfs.mli
    
    Commits like 212762c59351822e9db7d3dc82afe1765808d918
    will take care of updating the year.

commit 2dac3006fc67ac9d94f5d40e1f2fb4f9f0e9621c
Author: Nir Soffer <nirsof@gmail.com>
Date:   Tue Aug 21 01:15:03 2018 +0300

    v2v: rhv-upload-plugin: Fix error formatting
    
    Fix the error format so we actually format the arguments instead of
    raising the format string and the arguments.
    
    Here is an upload error formatted correctly with this change:
    
    nbdkit: python[1]: error: /home/nsoffer/src/libguestfs/tmp/v2v.eC5yCl/rhv-upload-plugin.py:
    pwrite: error: could not write sector offset 218911744 size 3584: 403 Forbidden:
    b'{"explanation": "Access was denied to this resource.", "code": 403, "detail":
    "Ticket u\'61ac0483-48e3-4984-84d6-438884ba8bb2\' expired", "title": "Forbidden"}'

commit 342d45cd9b56266e1137bd01efc0c39ae801d2f7
Author: Nir Soffer <nirsof@gmail.com>
Date:   Tue Aug 21 01:15:02 2018 +0300

    v2v: rhv-upload-plugin: Handle send failures
    
    The oVirt server may fail a PUT request before reading all request body.
    However before closing the connection, it writes a detailed error
    response, that will make debugging issues like expired tickets much
    easier to handle. If we don't get the response and log the error, the
    error may be lost when the daemon log is rotated.
    
    Change pwrite() and emulate_zero() to get the response after EPIPE,
    failing with the error response from the oVirt server.
    
    Here is an example error log when a ticket expires during import:
    
    nbdkit: python[1]: error: /home/nsoffer/src/libguestfs/tmp/v2v.pRoyXm/rhv-upload-plugin.py:
    pwrite: error: ('%s: %d %s: %r', 'could not write sector offset 1841154048 size 1024', 403,
    'Forbidden', b'{"explanation": "Access was denied to this resource.", "code": 403, "detail":
    "Ticket u\'6071e16f-ec60-4ff9-a594-10b0faae3617\' expired", "title": "Forbidden"}')

commit 921a7535122a2ed384949968246c0e7b7322a8f4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 20 17:29:53 2018 +0200

    OCaml tools: simplify machine-readable handling
    
    Make use of the helper provided by Tools_utils.create_standard_options,
    so there is no need to implement the logic in each tool.
    
    This affects all the OCaml tools with --machine-readable, namely:
    virt-builder, virt-builder-repository, virt-dib, virt-get-kernel,
    virt-resize, virt-sparsify, and virt-v2v.

commit b1e1a9ab59508a199f5a64446422a1b91f08d751
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 20 17:29:52 2018 +0200

    mlstdutils/mltools: factorize the machine-readable option
    
    Store the machine-readable flag globally, just like done for
    verbose/debug/etc, and enhance create_standard_options to provide
    --machine-readable automatically.

commit af153d40adf8b3ae1327f7159fc71e49d8729a08
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 16:09:02 2018 +0100

    mltools: Rename run_command std*_chan -> std*_fd.
    
    These are file descriptors, not the high level OCaml in_channel/
    out_channel type, so we would normally not refer to them as *_chan.
    
    Just renaming, no functional change.

commit 3379dda36abc1155b1ddd78591b83f01016335b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 16:04:55 2018 +0100

    mltools: Document that run_command closes stdout_chan/stderr_chan.
    
    This behaviour is documented for run_commands, but not documented for
    run_command, so document it.

commit 2b07838fa07fc59c2014561c3250c4d76d5f9423
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 11:58:59 2018 +0100

    v2v: -o rhv-upload: Simplify build of Python scripts using wildcards.
    
    No functional change.

commit c9210cb1f0ff1c88313041f5420f4500fbfebad1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 14 15:58:51 2018 +0200

    v2v: parse_libvirt_xml: number disks from 0
    
    When parsing the libvirt XML, make sure to assign the IDs for disks
    (s_disk_id) from 0 instead of 1.  This does not change the actual
    behaviour, just makes the IDs like in all the other input modes not
    based on libvirt XML.

commit b86a75bf9a06fe718a10210bde0394a008352ff8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 12:50:07 2018 +0100

    v2v: -o rhv-upload: Fix error message disk numbering (RHBZ#1615885).
    
    The output method used the s_disk_id field assuming it was a unique,
    monotonically increasing number counting from 0.  However this is not
    the case, the input method simply has to set s_disk_id to be unique
    for each disk.
    
    Fixes commit cc04573927cca97de60d544d37467e67c25867a7.
    
    Thanks: Xiaodai Wang

commit 838ec9d4cfee780c4691de0cc1aea7b5bf9794f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 16:07:38 2018 +0100

    v2v: Verify that ’source.s_disks.s_disk_id‘s are all unique.

commit 3ec3bfa97b8fb93f207035698aea7cbbed7dc3b7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 10 13:58:04 2018 +0200

    Change wording from "twice" to "more than once" in error messages
    
    When erroring out about duplicated parameters, say "more than once"
    instead of "twice", since there can be more than two repeated
    parameters.
    
    Thanks to: Xiaodai Wang

commit 5a16e58fc7cef2f9261574a2d9876326d7252ae4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 9 15:01:37 2018 +0200

    v2v: parse_libvirt_xml: handle srN CDROM devices (RHBZ#1612785)
    
    This device naming is mostly written by virt-p2v, so get the slot from
    it directly without using the drive_index "decoding" function.

commit b55f3000922a70e1eb3c209a6dd5fb66c8346b6e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 9 12:14:04 2018 +0200

    daemon: utils: add a couple of checks for split_device_partition
    
    Mostly to check the behaviour of the function with cases like in
    RHBZ#1611690.

commit be6ae5350d288fc65f77287ab576b7be0bf882b2
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Aug 7 14:03:07 2018 +0200

    v2v: Add --mac option to machine-readable
    
    Patch fe1a8866 added --mac option that allows mapping bridges/networks
    based on the MAC address. It would be nice to have that listed in
    machine-readable output
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit dd1667c463cb816bfeadf4784f2e1f19c18c418c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 7 09:06:46 2018 +0100

    v2v: -o rhv-upload: Properly replace SD_UUID in OVF (RHBZ#1612653).
    
    The @SD_UUID@ pattern was not being replaced correctly.
    
    Thanks: Daniel Erez.

commit 4d79dc553c61007e3ad2fe58fa7252dbb947e26d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 6 15:36:46 2018 +0200

    btrfs_balance_status: delay allocation of 'ret'
    
    Allocate 'ret' as late as possible, so there is no risk that early
    returns will leak it.

commit 94fd630a34eb6223612a50ee1c9d4a7b62d98e9f
Author: Nir Soffer <nirsof@gmail.com>
Date:   Sun Aug 5 16:37:31 2018 +0300

    v2v: rhv-plugin: Use string literal concatenation
    
    When splitting long strings over multiple lines, we can use string
    literal concatenation instead of +.
    
    See https://docs.python.org/3/reference/lexical_analysis.html#string-literal-concatenation

commit 9ffa32639e657c68e9b94d0c88f5191a84722063
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 3 12:00:01 2018 +0100

    v2v: python_script: Use correct syntax for array slices in documentation.
    
    Fixes commit 3d4df397320e8e86932f0b0b4d100644eefc99b4.

commit 482acf46b9f4761b585fa4654d335ec0c418fdbe
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 31 18:55:07 2018 +0200

    v2v: -o rhv-upload: PEP8 fixes for rhv-upload-plugin.py
    
    - wrap a too long line
    - join strings in multiple lines using + (plus) instead of \ (backslash)

commit 72d0a465bf598636e26d182a5dcd7b6e7634e4b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 29 10:33:01 2018 +0100

    v2v: Add more detailed documentation for input methods.
    
    Just comment changes.

commit 7202f5e1ea2ae054072ecf2838a22b6b9ccdc88c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 27 17:47:43 2018 +0100

    v2v: Add more detailed documentation for output methods.
    
    Just comment changes.

commit 6c3bc45df3a90235b7467654dca3a9ddb63ad11e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 27 12:10:38 2018 +0200

    daemon: inspect: ignore fstab devs that cannot be resolved (RHBZ#1608131)
    
    If the /etc/fstab of a guest contains devices specified with UUID or
    LABEL, then the new OCaml inspection code will report the findfs failure
    as general failure of the inspection.  OTOH, the old C inspection code
    simply ignored all the devices that cannot be resolved.
    
    Hence, restore the old behaviour by ignoring unresolvable devices.

commit d6dc6d0c5257d61a5620d106a9c9f4ac6c248089
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 27 12:06:04 2018 +0100

    Version 1.39.8.

commit d9e40241a9248057f8cdf1608d3a584d0a5bfcc3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 10:53:09 2018 +0100

    v2v: Factor out code to call python scripts into a separate module.
    
    Just refactoring, no change in functionality.

commit 7432db2e0300240813f28e7e2f354c23b60d34fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 16:59:49 2018 +0100

    v2v: Pass all metadata to #prepare_targets.
    
    In commit 2894b8f3924835b6d41c0990a9df5033c2be5249, #prepare_metadata
    was added then later removed.
    
    This commit provides the same data to #prepare_targets so that output
    methods can create metadata early if necessary.  (Note that creating
    metadata here is optional, it should normally be created
    by #create_metadata method after the copying step).

commit f09b9b541b20e05db6d5662aca1285d8af55e6e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 16:47:12 2018 +0100

    v2v: Move target bus assignment earlier.
    
    By not storing the target pointer in the target bus assignment data
    struct we can move target bus assignment earlier.

commit 3774b5bcde81d4dabd525d864e3aaac6b0462b23
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 16:31:17 2018 +0100

    Revert "v2v: Add output#prepare_metadata method to prepare metadata before copying."
    
    This reverts commit 2894b8f3924835b6d41c0990a9df5033c2be5249.

commit 3a25593eb8bb8d8a43907320c312478700315c2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 16:26:25 2018 +0100

    Revert "v2v: Add --print-target to display overlay and target information."
    
    Remove this function (not available in any released stable version of
    virt-v2v).  It complicates the code and is not used anywhere.
    
    This reverts commit 9ac4f99fdc69dfd40f89b0ac14fc8ad8d53cd11c.

commit 8429f9465617023e45b2cb80de2b10f5d02c064a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 15:53:26 2018 +0100

    v2v: Remove init_targets function completely.
    
    The init_targets function is pretty odd, responsible for at least two
    rather different functions: calculating the final format of each
    target, and calling output#prepare_targets to get the output mode to
    create each target.
    
    Factor out the calculation of format into a separate function.  This
    allows us to enhance this feature, so that -o null can now properly
    override the output format (whereas previously it relied on some
    internals).
    
    After this, init_targets becomes mostly a small wrapper around calling
    output#prepare_targets and we can remove init_targets completely.

commit 9586c3c835877974473eceaed692e35ed58e8193
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 15:27:55 2018 +0100

    v2v: Move output#prepare_targets call to just before the copy.
    
    Previously we initialized the targets and called #prepare_targets very
    early on.  However this causes various problems:
    
     - the targets struct is only half-initialized
       (target_file is set to a dummy value)
     - the targets struct is passed around unnecessarily
    
    The ostensible reason for this was so that #prepare_targets is called
    very early on so that errors can be displayed quickly.  This is
    important, but in practice it doesn't really matter if the user has to
    wait for a few seconds for the conversion to happen first.
    
    We also have the #precheck method which can do some pre-checking
    functions, and that does run very early.
    
    This is just refactoring, but it will allow some more significant
    changes in how targets get initialized.  There are some large
    whitespace changes in this patch so it is better to look at it using
    ‘git show -w’.

commit 8f70a9d3024aeb985976e77ad8112dafadad9018
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 15:20:28 2018 +0100

    v2v: Move target_stats structure into overlay.
    
    As there is a 1-1 relationship between overlays and targets, it
    doesn't matter where this structure actually lives.  Move it from the
    target struct to the overlay struct.

commit b4361857b31eea7b17cd6f96de8c8bea98c47b50
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 14:00:28 2018 +0100

    v2v: Remove output#check_target_free_space method.
    
    Commit 5a620137bf48251c3deab93492e8b7156eb9e282 (in 2014) introduced
    an output#check_target_free_space method but noted that it was not
    used:
    
        Provide an extra output method (#check_target_free_space) which output
        modules may use to check that there is sufficient free space to
        proceed, before conversion starts.  None of the output modules
        actually implement this at the moment.
    
    As this method has never been used in nearly 4 years, remove it.

commit cb2397ecf08297fc514f723160c269a209c006fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 17:49:02 2018 +0100

    p2v: Generate the code and docs for parsing the kernel command line.
    
    As a side effect, a lot more fields are now settable on the
    kernel command line.
    
    Existing kernel command lines & corresponding documentation should
    still remain backwards compatible.

commit 7073c23a611b3fecd1d9cf0fea294a024d0ccc1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 15:58:31 2018 +0100

    p2v: Group configuration settings in sections.
    
    Since the previous commit introduced configuration sections, we can
    now group more configuration settings together in these sections.
    
    The largest part of this commit is a simple renaming of fields in the
    struct.

commit 78f940aed7bee1c4c94e85a58fa2d4288c498762
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 13:53:17 2018 +0100

    p2v: Generate config struct and p2v/config.c.
    
    Mostly refactoring to make it easier to add fields to this struct in
    future.
    
    I'd like to call the header p2v/config.h but that's not possible since
    it conflicts with the autoconf-generated file.

commit 6403f841326704d35d94c977efd626090809e04c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 13:37:30 2018 +0100

    inspector: Add a regression test for LUKS images (RHBZ#1602353).

commit 50329a7f47e1553728417ea38fb986098a2562a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 14:27:20 2018 +0100

    New API: lvm_scan, deprecate vgscan (RHBZ#1602353).
    
    The old vgscan API literally ran vgscan.  When we switched to using
    lvmetad (in commit dd162d2cd56a2ecf4bcd40a7f463940eaac875b8) this
    stopped working because lvmetad now ignores plain *scan commands
    without the --cache option.
    
    We documented that vgscan would rescan PVs, VGs and LVs, but without
    activating them.
    
    I have introduced a new API (lvm_scan) which scans or rescans PVs, VGs
    and LVs.  It has an optional activate parameter allowing activation of
    any new LVs that are found.
    
    With lvmetad this nicely maps to the single command:
    
     pvscan --cache [--activate ay]

commit f045c757025a99e3d93ae26f2e96bd30fdb92de9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 13:11:43 2018 +0100

    test-data/phony-guests: Add Fedora LUKS phony image for testing.
    
    This is not added to guests-all-good since it cannot be used in
    automated tests -- a password must be supplied.

commit 2dd6a73cad519e84e2620d6ce0c0bce7b8004a9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 25 12:39:02 2018 +0100

    Revert "lvm: do not pass --cache to vgscan"
    
    This reverts commit 19b0ae6c6502c4833c73e1b1bfa47b43a40f21e9.

commit 486f200d283ed5fb202dfa6d317cc1200627aec6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 19 10:44:57 2018 +0100

    v2v: Model machine type explicitly.
    
    QEMU for x86 supports two machine types, "pc" (emulating the ancient
    Intel i440FX chipset originally used by the Pentium Pro), and "q35"
    (https://wiki.qemu.org/Features/Q35).
    
    Currently virt-v2v does not set any machine type, so libvirt or the
    target hypervisor will choose some default, probably i440fx.  The
    latest advice from the QEMU and libvirt communities is not to rely on
    the default machine type but to specify what we need explicitly, but
    it may also be that the libvirt configuration file has been changed to
    set the default machine type to Q35 (either by the distro or the end
    user).
    
    None of this matters for reasonably new guests since they can boot
    with either chipset.  However there are some very old guests (notably
    Windows XP) which cannot handle Q35.
    
    This commit changes virt-v2v so it always tries to specify the machine
    type explicitly (assuming the target supports that, and not all of
    them do).  For x86_64 guests this patch always selects i440fx (pc).
    In future we hope to get the correct machine type for the guest from
    libosinfo but this is not available yet.
    
    For non-x86 architectures we select the "virt" model which will
    probably only work for AArch64.  More work is needed for POWER.
    
    For secure boot we still have to force the machine type to Q35.  In a
    future version this forcing can be removed since any guest which is
    using secure boot will be new enough that it'll be using Q35 anyway
    (on x86).

commit 10be091543f1b3ffbe8de3e3f16a4856c8c8eb01
Author: Daniel Erez <derez@redhat.com>
Date:   Wed Jul 25 11:24:33 2018 +0300

    v2v: rhv plugin - case-sensitive search queries
    
    Changed both search queries to case-sensitive (to ensure an exact match).

commit b9685ec1aa219cae562bdd6714958f3405f20336
Author: Daniel Erez <derez@redhat.com>
Date:   Tue Jul 24 19:16:10 2018 +0300

    v2v: rhv plugin - fix DC search string
    
    Search for DC by 'storage.name=' to make it explicit.
    I.e. "storage=" uses regex, so similar names can be
    found in the search query. For example, searching for
    a domain named FCSD, will find FCSD1 as well.

commit 321a81ae596a4ae35230043ad994530f3068e30d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 12:36:36 2018 +0100

    test-data/phony-guests: Add comment to Makefile above Fedora btrfs image.
    
    Fixes commit 754e8194382a9ed265c7fa172e438049e4eb8389.

commit 4327aea264954c91a2af93d42f2c05a80b8ac7b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 4 12:00:58 2018 +0100

    v2v: Implement MAC address to network/bridge mapping.
    
    This allows specific NICs (identified by their source MAC address) to
    be mapped to networks or bridges on the target.  You can use the --mac
    parameter to select this mapping, eg:
    
     $ virt-v2v ... \
        --mac 52:54:00:d0:cf:0e:network:mgmt \
        --mac 52:54:00:d0:cf:0f:network:clientdata
    
    The old --network and --bridge mappings can also be used but --mac
    takes precedence.
    
    Note this does not adjust MAC addresses inside the guest which is a
    hard problem to solve.  For this to work you must still carry over the
    MAC addresses from the source to target hypervisor as that is how most
    guests identify and associate functions with specific network
    interfaces.

commit 25c1b77a74690c8d93227e51fcf2482d092a2b0f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 17 17:12:38 2018 +0200

    v2v: -o rhv-upload: check for ovirtsdk4 (RHBZ#1601943)
    
    Check earlier whether the ovirtsdk4 Python can be imported correctly,
    to avoid errors later on during the migration.

commit 48f1a723370d137280f84e460ed2fd9ec13561d8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 17 15:21:41 2018 +0200

    uefi: add non-deprecated Fedora paths for OVMF w/ secboot
    
    Add new paths for the Secure Boot variant of OVMF as found in Fedora.

commit 37f6a88dd2bc4e17379fc4ed7a0a2f0bd7ee72d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 14 10:23:45 2018 +0100

    Version 1.39.7.

commit d3dffcd1419843d473cb2b47f4e18d4ec205936e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 13 20:39:04 2018 +0100

    build: Disable warnings about attribute malloc functions.

commit 1fefd4390217d43f7abc7bbcf3013b7e5371b7b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 13 14:19:00 2018 +0100

    maintainer: Update to latest gnulib.

commit 5d078f1f324bc121f3aa29cb87768ffa69385b6f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 13 13:24:07 2018 +0200

    v2v: change QXL ResourceType in OVirt flavour (RHBZ#1598715)
    
    Due to a conflict with the IDs of the OVF standard, and the existing
    implementation in ovirt-engine, the ID of QXL devices changed to a
    different value.
    
    As a consequence, change the ResourceType of QXL devices, but only in
    OVirt flavour to avoid breaking vdsm mode.
    
    See: https://bugzilla.redhat.com/show_bug.cgi?id=1598715#c5

commit 5a65815bfcd9d1b96b836811ff4471e695785634
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 13 13:32:38 2018 +0100

    Revert "v2v: oVirt changed the ResourceType for QXL video devices (RHBZ#1598715)."
    
    This fix is incorrect, for details see:
    https://bugzilla.redhat.com/show_bug.cgi?id=1598715#c11
    
    This reverts commit 296b2f66c71df0bf5ee2ee605fe4b92672796ab3.

commit b284ad1d649f6303167d87a520887a5e617a7871
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 9 09:12:07 2018 +0100

    v2v: oVirt changed the ResourceType for QXL video devices (RHBZ#1598715).
    
    See:
    https://bugzilla.redhat.com/show_bug.cgi?id=1598715#c5

commit b11138a640f3c94fe7cdb2550b5397a85b47c093
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 11 10:17:26 2018 +0100

    builder: templates: More RHEL templates.

commit e745f3b307620acaffdbe973d5ab65dc5f2d8db5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 12 08:31:46 2018 +0100

    v2v: Remove old TODO file.

commit f8973b02a2107bda9ebb523be83731fed1d99380
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 11 16:20:26 2018 +0100

    build: Disable -Wabi warning as it is broken with GCC 8.1.

commit 8d04e7fd017287990f94528613a7ec8716d2f3e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 11 10:17:19 2018 +0100

    builder: templates: Update RHEL virt-install osinfo version for Fedora 28.

commit a76d6962399d8a4be6c948e80c332b32ae108e15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 5 11:21:57 2018 +0100

    v2v: Preserve VM Generation ID (RHBZ#1598350).
    
    virt-v2v moves guests, it doesn't clone them.  Therefore we should try
    to preserve the VM Generation ID (genid) as much as possible.
    
    This has the ability to read the genid from VMware VMX files and
    libvirt XML (but note RHBZ#1598348).  It can also write the genid to
    libvirt (‘-o libvirt’, ‘-o local’) and QEMU (‘-o qemu’).
    
    We are missing support currently for all OVF-based formats (hence
    ‘-i ova’, and all oVirt/RHV output modes).  It's unclear where we
    would store the genid in this format.  oVirt does not yet support
    genid (see RHBZ#1118825).

commit 8bb46c66aa8697cfb9d3ede610787cd6349661a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 4 12:30:12 2018 +0100

    v2v: Add s_mapping_explanation field to source NIC.
    
    Instead of storing the original network name (s_vnet_orig) in the
    source NIC struct and then trying to guess what happened much later
    when we're writing target metadata, get our newly created Networks
    abstract data type to store the precise mapping explanation.

commit e0266b5f0a896f2949c919b2406498f329e5d3cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 4 11:48:25 2018 +0100

    v2v: Make Cmdline.NetworkMap into an abstract data type.
    
    No change, just code refactoring.

commit 0b6199ab14eb43482db92cb10f273637d62dabbd
Author: Daniel Erez <derez@redhat.com>
Date:   Thu Jul 5 20:23:35 2018 +0300

    v2v: rhv plugin - find suitable host (RHBZ#1596810) (RHBZ#1596851)
    
    For direct upload, a suitable host must be in status 'Up'
    and belong to the same datacenter as the created disk.
    Added these criteria to the host search query.

commit ed1a999fb02318c47f08e1b05b75f638676720ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 19:36:19 2018 +0100

    v2v: Add output#prepare_metadata method to prepare metadata before copying.
    
    Currently unused, this method will allow output methods to prepare the
    target hypervisor to receive a guest before the actual copy/upload
    begins.
    
    For rhv-upload this is useful since RHV would prefer to have the
    metadata for the guest before receiving disk data.  The only metadata
    unavailable here is target_stats.target_actual_size, but in the RHV API
    case this is never available as we stream the data directly into RHV
    rather than writing it to a local file.

commit 7d0fb1118cb9a65682e816a50311e69d287e9224
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 19:35:32 2018 +0100

    v2v: Add comment about where the actual copy is performed in the code.

commit 0103969acfc27b1839dc444689595fcd612dfbc8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 19:15:46 2018 +0100

    v2v: Move per-target size stats into a separate mutable sub-struct.
    
    This change avoids us threading the targets structure awkwardly
    through several functions, and also makes it clear from the code that
    the targets struct does not change after its creation in init_targets
    (but the stats change).
    
    Just code refactoring.

commit 97334dec63a1a8974ead4a9854d0fe9c1dd8521c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 19:34:20 2018 +0100

    v2v: types: Fix comment for #create_metadata method.

commit f37f45c0a889f033f1c6c9d179a238481f9d1894
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 19:19:44 2018 +0100

    v2v: Single character whitespace change.

commit f65085e27b54b08a668699dc0f8e76d5607f49d7
Author: Nir Soffer <nirsof@gmail.com>
Date:   Sat Jun 30 01:39:03 2018 +0300

    v2v: rhv-upload-plugin: Optimize only direct upload
    
    The optimization to start the transfer on the local host makes sense
    only when using the rhv-direct=true option. When using a proxy, let the
    engine choose a host.

commit b529bcdd2a92456ded0b77283a1752ac46844a5f
Author: Nir Soffer <nirsof@gmail.com>
Date:   Sat Jun 30 01:21:50 2018 +0300

    v2v: rhv-upload-plugin: Improve error handling
    
    When optimizing the connection using unix socket, we handle these cases:
    
    - The local host is not an oVirt host (no /etc/vdsm/vdsm.id).
    - The local host is an oVirt host, but is not registered with engine.
    - Creating UnixHTTPConnection() fails. Unlikely and probably a bug in
      the plugin, but we can recover by using the https connection.
    
    The current code handle these cases silently, making it harder to
    understand why the unix socket optimization did no happen. Add debug
    message to make this clear.
    
    Also comment in the error handler why we take this path instead of
    failing the operation.

commit e15e8d45002afbaa464240447c76c46551369fe2
Author: Nir Soffer <nirsof@gmail.com>
Date:   Fri Jun 29 17:41:10 2018 +0300

    v2v: rhv-upload-plugin: Remove unneeded auth
    
    Old imageio proxy was using Authorization header for GET and PUT
    requests. Remove unneeded authorization when sending OPTIONS request.
    
    Remove unneeded duplicated comments about authorization for old
    imageio, and replace them with a comment when we set needs_auth.

commit cd847f3c2b21223d52e7a261d37689f97f0eb4dd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jun 29 12:58:33 2018 +0200

    v2v: improve -os documentation for rhv-upload
    
    Thanks to: Ming Xie

commit b5fa94d9ddb775e1a63ad89f36effd4c0d37a7fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 10:23:54 2018 +0100

    Version 1.39.6.

commit b1363ed9e2da836f2590ab77ede491bb8d1c436b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 10:22:36 2018 +0100

    Update AUTHORS.

commit c3523e44d7e6ea7993b34a6c565bc56b6958bd65
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 27 12:41:04 2018 +0200

    bash: add a completion script for libguestfs-test-tool
    
    Use the simple virt-v2v-copy-to-local script for it.

commit 8f108395c8f0fb870b8dd3bf6aef3978c33d526a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 27 12:32:27 2018 +0200

    test-tool: add a documentation test
    
    Add the podcheck.pl test, to make sure the documentation is in sync with
    the available options.
    
    Also fix the formats of options in the current POD, so it matches what
    used already in other documentations, and what podcheck.pl expects.

commit 5fe5e7417bb8cf7d1d3c13a31bf135e71ea1678b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 27 12:31:01 2018 +0200

    test-tool: implement --short-options & --long-options
    
    While not useful per-se, it will help checking the available options.

commit 57bfcb7d68e710fdf319942c5bc9dbdaad9b159a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 27 19:24:58 2018 +0200

    v2v: -o local: print libvirt XML
    
    In verbose mode, print the generated libvirt XML to stderr for
    debugging, just like -o libvirt does.

commit 3afd7a41811190d9a2e617d6f22e0abaf504f19c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 18 15:34:37 2018 +0100

    v2v: -o rhv-upload: Use Unix domain socket to access imageio (RHBZ#1588088).
    
    In the case where virt-v2v runs on the same server as the imageio
    daemon that we are talking to, it may be possible to optimize access
    using a Unix domain socket.
    
    This is only an optimization.  If it fails or if we're not running on
    the same server it will fall back to the usual HTTPS over TCP
    connection.
    
    Thanks: Nir Soffer, Daniel Erez.

commit 614a80a946a144702e2c7f8a2f6a2d13b824a759
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 19 18:02:21 2018 +0100

    v2v: -o rhv-upload: Always fetch server options when opening the connection.
    
    Previously we lazily requested the server options in the can_*
    callbacks.  The can_* callbacks are always called by nbdkit straight
    after open, so this just adds complexity for no benefit.  This change
    simply makes the code always fetch the server options during the open
    callback.
    
    This is — functionally at least — mostly just refactoring.  However I
    also added a useful debug message so we can see what features the
    imageio server is offering.

commit 758cae5cf7f5d3ea18df8d6127559d813aadd92e
Author: Nir Soffer <nirsof@gmail.com>
Date:   Tue Jun 26 01:43:01 2018 +0300

    v2v: rhv-upload-plugin: Remove unused variables
    
    Remove some instances of "transfer" and "transfer_service" that are not
    used in current code.

commit 2ea300dd346ac81530b2a35a4ff810913de72d82
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Jun 25 20:56:52 2018 +0300

    v2v: rhv-upload-plugin: Fix name error
    
    "http" and "transfer" variables were missing in emulate_zero, so the
    code would fail with NameError.  This can happen only when communicating
    with old imageio versions not supporting the "zero" feature.
    
    Testing with qemu-img 2.12 show that we never send emulated zero request
    because of the highestwrite mechanism, but it can break with older
    qemu-img-rhev used on RHEL.

commit 2f17b853650eb863c813d45c52ea13ce0743f42d
Author: Nir Soffer <nirsof@gmail.com>
Date:   Mon Jun 25 19:22:13 2018 +0300

    v2v: rvh-upload-plugin: Always read the response
    
    Python manual warns[1]:
    
        Note that you must have read the whole response before you can send
        a new request to the server.
    
    The reason for this warning is exposed only when the server is using
    keep alive connections. When the response is not read, sending a new
    request will fail with:
    
        httplib.ResponseNotReady
    
    Even if Content-Length was 0 or the request has no content. The failure
    looks like this when using --verbose:
    
    nbdkit: python[1]: debug: zero count=33554432 offset=0 may_trim=1 fua=0
    nbdkit: python[1]: debug: zero count=33554432 offset=33554432 may_trim=1 fua=0
    nbdkit: python[1]: error: /home/nsoffer/src/libguestfs/tmp/rhvupload.Au2B5I/rhv-upload-plugin.py: zero: error: Request-sent
    nbdkit: python[1]: debug: sending error reply: Input/output error
    qemu-img: error writing zeroes at offset 0: Input/output error
    
    Change all requests to read the whole response.
    
    Tested with imageio patch supporting keep alive connections:
    https://gerrit.ovirt.org/#/c/92296/
    
    [1] https://docs.python.org/3.8/library/http.client.html#http.client.HTTPConnection.getresponse

commit dc1dcd99c07be338eae8ca7db5e38f711a296201
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 25 08:43:55 2018 +0100

    docs: building: autotools and gettext must be installed separately.
    
    Thanks: Nir Soffer

commit 8d7a74cb68bf274fa619864cf90aa069109041de
Author: Yuri Chornoivan <yurchor@ukr.net>
Date:   Sun Jun 24 10:57:53 2018 +0300

    Fix minor typos

commit 5415e59e57caa5311b41704540f5d4f30cf1d9bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 10:22:02 2018 +0100

    p2v: Allow virt-v2v input and output drivers containing '-' (RHBZ#1590220).
    
    The new ‘-o rhv-upload’ output mode contains a '-' character in the
    name, but the regular expression which matched the output of the
    virt-v2v command did not recognize '-' as a valid character.  It ended
    up mapping this to just "rhv" meaning two "rhv" entries would appear
    in the list of output drivers.
    
    Thanks: Ming Xie.

commit d858a78dbf9bd65b711a83325eb0933d4fa8762b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 18 10:31:18 2018 +0100

    v2v: <File ovf:size> changed to the actual size (if known).
    
    Note that this attribute is optional.
    
    Thanks: Arik Hadas

commit d0b3a2b7d9342ec320e40331d376cd85ad19bf1e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 18 10:31:18 2018 +0100

    v2v: Add <Disk ovf:capacity> attribute containing disk virtual size (RHBZ#1592468).
    
    Virt-v2v transfers to newer versions of ovirt-engine can fail with:
    
      ovirtsdk4.Error: Fault reason is "Operation Failed". Fault detail is "failed to parse a given ovf configuration ovf error: [empty name]: cannot read '//*/disksection' with value: null". HTTP response code is 400.
    
    This was caused by a change made to oVirt:
    
      https://gerrit.ovirt.org/#/c/91902/
    
    so that it now requires the <Disk ovf:capacity> attribute.
    
    Thanks: Arik Hadas

commit d304c07916bb99dbd3f3af5cbc6cc01a6edafd55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 17 14:02:00 2018 +0100

    v2v: docs: Removed vsyscall support in Debian kernels requiring workaround (RHBZ#1592061).
    
    Thanks: Haigang Li

commit 2a576b7cc5c3fa41b811429b0260f8aa91399787
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 15 16:17:35 2018 +0100

    v2v: -o libvirt: Don't write only <vendor> without <model> (RHBZ#1591789).
    
    Avoids the libvirt error:
    
      error: XML error: CPU vendor specified without CPU model

commit 33330691365dc6317ff2a0b8b1597253ecaed635
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 14 11:19:49 2018 +0100

    lib: libvirt: Convert all socket parameters to an absolute path (RHBZ#1588451).

commit 76a6fdab69bfe5dc5e8e61a3c69a749f7391c846
Author: Nir Soffer <nirsof@gmail.com>
Date:   Thu Jun 14 21:16:01 2018 +0300

    v2v: -o rhv-upload: Optimize http request sending
    
    When sending request with small or no payload, it is simpler and
    possibly more efficient to use the high level HTTPSConnection.request(),
    instead of the lower level APIs.
    
    The only reason to use the lower level APIs is to avoid copying the
    payload, or on python 2, to use a bigger buffer size when streaming a
    file-like object.

commit 1e5b67650c96e532906b1e522e3f46ee206a3103
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jun 15 12:41:31 2018 +0200

    fuse: fix build when not available
    
    The 'localmountpoint' variable in the handle is available only when
    building with FUSE support, so guard it in a proper #ifdef block.
    
    Fixes commit 296370fb86e96eec095d86faf6de8f532395ea54.
    
    Thanks to: Corentin Labbe (both reporting, and testing)

commit 0e8e485fc3306252d676acf753d06c4d99dfc1e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 14 11:09:54 2018 +0100

    gitignore: Don't ignore patch files.

commit f4e2e37ebca5ba8a38de8c9f42dab3b3560b3e56
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 17:30:25 2018 +0100

    v2v: tests: Stable-sort CPU features in --print-source option.
    
    The test failed with:
    
      -   CPU features: pae,apic,acpi
      +   CPU features: acpi,apic,pae
    
    Fixes commit 67145499ec2e992d129c943b17b6484a01170022.

commit ed81700a8e0cfe106c060d73d38ca28a0a8f897c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 7 10:06:14 2018 +0100

    v2v: parse_libvirt_xml: Simplify code by using xpath_get_nodes utility fn.
    
    No functional change.

commit 60e310b8f356074d46d5613d32491d7a88062c63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 5 10:40:52 2018 +0100

    v2v: Refactor order of parameters to input objects.
    
    Simple refactoring of the order of parameters to input objects
    so they are always in the order:
    
      input_foo          ; class name
        input_conn       ; command line -iX parameters, alphabetically
        input_password   ;
        ...              ;
        vddk_options     ; extra class parameters
        ...              ;
        guestname        ; remaining command line parameters

commit eb508ba22d2af98ed0071d5d2a9d2670720d65fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 4 21:32:31 2018 +0100

    v2v: Use -ip to pass input password (instead of --password-file).
    
    Consistent with the option -op added in
    commit a4e181137a38f5767dd1bf05dc482959cb7283be, use -ip to pass
    passwords for the input side.
    
    This replaces --password-file, and like that option you have to pass a
    filename.
    
    This also changes the code so we pass around the filename instead of
    the password between functions.  For ‘-it vddk’ this simplifies
    things: we can pass the filename through to nbdkit and we never need
    to read it in virt-v2v.  For other input methods we eventually need to
    read the password from the file at some lower level place in the code.

commit d4b5cd792442278e3ff5525e6c71e8029cb7d1bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 5 10:19:40 2018 +0100

    v2v: copy-to-local: Use Getopt ‘M’ for -ic parameter.

commit 0e49be1a77aea87c12ef70499b4d83064dc675e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 5 19:09:43 2018 +0100

    v2v: -o rhv-upload: Set inactivity timeout (RHBZ#1586198).
    
    This increases the inactivity timeout for transfers from the default
    (60 seconds in oVirt < 4.2.3, 600 seconds in >= 4.2.3), up to 1 hour,
    so that we should never hit it for ordinary transfers.
    
    Note this requires oVirt >= 4.2.3.  The corresponding oVirt fix was
    https://bugzilla.redhat.com/1563278
    
    I also replaced the deprecated ‘image’ parameter with ‘disk’.
    
    Thanks: Nir Soffer, Daniel Erez.

commit 7a241f731a8d065363555d7f24061fd8b1b67923
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 5 13:27:43 2018 +0100

    v2v: -o rhv-upload: Log full imageio response on failure.
    
    Thanks: Nir Soffer

commit b798d05490af40627b3939124a1f9452d8c760c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 6 11:02:06 2018 +0100

    docs: security: Document CVE-2018-11806.
    
    Qemu: slirp: heap buffer overflow while reassembling fragmented
    datagrams.

commit 227578726ea9dc21ea73e380c0feccf74e8e393f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 4 05:41:58 2018 -0400

    fish: rc: Minor whitespace fixes.

commit d3fca83cae514b2eb6f29074985c22b075f7eed1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 4 05:24:13 2018 -0400

    utils: Factor out hexdump code used by --enable-packet-dump.
    
    Factor out the common code used to hexdump the protocol when
    ./configure --enable-packet-dump is used.
    
    It's not quite a straight refactor because I had to fix some
    signedness bugs in the code which were not revealed before because
    this code is usually disabled.

commit 88c10ca4ed604afb0ea287196b2f24ae5f57b398
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Fri Jun 1 07:47:22 2018 +0300

    daemon: list-filesystems: Filter out MBR extended partitions.
    
    Extended MBR partitions cannot hold filesystems - filter them out.
    
    RWMJ:
    
    * Simplify is_mbr_extended function.
    
    * Fix regression test rhbz1285847:
    
      The test assumed that list-filesystems would return an extended MBR
      partition (as "unknown").  However such partitions only contain
      logical partitions inside them, not filesystems.
    
    * Some minor whitespace changes.

commit fc269f68ed9f7b34b3d08824da1ec9cf4ed33721
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Fri Jun 1 07:47:21 2018 +0300

    daemon: list-filesystems: Filter out Microsoft Reserved and Windows Snapshot partitions.
    
    Filter out Microsoft Reserved Partition and Windows Snapshot Partition.

commit 2c65f321dc6ef00069ec18dddd72893425d5c98c
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Fri Jun 1 07:47:20 2018 +0300

    daemon: list-filesystems: Change the way we filter out LDM partitions.
    
    1. Now we use GPT partition type to filter out LDM partitions.
    2. We also check for filesystems on LDM volumes because LDM partitions
    doesn't contain filesystems (list_ldm_partitions is not called anymore).
    3. Obvious repetitive comments are moved to a function description.

commit 5c2f44eac9d821b11a3c49e3cdf9e86b3820c017
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Fri Jun 1 07:47:19 2018 +0300

    tests: list-filesystems command ignores partitioned MD devices.
    
    Test guestfish list-filesystems command finds file system on partitioned md device and doesn't take into account md device itself (similar to as physical devices are filtered out if they are partitioned).

commit e8da777855130030ade35dad0d0ba6700c2445bf
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Fri Jun 1 07:47:18 2018 +0300

    daemon: list-filesystems: Ignore partitioned MD devices.
    
    Ignore partitioned MD devices the same way we ignore regular partitioned
    devices because they cannot contain filesystems as well.

commit 9d501915628698f1fd247c3cb7a5cec7828d1fda
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Fri Jun 1 07:47:17 2018 +0300

    daemon: Changing the way that we detect if a device contains partitions.
    
    Instead of using part_to_dev to find such devices we open the device's
    directory under /sys/block/<dev_name> and look for entries starting with
    <dev_name>, eg. /sys/block/sda/sda1.

commit 54f48535adf32918e6640c239b7fbd9afa46f88e
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Fri Jun 1 07:59:51 2018 +0300

    daemon: inspect: better handling windows drive mapping.
    
    I saw several Windows disk images which contains strange registry entry
    for mapped drives:
    
    "\\DosDevices\\Y:"=hex(3):00,00,00,00,00,00,00,00,00,00,00,00
    
    Which is decoded something like diskID = 0x0, partition starts at 0
    bytes offset from the start of the disk.  In addition to a Windows disk
    image, I have attached dummy disk and made xfs file system on a whole
    device without partitioning it.  I mount xfs file system to a "/" and
    then mkdir and mount other found file systems inside (/fs1, /fs2 etc.).
    
    When we decode drive mappings we are looking for a disk with ID 0x0 (it
    is 4 bytes somewhere LBA0).  It is appeared that dummy non-partitioned
    disk with xfs file system has zeros by offset where diskID is expected
    to be).  So the disk is considered as a candidate to search for
    partition at offset 0. part-list command (and "parted" which is used
    under the hood) reports there is 1 partition on "dummy" disk which
    starts exactly at offset 0.  And thus dummy device name and partition
    number are simply concatenated together and corresponding drive mapping
    is returned: Y => /dev/sdX1.  But /dev/sdX1 is not existing block
    device.
    
    No matter either it is a bug in "parted" (or it works this way
    by-design), let's protect ourself from this situation: in addition we
    look for msdos partition table on a disk before making any further
    assumptions.

commit bfe5e78ce668f2aee6c27739f07a6fb26013402b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 24 10:24:25 2018 +0100

    daemon: Move lvmetad to early in the appliance boot process.
    
    When the daemon starts up it creates a fresh (empty) LVM configuration
    and starts up lvmetad (which depends on the LVM configuration).
    
    However this appears to cause problems: Some types of PV seem to
    require lvmetad and don't work without it
    (https://bugzilla.redhat.com/show_bug.cgi?id=1581810).  If we don't
    start lvmetad earlier, the device nodes are not created.
    
    Therefore move the whole initialization step into appliance/init.
    
    Two further changes had to be made:
    
    Now we are using lvmetad all the time, using vgchange is incorrect.
    With lvmetad activated early we must use ‘pvscan --cache --activate ay’
    to scan all disks for PVs and activate any VGs on them (although the
    documentation is complex, confusing and contradictory so I'm not
    completely sure about this).
    
    The ‘lvm_system_dir’ local variable in ‘daemon/lvm-filter.c’
    previously contained the path of the directory above $LVM_SYSTEM_DIR
    (eg. $LVM_SYSTEM_DIR = "/etc/lvm", lvm_system_dir = "/etc").  As this
    was highly confusing, I have changed it so the local variable and the
    environment variable have identical contents.  This involved removing
    the ‘lvm/’ component from a couple of paths since it is now included
    in the local variable.

commit 1d00ee64a9582642db0fc66eaf52ac81c00cd880
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 29 07:04:50 2018 +0200

    v2v: add and use Create_ovf.ovf_flavour_to_string
    
    Add an helper to convert an OVF flavour to string, and use it in
    -o vdsm to print the actual value of the vdsm-ovf-flavour option.
    
    Thanks to Ming Xie.

commit f9094d3fc5086f9175d59be3e0263d4c477ef0a6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 29 06:49:23 2018 +0200

    v2v: fix "rhevexp" typo in documentation
    
    Spotted by Ming Xie.

commit 7e140760d354b0cfdb4bd580fd2f6c3b2814a649
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 22 17:24:18 2018 +0200

    v2v: fix build rules for output_rhv_upload_*_source.ml files
    
    Use the $(srcdir) variable where needed, to make sure it builds also
    with srcdir != builddir.
    
    Furthermore, make sure that the OCaml dependencies calculation depend on
    the generated output_rhv_upload_*_source.ml files, otherwise there will
    be incomplete OCaml rules for them in the generated .depend.
    
    Fixes commit cc04573927cca97de60d544d37467e67c25867a7.

commit 02b9e70c8eeb4c1f9c19be0feb319b3f255bc7aa
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 22 10:46:21 2018 +0200

    v2v: linux: fix kernel detection when split in different packages
    
    The current detection code for Linux kernels assumes that a kernel
    package contains everything in it, i.e. the kernel itself, its modules,
    and its configuration.  However, since recent Ubuntu versions (e.g.
    starting from 18.04) modules & config (with few more files) are split in
    an own package, thus not detecting the modpath from installed vmlinuz
    files.
    
    To overcome this situation, rework this detection a bit:
    1) find the vmlinuz file as before, but then immediately make sure it
       exists by stat'ing it
    2) find the modules path from the package as before:
    2a) if found, extract the version in the same step
    2b) if not found, get the kernel version from the vmlinuz filename,
        and use it to detect the modules path
    3) check that the modules path exists
    
    The detection done in (2b) is based on the current packaging scheme
    found in the most important Linux distributions (Fedora, RHEL, CentOS,
    Debian, Ubuntu, openSUSE, AltLinux, and possibly more).  The notable
    exception is Arch Linux.
    
    As additional change, do not assume the config file is in the same
    package as vmlinuz, but directly look into the filesystem using the
    version we already have.

commit 4f0604c4b9eff6dddfe691be31b9e6d044188c8f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 21 17:19:25 2018 +0200

    v2v: -o null: support older qemu-img (RHBZ#1580309)
    
    Commit 4699c7b6e126e07c95b67fb95df58aed87a680dd converted the null
    output to use the null-co qemu driver with a JSON URL syntax --
    especially the latter is only available in newer versions of qemu.
    
    Even if this output mode is mostly for testing, check at runtime whether
    the null-co + JSON way is possible, falling back to the creation of
    thrown-away temporary files as before.

commit 5ad04f3d795a448e5458cd4abaf1641172d3b9fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 22 08:09:28 2018 +0100

    v2v: Use Std_utils.qemu_input_filename instead of prefixing "file:" to filename (RHBZ#1580292).
    
    This also allows us to use virt-v2v with the old version of qemu in
    RHEL 7.
    
    Fixes commit e29296cfa20dd691995832940a30fe2e6b98149a.
    
    Thanks: Pino Toscano for suggesting the fix.

commit de5708e3b3e75e24de8414832fc223b6a472f5a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 13:09:31 2018 +0100

    Version 1.39.5.

commit 76bade2a1646dc9ec07b5322d728ef5e5df4592a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 10:01:03 2018 +0100

    builder: templates: Rebuild index.
    
    Fixes commit 1f983a050f17327d6c67e7165be3d947a2c94090.

commit 673581449f0f44e5aa9794284e9791dc736d8f4c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 09:57:50 2018 +0100

    builder: templates: Rebuild Ubuntu 18.04 image without proxy (RHBZ#1579047).

commit 4477b60541fcb8ddfafaa82dbc91c60295ebc214
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 08:26:50 2018 +0100

    builder: templates: Remove bogus proxy from Ubuntu apt configuration (RHBZ#1579047).
    
    Thanks: Lars Seipel.
    
    See also commit 4b2e9c9264dcebd3c5945050b7f1d1b4cb4d3dae which did the
    same for Debian back in 2013.

commit c9e7d43a4eb5029196ad62accdfc1d6b84721c6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 15 14:03:19 2018 +0100

    authors: Add Nikolay Ivanets (alternate form).

commit 7f0a975e73746e4ad327ce583a2ce821bdfec059
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 15 14:03:08 2018 +0100

    authors: Add Adam Robinson.

commit 0244d1f1dde7c40b2ebc4031b75aec0628637103
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 15 09:24:21 2018 +0100

    macOS: unix-utils: Include <sys/mount.h>.
    
    If <sys/mount.h> is available on the platform, always include
    it in this file.

commit fde35013c1eeca74555ea6bfe0fde578c687ea8c
Author: Adam Robinson <adarobin@umich.edu>
Date:   Tue May 15 09:22:20 2018 +0100

    macOS: Include <rpc/types.h> before <rpc/xdr.h>.
    
    The ordering of includes is required on this platform.

commit 97ec0a36152da5eec99fcaf39a48db259370c80b
Author: Yuri Chornoivan <yurchor@ukr.net>
Date:   Sat May 12 20:26:19 2018 +0100

    Fixes for typos in manual pages.

commit 9dc4772744d9c413068096e9ec4f95fa92c911c0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 9 14:47:15 2018 +0200

    v2v: update results of test-v2v-i-ova-snapshots for non-json
    
    When using non-JSON disk notation, the disk will be the snapshot #2.
    
    Fixes commit e5946165c8ea78e0e91c4cfdb5e793526cd638e1.

commit 272ca5172608e5e2ebdaddbe688210a64ff68a58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 10 22:19:13 2018 +0100

    builder: templates: Add centos-7.5.

commit 3ef337aa04d2869b40d819643c0ef11863f44585
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 7 17:06:11 2018 +0200

    daemon: tweak regexp for file type detection (RHBZ#1575640)
    
    Newer versions of file slightly changed the output, removing the comma
    between the type, and the architecture string.
    
    Tweak the regular expression so:
    - the comma is optional, but if missing then only the architecture
      string will follow
    - the architecture string has no commas

commit 1e7aaa880c910624cd7939c1b59c941960f6330f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 4 17:04:42 2018 +0200

    java: support OpenJDK 10+
    
    Starting OpenJDK 10, the 'javah' utility is no more provided [1], and
    its functionality is provided by 'javac' itself.  Hence, do not error
    out on missing 'javah', and store whether it was found; in case it is
    not, then:
    1) assume 'javac' has the -h parameter to generate the C header, and
       make use of it
    2) tell the buildsystem that com_redhat_et_libguestfs_GuestFS.h depends
       on the JAR, since the the header is generated at the step (1)
    
    [1] https://bugs.java.com/view_bug.do?bug_id=JDK-8182758

commit db026c75bba0f39dc8a15e94bd9e064771a99361
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 4 15:52:52 2018 +0200

    common/qemuopts: ensure arg lists are never empty
    
    Since it does not make much sense, then forbid this situation outright:
    - change qemuopts_end_arg_list() to return an error if the current arg
      list has no elements
    - when creating the argv array, assert that each arg list is not empty

commit 00fec95db5d2a6891c79dfd9c6ff18f325fb6fce
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 4 15:49:20 2018 +0200

    appliance: initialize the appliance_files struct
    
    Some compilers do not manage to figure out that the members of it are
    set only when search_appliance() in the end returns 1, which is already
    checked.  Help them a bit by resetting the appliance_files struct on our
    own, so they will not report that 'appliance.kernel', and the others are
    used as uninitialized.

commit cbfdf6f5f1aefde9e3568a14735dc1395d8f4d66
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 3 18:27:02 2018 +0200

    daemon: fix memory allocation and leaks in OCaml stubs
    
    Use the cleanup handlers to free the structs (and list of structs) in
    case their OCaml->C transformation fails for any reason; use calloc()
    to not try to use uninitialized memory.
    
    In case of lists, avoid allocating the memory for the array if there
    are no elements, since the returned pointer in that case is either NULL,
    or a free()-only pointer; also, set the list size only after the array
    is allocated, to not confuse the XDR routines.

commit 1588d05a04f7ced7a5babbcd8ed8095dcb9a434a
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Wed May 2 13:19:24 2018 +0300

    fuse: mount_local: Fix crash when called from Java binding.
    
    "localmountpoint" parameter is allocated in JNI before calling
    mount_local and freed afterward.  But guestfs handle keeps reference
    to passed "localmountpoint" parameter and will try to access it in
    umount_local and free after mount_local_run caller thread ends
    which leads to a crash (an attempt to access to already freed memory).
    
    RWMJ: Remove ‘const’ from definition of localmountpoint, and
    wrap a comment at 80 columns.

commit 53a2e7ea98a89d2d1857f676751599fed5ce33d8
Author: Nikolay Ivanets <stenavin@gmail.com>
Date:   Tue May 1 03:53:58 2018 +0300

    daemon: Reimplement 'part_get_mbr_part_type' API in OCaml.
    
    Instead of parsing 'parted' output OCaml implementation relies on the following facts:
    
    1. MBR partition table can hold up to 4 "primary" partitions.
    2. Partition with number greater then 4 is "logical" partition.
    3. Partition with number less then or equal to 4 with MBR ID 0x05 or 0x0f is "extended" partition (http://thestarman.pcministry.com/asm/mbr/PartTypes.htm; https://en.wikipedia.org/wiki/Partition_type) or "primary" otherwise.

commit bc7e371d28b098a0263f823a7c6897055bad687e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 1 17:48:06 2018 +0100

    Version 1.39.4.

commit b0f66b1a8048acb4d3c9061543dbacb137543398
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 30 13:07:53 2018 +0200

    daemon: simplify string allocation
    
    When creating an helper string for do_aug_match(), use a simpler
    asprintf() with manual free(), since the code block is small enough.
    
    This slightly helps static code analyzers.

commit f5e6e369f8764573ab91c5309fc46af1a04385b2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 30 13:07:52 2018 +0200

    common/qemuopts: use the old pointer as realloc pointer
    
    Call realloc() directly with the pointer to the old data, instead of
    assigning it to the destination variable, and using that one.  The rest
    of the code is the same, already properly checking for the results of
    realloc(), so this mostly help static code analyzers.

commit fadb0da496b5613e3c9dc54b2a3ff5a8ed5dbae7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 30 13:07:51 2018 +0200

    launch: libvirt: free format string
    
    When the result guestfs_disk_format() is not known, free the string
    before returning an error.

commit bf852a8f6ee31771f1bf163872ae085770083095
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 30 13:07:50 2018 +0200

    daemon: upload: fix fd leak on lseek failure
    
    Make sure to not leak the file descriptor in the upload() function, in
    case lseek() fails.

commit eb68d186b3de5b63d10f7d7b9eef87ae8ac875ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 1 17:15:01 2018 +0100

    builder: templates: Add Fedora 28 x86_64 and i686 templates.

commit ddad362dd2d52af0f2eb7a5ecd1c3dbc9ecdcbe8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 1 17:16:07 2018 +0100

    builder: templates: Update osinfo for Fedora.

commit 6d94cc8fffa0b349ceb4980f8dfae8611f6504b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 1 17:15:32 2018 +0100

    builder: templates: aarch64 is now a primary architecture, fix location.

commit 751071cab1a5a218403571c92d20f827a028927d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 1 11:30:11 2018 +0100

    v2v: Map Windows Server 2012 R2 x86-64 to ovirt ID 25.
    
    Thanks: Michal Skrivanek
    
    Fixes commit 593a19cc86cfa8f24c66518c8ba21222550b066a.

commit 3283d01e13cc2424aa10707ed8331b82dd0428b6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 27 09:21:38 2018 +0200

    common/mlpcre: fix access to freed memory
    
    free_last_match() frees the memory of the match passed as argument, so
    accessing it is not possible after free_last_match().  Since all we
    need is the return code, save it locally for later usage.

commit eab697e04ca7fb7b6593236f5323b70717bd582a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 27 14:58:28 2018 +0100

    slow tests: Add slow tests of Ubuntu 18.04.
    
     - firstboot
     - settings
     - password setting
     - console
     - v2v conversion

commit 91341257ae15e3604829e14cbfd2e530c084216e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 27 14:53:40 2018 +0100

    builder: templates: Add Ubuntu 18.04.

commit 93ca4764f0d96664b828bda0cfc156c7c95fe744
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 25 11:43:02 2018 +0100

    v2v: -i ova: Handle OVAs containing snapshots (RHBZ#1570407).
    
    Also adds a regression test.

commit 2324376168f4d32712f958852e4d5ea270ed5eec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 25 10:50:56 2018 +0100

    v2v: -i ova: Sanity check hrefs to ensure they stay inside the tarball.
    
    Check for hrefs like "../../../../dev/sda", or dubious symlinks in the
    tarball, which could escape from the tarball into the host system.
    
    We use realpath(3) to do this.  Since this function does not work on
    non-existent files, we must change the signature of get_file_ref so it
    can return whether the file exists or not.

commit 1e63a3cb86b4012d03d41c69f031b3c85fea27bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 25 09:56:22 2018 +0100

    v2v: -i ova: Replace subdirectory function with clearer inline code.

commit 2f0d13ae23dcaf7279a7d475782107b28cffdf3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 24 22:10:11 2018 +0100

    common: mlstdutils: Inline unsafe ‘subdirectory’ function.
    
    This function is ill-defined and unsafe.  As a preparation for
    removing it completely, inline it in the places where it is used.

commit b9a306cd8be753e4ecef54dd9c85804819f3322d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 24 11:22:39 2018 +0100

    v2v: -i ova: Factor out code for dealing with OVA files.
    
    Factor out the complex code that handles dealing with multiple
    different OVA file formats into a separate Parse_ova module.
    
    This is largely straightforward code refactoring -- there should be no
    significant functional change.
    
    However:
    
     - Parse_ova now checks up front if the OVA contains any compressed
       disks and avoids the tar optimization in that case.  This is a
       regression for the case of an OVA containing a mix of both
       compressed and uncompressed disks (we expect this to be rare).
       The change is nevertheless good because it reduces the coupling
       between two parts of the code.
    
     - I had to simplify an error message.

commit 59dc4d7ff61bcfafe5731e48d2f9a77e3addf99a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 24 15:33:57 2018 +0100

    v2v: parse OVF: Export useful parse_disks function.
    
    So you can parse out just the list of disks.

commit 89818db5b33bdc92281c983b7db87129c79da3c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 23 10:20:35 2018 +0100

    v2v: Ignore miscellaneous tar messages when parsing tar for file locations.
    
    We use ‘tar tRvf’ to parse the locations of files within the tarball.
    However examination of tar.git:src/list.c shows various other messages
    which can appear in the output:
    
      block <offset>: ** Block of NULs **
      block <offset>: ** End of File **
    
    Indeed it was easy to produce the first message just by using modern
    tar to create a tarball:
    
      $ tar tRvf '/var/tmp/bz1570407-reproducer.ova'
      block 0: -rw-r--r-- rjones/rjones   100 2018-04-22 17:06 RHEL7_3_042218_extra-disk1.vmdk.000000000
      block 2: -rw-r--r-- rjones/rjones   243 2018-04-22 17:07 RHEL7_3_042218_extra.mf
      block 4: -rw-r--r-- rjones/rjones 13066 2018-04-22 15:08 RHEL7_3_042218_extra.ovf
      block 31: ** Block of NULs **
    
    Ignore these messages.

commit 57e21fa42761c2dd854198b3596179686f04069a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 23 10:07:26 2018 +0100

    v2v: -i ova: Ignore non-existent files mentioned in *.mf.
    
    Some OVA files generated by VMware have a *.mf file which contains
    checksums for files which don't exist in the OVA.  Ignore these
    checksums.
    
    Thanks: Nisim Simsolo.

commit add9e2b0fa0b2386ceb7a43c0cce27c5b7f36966
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 23 09:54:45 2018 +0100

    mltools: Checksums.verify_checksum{,s} returns an error type instead of throwing exception.
    
    Simple code refactoring, making it both more difficult to ignore the
    error case and easier to add other error cases in future.

commit 5af05bf70a2dfab24db698baa6488e24c1da9796
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Sun Apr 22 22:57:55 2018 +0200

    v2v: -o rhv-upload: install RHV tools (RHBZ#1561828).
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 444e96c2197a96316a71319e2529fc43e282d441
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 20 15:27:04 2018 +0200

    uefi: remove last references to kraxel's old edk2 builds
    
    Commit 889386f8c6088e57fd68f2bb6bf85f69ecfc6f6c removed most of them
    already, so remove the last ones, and the supporting code.

commit 4c388e1a5cf5d2e4880c6a45d41d15284f44feb6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 20 15:23:39 2018 +0100

    utils: Add utility to find maximum number of virtio-scsi disks.
    
    This is an evolution of a Perl script that I originally wrote for this
    bug:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1478201

commit fa804d9c3bcca20ae133b5a3c3c8258b41eec7ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 20 13:17:10 2018 +0100

    Version 1.39.3.

commit eb1bd90dfdf4ceab2c2e1bc3e55a87ff1a6c4927
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 20 13:17:05 2018 +0100

    Update AUTHORS

commit fc015ef1d18e5f52e51ced74cccc23d484edeaa8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 20 12:27:03 2018 +0100

    v2v: tests: Set VIRTIO_WIN to point to phony virtio drivers directory.
    
    As well as being consistent with other tests in this directory this
    also fixes a problem when we ran the tests and the real virtio-win
    package happened to be installed on the same machine.
    
    The test used to pick up the virtio drivers from the virtio-win
    package, resulting in different test output (because virtio drivers
    had been installed).
    
    Now we use the phony virtio drivers in all cases and also update the
    test output (because virtio drivers are now always installed).

commit b2f972847067f9662ba59e380563c2ef0a29b6c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 20 12:26:26 2018 +0100

    v2v: windows: Print calculated virtio_win in debugging output.
    
    So we know where drivers are being installed from, and whether
    that is a directory or a CD/ISO.

commit c4cde1c4b1e7be5d7da1e4105f7134f8391cf589
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 20 11:48:47 2018 +0100

    v2v: -o rhv-upload: Don't require ‘-of raw’ parameter.
    
    Because we checked the limitation of raw+sparse during command line
    processing, it had the effect of forcing you to use ‘-of raw’ even if
    the input was already in raw format.  Move the checking to the output
    mode to avoid this.
    
    Fixes commit cc04573927cca97de60d544d37467e67c25867a7.

commit adeaff00a58e71457e6bdffcd231483ab25ff6db
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 20 13:04:29 2018 +0200

    Update documentation/translation file indexes
    
    Followup of commits cc04573927cca97de60d544d37467e67c25867a7, and
    commit d00e860ef04243d661f861c10eafe4b20b872474.

commit 622a69543a0987a63878c4a3c319625ca2b3b03f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 20 13:00:56 2018 +0200

    v2v: refer to the right embed script in EXTRA_DIST
    
    Fixes commit cc04573927cca97de60d544d37467e67c25867a7.

commit 415fec204dbe503fac58946fb8ce54a037d8317d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 20 10:57:31 2018 +0200

    v2v: rework handling of CPU topology
    
    Instead of storing the number of sockets, cores, and threads separately
    with the possibility to have each of them optional, store them together,
    so either we have a CPU topology or none.  This slightly simplifies the
    handling of CPU topology.
    
    Most of the output modes/producers already considered a missing
    information of a topology as "1" when any of the other was specified, so
    the behaviour is unchanged.  The only behaviour changes are when
    parsing, and creating libvirt XMLs:
    - libvirt requires all the three attributes to be specified, so when
      reading use them only if <topology> has all of them
    - for the same reason, write <topology> only when all of them are
      specified
    
    Adapt the vmx, and ova input modes to consider 1 threads when they have
    the other information of a CPU topology, since none of them can provide
    that information yet.

commit 8a7533520809cf5688cc274bbe945a5d5935a3f0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Apr 12 15:21:12 2018 +0200

    resize: expand f2fs partitions
    
    Use resize.f2fs (via f2fs_expand) to expand f2fs filesystems, if
    available.

commit 7384b1bd7e40c922237197a8116c57f13391792d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Apr 12 15:18:41 2018 +0200

    New API: f2fs_expand
    
    Expose the resize.f2fs utility from f2fs-tools, to expand a f2fs
    filesystem.

commit b5267a46104c54c5e8fc86e76288d70e682d5d9b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 11 18:11:08 2018 +0200

    v2v: linux: correctly update resume=/dev/device entries (RHBZ#1532224)
    
    When updating the device names to the new names, handle GRUB_CMDLINE
    entries (typically in grub2 configuration files) correctly: loop over
    the whole configuration value, and replace each occurrency of
    resume=/dev/device found.
    
    The actual code is moved away from replace_if_device, since this
    function now does only the actual replacement of the device string.

commit f3399065c1932d888ea45c6c7a4cf23c345b5edc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 16 09:52:14 2018 +0100

    v2v: Give better diagnostics if filesystem falls back to read-only (RHBZ#1567763).
    
    Some filesystems fall back silently to read-only if there are problems
    such a dirty filesystem and an unrecoverable journal.  Almost all
    conversions involve writing to the root filesystem, so these will
    inevitably fail later on with a strange error message.
    
    Test the root filesystem is writable by creating and deleting a
    temporary file, and if the creation fails then give better
    diagnostics.
    
    Reported-by: Piotr Kliczewski

commit b4320b86c8db9928324746d56060066804c43751
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 12 16:45:02 2018 +0000

    v2v: Add -o rhv-upload output mode (RHBZ#1557273).
    
    This adds a new output mode to virt-v2v.  virt-v2v -o rhv-upload
    streams images directly to an oVirt or RHV >= 4 Data Domain using the
    oVirt SDK v4.  It is more efficient than -o rhv because it does not
    need to go via the Export Storage Domain, and is possible for humans
    to use unlike -o vdsm.
    
    The implementation uses the Python SDK (‘ovirtsdk4’ module).  An
    nbdkit Python 3 plugin translates NBD calls from qemu into HTTPS
    requests to oVirt via the SDK.

commit 17abd31d5a9980927cbab502c8ccac99285834ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 10 08:33:12 2018 +0100

    fish: Increase default size of prepared disks (-N) to 1G.
    
    The guestfish prepared disks (-N option) all defaulted to 100M.  This
    has always been too small for btrfs (so for example ‘-N fs:btrfs’ has
    failed for a long time), and can be too small for LVs with new LVM2 /
    kernel >= 4.16.
    
    This changes the default from 100M to 1G.  The beginning of the 1.39
    branch seems like a good time to make this change.

commit 661db30235ef0794da337549e9ac5f2631b8abbb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 13 12:44:49 2018 +0100

    builder: templates: rhel-7.5 kickstarts and virt-install commands.

commit 7f6a48bb0fefcb0f4edced0e0ed08c8f9a344b9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 13 10:14:35 2018 +0100

    builder: templates: Fix path for RHEL 7 aarch64.
    
    Now using ALT-ernate kernel.

commit 7320119a3e7fbe026f624a6fbe483fb59fb34994
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 13 10:12:48 2018 +0100

    builder: templates: Also update download.devel location for RHEL on s390x.
    
    Updates commit f9395e67608670bd2f80ed1b34a9c06ddd99829f.

commit 57fb01bb3684a5977e5ce7ea08580a24fd56d677
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 13 08:55:18 2018 +0100

    builder: templates: Add location for RHEL on s390x.
    
    It's not likely we can actually build templates for this architecture
    since I don't think qemu fully supports the architecture yet.

commit f61cb7489b30bf29843e863da34e34b5bb6486ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 13 08:50:58 2018 +0100

    builder: templates: Use --cpu=power7|power8 because of libvirt regression.
    
    Works around libvirt regression:
    https://bugzilla.redhat.com/show_bug.cgi?id=1539022

commit 787df211ce9a051b21ae3cc70e19cf8280199e28
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Apr 12 11:43:53 2018 +0200

    Fix out-of-tree builds of OCaml components
    
    - Add $(srcdir), $(builddir) to Makefiles where required
    - Post-process ocamldep output
    - generate ocaml/.depends

commit aa22133a8d959975f8ff799de8f859aab8fa1ce1
Author: Kashyap Chamarthy <kchamart@redhat.com>
Date:   Sat Mar 31 14:57:51 2018 +0200

    virt-builder.pod: Update Fedora versions
    
    This is just a mechanincal change, so that the public documentation[*]
    refers to the latest release Fedora versions, instead of the EOLed
    versions.
    
    While at it, also update the `virt-cutomize` Makefile.am
    
    [*] http://libguestfs.org/virt-builder.1.html
    
    Signed-off-by: Kashyap Chamarthy <kchamart@redhat.com>

commit 0e725aca77b824c755fa78b06308f465f116f7e1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 10 12:31:34 2018 +0200

    daemon: autogenerate OCaml interfaces
    
    Add a way to generate OCaml interfaces for all the modules in the
    daemon that implement APIs: this makes sure that for them the
    interface of each function matches the actual API specified in the
    generator.

commit ede8c82376e11c1860beec68521d05201349f5b4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 9 17:07:57 2018 +0200

    daemon: move Mount.umount_all to new Mount_utils module
    
    This way the Mount module contains only the OCaml implementations of
    mount-related daemon APIs.
    
    This is simple refactoring, with no functional changes.

commit 28668ad886b232ea32d1baa2d4a4e829a0103bea
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 9 17:03:24 2018 +0200

    daemon: move Lvm.lv_canonical to new Lvm_utils module
    
    This way the Lvm module contains only the OCaml implementations of LVM
    daemon APIs.
    
    This is simple refactoring, with no functional changes.

commit a246a1fc4f17e06a1925d93c5866748eb119091b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 9 14:21:04 2018 +0200

    daemon: use the structs from the Structs module
    
    No need to redeclare them again in few modules, just use them from the
    Structs module.

commit 2f26a6e0153cde55453abc3c9c96de72252e97fa
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 9 12:52:55 2018 +0200

    daemon: directly use Optgroups
    
    Avoid extra module variables, and just use Optgroups directly.

commit 2d0c49422f48ec0316066961266cac6a730ef1b9
Author: Lin Ma <lma@suse.com>
Date:   Tue Apr 10 15:42:56 2018 +0800

    configure: support using local gnulib src directory as $GNULIB_SRCDIR
    
    Don't clone online gnulib repo if the environment variable $GNULIB_SRCDIR
    is available, and add an option '--gnulib-srcdir' for bootstrap to specify
    a local source directory.
    
    (borrowed some code which wrote by Jim Meyering and Eric Blake in libvirt)
    
    Signed-off-by: Lin Ma <lma@suse.com>

commit d189aa8064c5aa7d17c39c3551b33282b41c58a1
Author: Lin Ma <lma@suse.com>
Date:   Tue Apr 10 15:42:55 2018 +0800

    configure: output clearer message when missing libmagic
    
    Some of users probably don't know which packages they exactly need to
    install while they experienced the error message:
    
    libmagic (part of the "file" command) is required.
    
    So add corresponding package information into error message.
    
    Signed-off-by: Lin Ma <lma@suse.com>

commit d8ad7c2693001008e6afa5863f090073414b9c78
Author: Lin Ma <lma@suse.com>
Date:   Tue Apr 10 15:42:54 2018 +0800

    configure: try pcre-config if pcre pkg-config file not found
    
    Signed-off-by: Lin Ma <lma@suse.com>

commit e28939efc81e991b3e3e1096bb56752e3e8b0599
Author: Lin Ma <lma@suse.com>
Date:   Tue Apr 10 15:42:53 2018 +0800

    configure: output the default backend in summary
    
    Signed-off-by: Lin Ma <lma@suse.com>

commit bb6e197bfd9f937ac8a1b5f42be4c8a0f0a2dd48
Author: Lin Ma <lma@suse.com>
Date:   Tue Apr 10 15:42:52 2018 +0800

    configure: error out if using libvirt backend and no header files
    
    It should error out instead of warning if users provide the option
    '--with-default-backend=libvirt' and no libvirt devel package installed.
    
    Signed-off-by: Lin Ma <lma@suse.com>

commit 0ff55a51036f35f721731bdf57a3c5e72bb002e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 9 08:51:18 2018 +0100

    daemon: Fix type signature of mount_vfs (RHBZ#1564983).
    
    Reported-by: Yongkui Guo.
    
    Fixes commit 82bbd9c8a503661528289589976697d08cb41090.

commit fc6aa5b7fcd1360155bae7abd08cf18ae3b1264c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 9 14:04:16 2018 +0200

    v2v: OVF: adjust tests to updated XML format for OVirt flavour
    
    Updates commit 593a19cc86cfa8f24c66518c8ba21222550b066a and
    commit 9dce43931a19510be1b6d21ce67d14a4136ce241.

commit e4461eabcdce2709290894dcffd443515378867c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Apr 5 10:28:17 2018 +0200

    v2v: OVF: fix ovf:id for VirtualSystem in OVirt flavour
    
    When writing the OVF in OVirt flavour, write the actual UUID of the
    VM as ovf:id attribute for <VirtualSystem>, instead of a dummy value.
    
    Suggested by Arik Hadas in
    https://www.redhat.com/archives/libguestfs/2018-April/msg00005.html

commit d6fcdc3d941c68feabe057426c369b519b4bd87a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 4 18:18:32 2018 +0200

    v2v: OVF: write ovirt:id attribute for the OS in OVirt flavour
    
    When writing the OVF in OVirt flavour, add a ovirt:id attribute to the
    OperatingSystemSection tag: this attribute represents the numeric value
    of the ostype ID, which is ignored by oVirt when parsing OVFs in API
    mode.

commit bb9e75c30fb9f56b77d5550f2739047c65f20427
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 3 18:20:20 2018 +0200

    v2v: OVF: improve get_ostype mappings
    
    - consider CentOS as RHEL, since oVirt has no CentOS OS mappings, and
      CentOS is derived from RHEL
    - use rhel_6_9_plus_ppc64 for RHEL 6 >= 6.9 on ppc64/ppc64le, while
      rhel_6_ppc64 for RHEL 6 < 6.9
    - use rhel_7_s390x for RHEL 7 on s390x
    - use sles_11, and sles_11_ppc64 for any SLES greater than 11, not only
      11
    - use sles_12_s390x for SLES 11+ on s390x
    - use ubuntu_16_04_s390x for Ubuntu 16.04+ on s390x
    - use other_linux_ppc64 for any unmapped Linux distro on ppc64/ppc64le
    - use other_linux_s390x for any unmapped Linux distro on s390x

commit 05e16a82715054223bad402d55c321d2d55fcb58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 5 10:27:20 2018 +0100

    todo: Remove section about using qmp-schema, since we are now using it.

commit 1c8507b0d834909585d00a49dd8885b87037bf0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 29 20:18:34 2018 +0100

    qemu: Fix transcription error in conversion of yajl to jansson.
    
    This broke qemu mandatory locking detection.
    
    Fixes commit bd1c5c9f4dcf38458099db8a0bf4659a07ef055d.

commit de4f2c05394a699b799b0b47bee4998f65064054
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 29 13:52:32 2018 +0100

    Version 1.39.2.

commit 0802485f2e0e810e510a3e40c37b8d73346e9f9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 22 10:29:23 2018 +0000

    v2v: Add general mechanism for input and output options (-io/-oo).
    
    Currently we have a bunch of ad hoc options like --vddk* and --vdsm*
    (and proposed to add --rhv*) to handle extra parameters for input and
    output modes/transports.  This complicates the command line parsing
    and also the clarity of the command line (becauseit's not very obvious
    which options apply to which side of the conversion).
    
    Replace these with a general mechanism for handling input and output
    options.
    
    Thus (for example):
    
      --vddk-thumbprint=...   becomes   -io vddk-thumbprint=...
      --vdsm-compat=0.10                -oo vdsm-compat=0.10
    
    The responsibility for parsing input and output options moves into the
    input and output drivers.
    
    This improves error checking so it's harder now for wrong flags to be
    included on the command line when they don't apply to the current mode.
    
    The old option names are preserved for compatibility.

commit c5f78b1a75d0c319789b5abdb8947a35ead0dca9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 29 13:40:17 2018 +0100

    v2v: Fix test by adding new i_osinfo field.
    
    Fixes commit ea49d75d0dd7ef05614f21f575fb27371f60782f.

commit e646206b9d09f4f5edefd6d1b18973d066c1233f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 27 10:58:23 2018 +0100

    v2v: Add osinfo to internal inspection struct.
    
    This makes it available to output modes when creating metadata.

commit eb8c316bed2adc6192ed9b7f6d08e6ca0d0e1eb9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 23 12:30:42 2018 +0100

    v2v: ova: convert models of network interfaces
    
    So far v2v did not read the model of network interfaces, resulting in
    "virtio" as the model for such interfaces.
    
    Start reading the model, if available, directly mapping E1000, while
    other models are considered as Source_other_nic.

commit a78348d6baf6eef9495dc61a10ff62f8aaf25dd3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 22 10:28:36 2018 +0000

    v2v: cmdline: Move definition to before its only use.

commit a7ee1453f52cd025436e8af70b4ead8c1443c220
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 21 13:51:29 2018 +0000

    v2v: Move and rename vddk_options and vdsm_options structure.
    
    Simple refactoring, giving the structures uniform names and handling.

commit d785111c43d759073910267e55c618dbda97d302
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 22 15:17:48 2018 +0000

    v2v: docs: Move the input and output modes "spider" after examples.
    
    I've had several reports that it just puts people off.  Possibly we
    should delete or rewrite it but this moves it below the examples
    section which is more important.

commit 557cc94f7420b2e5471d02cc59b22145ccb8bd92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 22 16:02:21 2018 +0000

    v2v: Fix parsing of OVA files and documentation for --network and --bridge (RHBZ#1559027).
    
    When parsing OVA files we have to work backwards to whether the
    original VMware object was a network or a bridge.  It seems as if the
    presence of <rasd:Connection> is sufficient.  I dropped the use of
    <rasd:ElementName> since it is literally just an internal name for the
    network element, and is not significant in how the network is used.
    
    Also update documentation because you must use ‘--bridge’ when
    converting VMware guests to RHV.
    
    For a full explanation see:
    
      https://bugzilla.redhat.com/show_bug.cgi?id=1559027#c2

commit c9186f87e029cc244cee29a08e99c08cb6141530
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 21 13:40:59 2018 +0100

    tests: regressions: make test-big-heap use a temporary empty file
    
    Newer versions of qemu use file locking for the images by default, and
    apparently that does not work with /dev/null.  Since this test just
    calls qemu-img to get the format of an empty image, create a temporary
    one instead.

commit dff26f5a5670d2a622c8dbe7069c729964d116cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 11:46:41 2018 +0000

    v2v: cmdline: Replace { foo = foo } with { foo } in record expression.
    
    See:
    https://forge.ocamlcore.org/docman/view.php/77/112/leroy-cug2010.pdf
    
    Followup of commit c7651744da455a00a7abeb930621c50bfb23c40c.

commit 79b96d32b121e96f615580aa92afa424078ee329
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 17:12:47 2018 +0000

    v2v: Add --print-target to display overlay and target information.
    
    This is analogous to --print-source, except that it prints the overlay
    and target disk information.
    
    The output looks like below.  Note there is one overlay and one target
    section per disk.
    
    Overlay and Target information (--print-target option):
    
                 overlay file: /home/rjones/d/libguestfs/tmp/v2vovlc687fe.qcow2
          overlay device name: sda
    overlay virtual disk size: 6442450944
      overlay source qemu URI: /var/tmp/fedora-27.img
    
              target file: [qemu] json:{ "file.driver": "nbd", "file.path": "/home/rjones/d/libguestfs/tmp/rhvupload.IWrzO6/nbdkit0.sock", "file.export": "/" }
            target format: raw
    target estimated size: 2274060540

commit e966fa40a12f0de18b21bcb8721f71dcb5ffa545
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 17:31:31 2018 +0000

    v2v: Update target.target_estimated_size in targets list in main function.
    
    The rebasing in commit 5dae9ca23dab90dfb890f6663aa4bacf1df31ced caused
    this field to never get updated.

commit 001ad0e21848be6d81817f2db3b1ca3bb0bb07af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 13 12:17:28 2018 +0000

    Version 1.39.1.

commit 74bea974e10902fca1902cf97e51ed2812df910c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 10:15:01 2018 +0000

    v2v: Factor out wait_for_file utility function.
    
    Simple code motion.

commit 7565fa7d65578827e28c7bbd646590a19e274ee8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 22 11:43:33 2018 +0000

    v2v: Add -op (output password file) option.
    
    Currently unused, in a future commit this will allow you to pass in a
    password to be used when connecting to the target hypervisor.

commit 86fc990fe6f0aa5d37a35d425bec7a63231d6ad5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 28 14:47:55 2018 +0000

    v2v: rhv: Fix virtio-rng and memballoon OVF fragment for RHV.
    
    Without this extra element, oVirt will crash with a Java
    NullPointerException (see https://bugzilla.redhat.com/1550123).
    
    Fixes commit dac5fc53acdd1e51be2957c67e1e063e2132e680.

commit d467f4592f838ecbb8a9b498e656e59bf7249fac
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 1 10:14:32 2018 +0100

    automake2junit.ml: use LargeFile to stat'ing files
    
    While scanning the sources, some of the files (i.e. the cached
    appliance) may be larger than 4G, and thus raise EOVERFLOW on 32bit
    architectures.
    
    Fixes commit b4e119d8b795756df1e24d3f6b6fa791ce58a5aa.

commit bda9e3eb15bd491d2618539be7705dce0daf919e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 27 17:07:33 2018 +0100

    v2v: update once more the URL with glance metadata
    
    Another year, another URL for them.

commit 4ea2d07e4c08dd6d2ff5978fd47a085159a5a0ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 22 11:45:18 2018 +0000

    v2v: -oc option specifies a generic target hypervisor URI.
    
    No change in the code or the command line, this is just documenting
    that -oc is not specifically a libvirt URI.

commit dd59c730ebaf73cfc53fbbf490228491cd419d4a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 20 15:21:48 2018 +0000

    v2v: DOM: Add doc_to_string function.
    
    Convert a document to an in-memory string.

commit 232b1166655967e63e1e80f757dda4b0d45cab72
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 23 14:35:16 2018 +0100

    automake2junit.ml: ignore symlinks when searching for .trs files
    
    One gnulib test creates a symlink to the same directory, causing our
    iteration to read the same test directory over and over, every time
    considering it as new level of subdirectory.
    
    As solution (or workaround), when iterating through a directory consider
    only regular files, and directories, ignoring any other file type
    (symlinks included).

commit af6c281aee6d68f68dd0feaa5a907315e7bcb89a
Author: Yuri Chornoivan <yurchor@ukr.net>
Date:   Fri Feb 23 09:54:08 2018 +0000

    docs: Fix typo in man page.

commit d0e864e80feb4492e5845d596edcab88df739df7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 21 17:39:09 2018 +0100

    make-repository: use inspect_get_osinfo
    
    Use the newly added API instead of the local implementation.

commit b787cf3c3a42a581dd03ee7d5307706f3c4ae292
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 21 17:37:30 2018 +0100

    inspector: show the per-OS osinfo guess (RHBZ#1544842)
    
    Output also the osinfo guess for each OS in the generated XML output;
    adapt the RNG schema, and the test data to it.

commit d302d2b3f86f4a947cc0c1d0d35c88da76349c9f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 21 17:33:28 2018 +0100

    New API: inspect_get_osinfo
    
    Try to guess the possible osinfo-db short ID for the specified OS.
    
    Related to: https://bugzilla.redhat.com/show_bug.cgi?id=1544842

commit 8281b3c7c4d0be31876a039985df84d4b1e20eec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 22 14:22:12 2018 +0000

    v2v: OVF: Code formatting.
    
    Updates commit a52ed4b4454396eb13d2cdf5762292bff3104f66
    ("v2v: ovf: Create OVF more aligned with the standard") with some
    small code refactoring and formatting.

commit 718c12f7eb25ec70325ce17437a9298fa2356d6c
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Wed Feb 21 10:39:10 2018 +0100

    tmp: ignore virt-v2v overlay files
    
    Failed virt-v2v tests can leave the overlay files on disk. Make sure
    they are ignored.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 0361ae81a16661e3b0bab052d28a9972b9514930
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Feb 22 11:41:08 2018 +0100

    v2v: vdsm: add --vdsm-fixed-ovf option
    
    Add option for -o vdsm that enables output of the modified OVF. oVirt
    engine should already be able to consume the OVF, but let's not take any
    chances and enable it only by command line argument. It can be made
    default later when it receives proper testing.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 1101e0ef0161a01e8b0b7b16a7ed32a7397b9480
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Feb 22 11:41:07 2018 +0100

    v2v: ovf: Create OVF more aligned with the standard
    
    For historical reasons the OVF used in RHV export domain contains some
    deviations from the OVF standard. The format used in -o rhv has to
    remain fixed but for -o vdsm and we could produce much nicer OVF. This
    patch serves as a preparatory step to this.
    
    The main reason for creating different OVF is that it can be used to
    create VM by oVirt REST API. The RHV export domain flavor cannot be used
    that way.
    
    For now the virt-v2v behavior is unchanged. The modified output will be
    enabled in some later patch.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit d25453915ea9b70b3923193e6da08fb15dc23901
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Feb 22 11:41:06 2018 +0100

    v2v: tests: check generated OVF
    
    Check the generated OVF for -o rhv and -o vdsm outputs. Variable UUIDs
    and date/times are filtered out. Make sure the the important UUIDs
    (disk, volume, VM) are where we think they should be.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 5a47ec19a6a9a4f2619fe16c74da8f1186e54bdb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 15 18:13:42 2018 +0100

    daemon: tsk: handle new enum values in sleuthkit 4.5
    
    Resort to a version check for them, as they do not exist in older
    versions.

commit 1d1f1b6703d22cfb8d56389c5ddf2d7676f4b73e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 15 18:09:37 2018 +0100

    lib: qemu: help GCC 8 by break'ing a case in a switch
    
    GCC 8 thinks that the case drive_protocol_gluster may fall through, most
    probably because the only code is a switch case that handles the
    elements of an enum, and thus letting other fall through. In reality
    this ought to not happen at all, so help GCC by break'ing the case,
    which will then lead to the abort() at the end of
    guestfs_int_drive_source_qemu_param.

commit 6b5fdfdd1a17d34380abee586e1f599d7eea769b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 19 16:36:32 2018 +0100

    appliance: add lib64jansson4 on Mageia
    
    Apparently the jansson library on 64bit installation does not provide
    the non-64bit name, so jansson is not pulled in the appliance, and thus
    the daemon does not start.
    
    Updates commit eb4fbe96c996fc6865d20c3ecad246b8bc8a9069.

commit e5c299af238ed1654c31bc3f16d15c8303bfac33
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 19 14:46:32 2018 +0100

    appliance: include dash for Debian distros
    
    Make sure that /bin/sh is available in the appliance, and that path is
    provided by dash on Debian distributions.

commit 05e2419f9eac06c49015b9069b3f34301bd90d9f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 14 15:21:05 2018 +0100

    inspect: use check_tests also for detecting Hurd
    
    Even though the list of checks is very short, at least this migrates
    from imperative checks to a "declarative" one.
    
    There should be no behaviour change, other than using os-release if it
    contains all the needed information.

commit f5c00de6e237d20389da64c71b7a2378dc420eca
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 13 13:07:22 2018 +0100

    build: mandate Jansson >= 2.7
    
    Since we use APIs added in Jansson 2.7 (e.g. json_string_length), then
    raise the minimum version required to that version.
    
    Fixes commit bd1c5c9f4dcf38458099db8a0bf4659a07ef055d.

commit ef45e694fc14bbb241f1eafd3168b734b48043dd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 13 10:54:05 2018 +0100

    inspector: fix help text (RHBZ#1544674)

commit ae85e1cd4bbdaebddc705e3206ce1327f8a83490
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 12 14:07:43 2018 +0100

    customize, sysprep, v2v: handle Kali Linux as Debian
    
    Kali Linux is a Debian derivative, so add basic support for it by using
    most of the Debian code paths.  The only exception is the crypto
    algorithm for passwords in passwd, which is always assumed as SHA512
    (as Kali Linux is relatively new).

commit df2c1c3e16038fa2cc312509b8fbfab02afa03f4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 12 13:53:57 2018 +0100

    inspect: recognize the Kali Linux distribution (RHBZ#1544227)
    
    Read the information from os-release, and make it behave like a
    Debian distribution (i.e. using dpkg, and apt).

commit 7888c6e19abc5ecb555489ce763712300a859bd7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 12 11:24:06 2018 +0100

    Switch from YAJL to Jansson
    
    While YAJL mostly works fine, it did not see any active development in
    the last 3 years.  OTOH, Jansson is another JSON C implementation, with
    a very liberal license, and a much nicer API.
    
    Hence, switch all of libguestfs from YAJL to Jansson:
    - configure checks, and buildsystem in general
    - packages pulled in the appliance
    - actual implementations
    - contrib scripts
    - documentation
    
    This also makes use of the better APIs available (e.g. json_object_get,
    json_array_foreach, and json_object_foreach).  This does not change the
    API of our OCaml Yajl module.

commit c729c5f84a37654287c77eee57a6030efc1d10f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 9 15:55:38 2018 +0000

    python: Fix missing & additional backslashes which broke python sdist.
    
    Fixes commit e6c89f96316c3eda6049d0c3ed4de4cda6f4f973.

commit 126492819cdee96e303ff0ea79557452f92147ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 7 15:47:56 2018 +0000

    Version 1.38.0.

commit dd0f8df6118e792e188b0a40ac3c9cfd8b39c199
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 7 17:46:22 2018 +0000

    docs: Finalize release notes for 1.38.

commit 51ad2429bf4d032ac71c044507e232f7186574ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 9 09:12:08 2018 +0000

    authors: Add a list of aliases.
    
    This handles the case where a single author has multiple different
    names in the git commit history.

commit 214d54ba4fdf71e5113be85853bd0f9706cd4efe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 8 12:11:44 2018 -0500

    ocaml: When creating compat Bytes module, create bytes.mli file.
    
    On distros with OCaml < 4.02 we need to create a compatibility Bytes
    module.  However we didn't create the interface file (bytes.mli) which
    would mean that dependencies wouldn't be created correctly for
    parallel builds.  This commit uses ‘ocaml -i’ to create an interface
    file which exports everything.

commit c60cc2bb2f4a98e12f52458a27119e72d75aea28
Author: Yuri Chornoivan <yurchor@ukr.net>
Date:   Thu Feb 8 13:20:34 2018 +0100

    Fix minor typos

commit 9f2b4d2d827c15bc03dc7a0da1344f69ef817939
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 8 13:11:51 2018 +0100

    python: add missing newline
    
    When checking the return value of guestfs_int_py_fromstring for string
    fields of structs, add a newline to generated C code, so it is properly
    indented.
    
    Fixes commit 401c44563623f7badc2cfdd63f9ff6de569f3fcb.

commit 52fddf84ef1fa871e3f6fb6a36484cec14b6bb9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 7 18:37:45 2018 +0000

    diff: Fix typo in manual page.
    
    Reported by: Yuri Chornoivan

commit f15f1ec2f9beb6b7894dc9e0ca66ffba589fb1d8
Author: Daniel P. Berrangé <berrange@redhat.com>
Date:   Wed Feb 7 17:56:41 2018 +0000

    daemon: add inspector support for MS-DOS distro
    
    An installation of MS-DOS has various files in a /DOS directory,
    which COMMAND.COM looking like a reasonable signal that its MS-DOS
    or a very close relative there-of.
    
    This is validated with an MS-DOS 6.22 install.
    
    Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

commit f1e6156ccc263c73f8a29434be6572d337dbea99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 7 16:17:56 2018 +0000

    tmpdirs: Make the ‘su broken’ error message actionable.
    
    Revert "tmpdirs: Blame systemd because su is broken."
    
    This reverts commit 9464304d7a6b9b01e9eee32620ef3831e2b10875.
    
    Replace with an actionable error message.

commit 06b0d40eb2ff00a9cf3a3c9ee5fbd273c75ac5ea
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 7 17:33:14 2018 +0100

    fish: add a small doc note about -- for args (RHBZ#1536603)
    
    This will hint what to do when any argument of a command starts with a
    dash.

commit e26b05c08125f1f8980e298776bcaf89e1d495cb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 7 17:26:37 2018 +0100

    v2v: fix -it ssh syntax in example (RHBZ#1540535)
    
    Updates commit 1d38216d20141cef9ce83ca4ddbe9c79f5da4f39.

commit 3db64655994ddadacc26835bb24df161d70e5ac0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 7 14:13:07 2018 +0100

    customize: avoid Array.mem for now
    
    Since it is available only in OCaml >= 4.03, which is higher than our
    requirement, add a simple reimplementation of it.
    
    Fixes commit 719d68fa247cc3885ecf7ec1c010faf83267d786.

commit 5903f99094ad047c4256fa9afd6ca0c02264e5cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 7 14:43:14 2018 +0000

    docs: Remove or correct links to virt-tools.org.
    
    Unfortunately I wasn't able to find a good reference for checking if
    your hardware virt is enabled.
    
    Thanks: Yuri Chornoivan

commit f811e299a72e22fc6efa7bae0e79e8a7c720ffa9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 18 10:49:56 2017 +0000

    tmpdirs: Blame systemd because su is broken.

commit 8ee5a348b22166b618021a859cd19c7869aa21cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 7 14:35:02 2018 +0000

    website: Update links to new development branch and stable branches.

commit 7f15caeefaef1aa66b47f48c2f2d6afead4ee570
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 7 13:35:39 2018 +0000

    maintainer: Update translations from Zanata.
    
    There were some problems with the Ukrainian translations which I have
    fixed.  The 3 magic strings __CUSTOMIZE_OPERATIONS__,
    __CUSTOMIZE_SYNOPSIS__ and __OPERATIONS__ were translated, breaking
    substitutions in virt-builder, virt-customize and virt-sysprep manual
    pages.

commit 8bd432eb9933bc86258c4215489c5aabcf8d311c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 7 12:37:26 2018 +0000

    maintainer: Update to latest gnulib.

commit e894522a95311fb208eb1585c9e1485520086b7f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 7 12:36:46 2018 +0000

    docs: release notes: Hivex 1.3.14 is _not_ required.

commit f00e2b78215fb95f017a60f9076d99e33ad862ba
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 6 17:27:23 2018 +0100

    daemon: build also without Hivex.OPEN_UNSAFE (RHBZ#1493048)
    
    Do a configure check for the OPEN_UNSAFE flag in the OCaml binding of
    Hivex, using it only when available.  This makes it possible to use
    hivex < 1.3.14 to build libguestfs (the daemon, actually).
    
    Amend the building documentation accordingly, bringing the minimum
    version of hivex back as it was before
    commit 64f49df747c0937d9433eb11d4191d92a4af748c.

commit c48943315e6d51b516b31d2881ba96b74259bb85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 6 14:24:18 2018 +0000

    Version 1.37.37.

commit 70312a4ec10fd6e3004b7182f4089a1db5a33ff4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 25 21:07:01 2017 +0000

    docs: Update release notes for 1.38 release.

commit dfc101409094acdf75ed950aea73d99d3330d56d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 31 12:29:15 2018 +0100

    customize: allow missing SELINUXTYPE in SELinux config
    
    libselinux defaults to "targeted" when no SELINUXTYPE is specified in
    /etc/config/selinux.  Hence do the same here, instead of failing because
    of the missing key.
    
    Add a slow test for checking SELinux relabeling on a Fedora 27 guest,
    both with no changes, and with a modified configuration.

commit 3a961b1841d4bbe33eaeab8119c8d145558ea213
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 29 15:37:12 2018 +0000

    customize: Correctly handle crypt(3) returning NULL (RHBZ#1539395).
    
    In particular glibc's crypt will return NULL / errno == ENOSYS and
    other implementations might do that in future too.
    
    Reported by: David Hill

commit 10c639423c1f5dfd651cabe5b2468d409f23e8fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 26 10:48:27 2018 +0000

    p2v: tests: Fix slow test ‘test-virt-p2v-pxe.sh’.
    
    Since virt-builder Fedora 27 templates now use GPT, the root
    filesystem has moved from /dev/sda3 to /dev/sda4.  /dev/sda3 is now a
    swap device which could not be mounted as the root device, although
    systemd unhelpfully hides the error unless you run qemu interactively.
    
    I think this fixes commit a06e50e263d96e6759d6b8052f89bc06a99056ae.

commit 071b4199c56b3cc2b2c00f5bb2fa78e5960a5ca1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 25 14:30:43 2018 +0000

    Version 1.37.36.

commit 0847dace2343aad4130fe89e035e09236826ad3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 23 11:49:22 2018 +0000

    customize: Use libxcrypt if available to provide crypt(3).
    
    glibc 2.27 removes crypt(3) and suggests using libxcrypt.
    libxcrypt requires <crypt.h> to be included.

commit e2b53a2bb65b1f5a2073e36e6ca6fb9a1876edc4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 15 08:26:29 2017 +0000

    lib/info: Remove /dev/fd hacking and pass a true filename to qemu-img info.
    
    It obscures what's really going on and is no longer necessary
    for the original purpose.
    
    This reverts commit d50cb7bbb4cc18f69ea1425e9f5cee9685825f95.
    
    See also:
    
      https://www.redhat.com/archives/libguestfs/2017-November/thread.html#00226
      https://www.redhat.com/archives/libguestfs/2017-December/thread.html#00044

commit fb167453083516b9526f597e5aa3cf18872deab2
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Tue Jan 23 11:37:26 2018 +0200

    lib: docs: guestfs_list_filesystems no longer needs to be used soon after launch when nothing is mounted.
    
    guestfs_list_filesystems uses mount/umount to discover btrfs
    sub-volumes and since 1.37 it generates random mountpoint so it will
    longer affect already mounted filesystems if either.

commit 1b707fa88d2a91bd42f110960b60e6294bb3dd21
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 22 17:00:41 2018 +0000

    lua, perl: Use thread-safe strerror_r instead of strerror (RHBZ#1536763).

commit 2af041dcaa29a834bb42566832daf35968e702c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 22 17:04:28 2018 +0000

    perl: Free array on error path to avoid leak (RHBZ#1536765).

commit efb16347df711344e13671135654678d16619249
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 17 10:11:53 2018 +0000

    launch: direct: Use old-style file= and format= parameters when not disabling locking (RHBZ#1503497).
    
    Ancient qemu 1.5 (in RHEL 7) does not understand the
    file.file.filename= and file.driver= parameters.  Go back to using the
    old-style file= and format= parameters when we're not trying to set
    the file.backing.file.locking=off parameter.
    
    Fixes commit 9fe592808ccfd9ed184b88ca9c6cad2e1798dee3.
    
    Thanks: Yongkui Guo, Václav Kadlčík.

commit c997d24e5138dbb9350e9d703202003e7e6d6073
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 12 15:54:52 2017 +0000

    common/mlxml: Remove -cclib from ocamlmklib.
    
    ocamlmklib will get confused if the -cclib parameter expands to
    anything except a single -lxml2 argument.  In any case it's not
    necessary to specify the linker command here since every use of this
    library links in a program to libxml2.

commit f30ca4b727385a55e2a877f94e6679cb2c5d5b35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 10 21:12:01 2017 +0000

    configure: Don't define _FORTIFY_SOURCE.
    
    We routinely test the upstream code by running everything under
    valgrind, and in any case _FORTIFY_SOURCE is usually defined by
    downstream Linux distros and we can leave the optimization vs safety
    decision to them.
    
    See this bug: https://bugs.gentoo.org/640494

commit 713a39cdf265f32e3658c209f914d9caa5075a0a
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Jan 16 13:08:01 2018 +0100

    resize: copy GPT partition flags
    
    In some cases, the first stage bootloader needs the 'Legacy BIOS
    bootable' flag to be set on the partition. This change copies all
    flags (including this one) for each partition of the old disk to the
    new one to avoid ending up with non-bootable disks.

commit a8d3d4b96afc46645b09223fe4cd96aecdb1604b
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Jan 16 13:08:00 2018 +0100

    New APIs: part_set_gpt_attributes and part_get_gpt_attributes
    
    Allow reading and setting the GPT partition attribute flags.

commit 125534fb86307bb9202f22cd88307acd02ad8f47
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Jan 16 13:07:59 2018 +0100

    daemon: make sgdisk_info_extract_uuid_field more generic
    
    Rename the sgdisk_info_extract_uuid_field to
    sgdisk_info_extract_field in order to reuse it for other field types.
    Just like its C ancestor, it now needs an extractor function to be
    passed as parameter.

commit 81d94276b519d98a5e03248b60485bf421cf94b2
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Mon Jan 15 00:28:04 2018 +0200

    tests: md: test guestfish finds md and LV devices in different combinations
    
    Test guestfish finds:
    1. md device created from physical block device and LV,
    2. md device created from LVs
    3. LV created on md device
    
    raid0 is used for md device because it is inoperable if one of its components is inaccessible so it is easy observable that md device is missing (raid1 in this case will be operable but in degraded state).

commit b7179be4148bc12d1b248d60ade3999d75abdc2d
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Mon Jan 15 00:28:03 2018 +0200

    tests: md: test guestfish finds logical volume on md device
    
    Test guestfish finds logical volume (LV) created on md device

commit 96d7c33906c0c7d90ffe76cbb0f84a9aedf9b333
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Mon Jan 15 00:28:02 2018 +0200

    appliance: init: Avoid running degraded md devices
    
    The issue:
    - raid1 will be in degraded state if one of its components is logical volume (LV)
    - raid0 will be inoperable at all (inacessible from within appliance) if one of its component is LV
    - raidN: you can expect the same issue for any raid level depends on how many components are inaccessible at the time mdadm is running and raid redundency.
    
    It happens because mdadm is launched prior to lvm AND it is instructed to run found arrays immediately (--run flag) regardless of completeness of their components.
    Later (when lvm activates found LVs) md signature on LV might be recognized BUT newly found raid components could't be inserted into already running (in degraded state)
    or marked as inoperable raid arrays.
    
    The patch fixes the issue in the following way:
    
    1. Found arrays won't be run immediately unless ALL expected drives (components) are present. Here '--no-degraded' flag comes into a play. See mdadm(8).
    2. Second mdadm call (after LVM is scanned) will scan UNUSED yet devices and make an attempt to run all found arrays (even they will be in degraded state).
    
    There is no performance penalty because second pass scans UNUSED yet devices. Here is 'boot-benchmark' before and after patch:
    
                 : libvirt backend : direct backend
    ------------------------------------------------
    master       : 835.2ms ±1.1ms  : 670.4ms ±0.3ms
    master+patch : 837.7ms ±2.4ms  : 671.8ms ±0.2ms

commit cdcf99ad9a80d5eb32845b1f01449462cbf2a837
Author: Mykola Ivanets <stenavin@gmail.com>
Date:   Sun Jan 14 21:40:42 2018 +0200

    cat: virt-tail: Fix spontaneously failing test
    
    According to 'guestfs_sync' API method documentation: "You should always call this if you have modified a disk image, before closing the handle."
    So, 'guestfish --remote sync' is required because changes made on the disk (guestfish --remote rm /tail) should be visible to 'virt-tail' which works in different process and also accessing the same disk.
    A you can see, other changes done via 'guestfish --remote' in this test are flushed via a 'sync' command.
    
    The test is failing spontaneously beasue without 'sync' it very depends on outside factors like qemu caching policy, underlying host filesystem etc.

commit cfbd57ae9f80f11c1b1436a560fb1c6a34ff7d63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 9 12:13:07 2018 +0000

    daemon: tests: Compile tests with compiler warnings.
    
    And fix the problems.

commit 954984b133fb11a224bee8feaa443a8e77ca0c84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 9 12:03:07 2018 +0000

    tests: Further instances of $(RPC_CFLAGS).

commit 1bc0a2682ffc4bdd22ff31e0f2a9085642e78fe3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 9 12:12:15 2018 +0000

    common/protocol: Fix indentation of $(RPC_CFLAGS).
    
    Fixes commit 946d5bf8d47b3129dbfd8d848ba53ce3be0b6bd8.

commit ddfd87d30e8c950b5ed7206368042308ce0e31c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 9 11:01:43 2018 +0000

    diff: Set different identifiers on the two handles.
    
    This allows us to easily see from trace output (‘virt-diff -x’) which
    handle is being used for each call.  Otherwise you get meaningless
    output such as:
    
    libguestfs: trace: download "/Windows/WindowsUpdate.log" "/tmp/virtdiffy9m5YW/a"
    libguestfs: trace: download = 0
    libguestfs: trace: download "/Windows/WindowsUpdate.log" "/tmp/virtdiffy9m5YW/b"
    libguestfs: trace: download = 0
    
    Thanks: Xiang Hua Chen

commit 49c76418019480ccc7521958e283b839befbe28a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 5 15:00:23 2018 +0000

    resize: Clarify example in manual page.
    
    Someone following this example started by literally copying "olddisk"
    to "newdisk", which doesn't work (the target must always be blank).
    Clarify the wording.

commit 7b255b8a8472ba9ff110cab38f73d965ec0bd994
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 3 16:48:21 2017 +0100

    Update copyright dates for 2018.
    
    Run the following command over the source:
    
      perl -pi.bak -e 's/(20[01][0-9])-2017/$1-2018/g' `git ls-files`

commit f372ab852f025376c944a09a7cf78ab3714f585c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 18 10:29:11 2017 +0000

    v2v: docs: Match the two instances of /path/to/nbdkit in the documentation.
    
    Fixes commit d81a2ee185599c23a128ab65be9d48b415abf461.
    See also:
    https://bugzilla.redhat.com/show_bug.cgi?id=1513884#c5

commit 235d4bea5dbe2b2e030af8d9262185916af75a0e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 12 22:21:47 2017 +0000

    df: Handle block sizes smaller than 1024 bytes (RHBZ#1525241).
    
    Thanks: Nikolay Ivanets

commit 3cd0733a02da74e19a87262bdc48af928f504f99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 10 09:34:50 2017 +0000

    Version 1.37.35.

commit 9a18d01db4f57b2959ff6659c8dad46d7f4c1ecb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 10 09:30:49 2017 +0000

    generator: Update AUTHORS.

commit b7cf53540ef9675039c4472c459b40f9793fa328
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 10 09:23:19 2017 +0000

    builder: Fix name of repository_main.mli file.
    
    Fixes commit 67b0de739927f6496853f196313bbe325f62d871.

commit 5fb1a960a1031872ac3a4f3b939c61641a977c02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 10 09:17:40 2017 +0000

    php: Ignore php/extension/configure.ac
    
    Latest php finally renames this (from configure.in).

commit 1c67c77dc4861f07b23fef06ae3d2d6d28c789e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 9 21:32:47 2017 +0000

    configure: If multiple entries in RELEASES file, pick first.
    
    Multiple entries matching the grep would corrupt the output Makefile.

commit e183bd10edd3bfe0a9b704945f7d376b7255ba8c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 8 10:43:45 2017 +0000

    v2v: -i vmx: Enhance VMX support with ability to use ‘-it ssh’ transport.
    
    This enhances the existing VMX input support allowing it to be
    used over SSH to the ESXi server.
    
    The original command (for local .vmx files) was:
    
     $ virt-v2v -i vmx guest.vmx -o local -os /var/tmp
    
    Adding ‘-it ssh’ and using an SSH remote path gives the new syntax:
    
     $ virt-v2v \
         -i vmx -it ssh \
         "ssh://root@esxi.example.com/vmfs/volumes/datastore1/guest/guest.vmx" \
         -o local -os /var/tmp
    
    I anticipate that this input method will be widely used enough that it
    deserves its own example at the top of the man page.

commit 18162c7794e3223341932f698735c9835bf5cc68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 7 14:41:32 2017 +0000

    v2v: vddk: Switch to using ‘-it vddk’ to specify VDDK as input transport.
    
    Previously the presence of the ‘--vddk <libdir>’ option magically
    enabled VDDK mode.  However we want to introduce other transports for
    VMware conversions so this wasn't a very clean choice.
    
    With this commit you must use ‘-it vddk’ to specify that you want VDDK
    as a disk transport.  The previous ‘--vddk <libdir>’ option has been
    renamed to ‘--vddk-libdir <libdir>’ to be consistent with the other
    passthrough options, and it is no longer required.
    
    A new command line looks like:
    
      $ export PATH=/path/to/nbdkit:$PATH
      $ virt-v2v \
          -ic 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1' \
    |     -it vddk \
    |     --vddk-libdir /path/to/vmware-vix-disklib-distrib \
          --vddk-thumbprint xx:xx:xx:... \
          "Windows 2003" \
          -o local -os /var/tmp
    
    where only the two lines marked with ‘|’ have changed.

commit b1dd9b63a986cf2c749c37705043f509147e1839
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 21 11:59:11 2017 +0000

    mltools: Move urandom module to common/mltools.
    
    So that we can use it in virt-v2v code.

commit d325e3dd5c2ef99d908969c6d7d71ed650070fb8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 21 11:39:40 2017 +0000

    urandom: Fail if /dev/urandom returns EOF.
    
    This is an unexpected error, so fail hard instead of leaking
    End_of_file exception.
    
    Nothing that calls into the Urandom module expects or handles
    End_of_file.

commit ac1dd34b3c30a8b88334ea926a26557f68255462
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 21 11:39:14 2017 +0000

    urandom: Use with_openfile.

commit c9a6d13f79566b4ea5a9323fa856065ac8945a99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 21 11:36:59 2017 +0000

    urandom: Use O_CLOEXEC.

commit 2e1e591f62133fe153957608b49367d8621bd45f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 21 17:21:14 2017 +0000

    builder: planner: Don't add some impossible transitions.
    
    Certain transitions where the input and output filename are the same
    are impossible, eg copying a file to itself.  Don't add these.
    
    Reported-by: David Kaylor.

commit f9b6beb44ac776e1259e801260187f035ad609c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 5 17:49:04 2017 +0000

    daemon: Rewrite inspection code using ‘return’ statements.
    
    When rewriting this, I revisited the original C code and changed the
    OCaml code so it's now reasonably similar to the original.

commit ba644d8eb9c4a21a69e1f0578068dbdf5c3439de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 4 17:52:51 2017 +0000

    common/mlstdutils: Add ‘return’ statement for OCaml.
    
    This adds a ‘return’ statement as found in other programming
    languages.  You can use it like this:
    
      with_return (fun {return} ->
        some code ...
      )
    
    where ‘some code’ may either return implicitly (as usual), or may call
    ‘return x’ to immediately return ‘x’.  All returned values must have
    the same type.
    
    The OCaml >= 4.04 implementation is by Petter A. Urkedal and octachron.
    See this thread:
    https://sympa.inria.fr/sympa/arc/caml-list/2017-11/msg00017.html
    
    The version that works for any OCaml is by me.  (Note that my version
    cannot be nested).

commit f286fad916f11c749cbad581034e6c81e8b172d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 8 17:15:11 2017 +0100

    common/mlstdutils: Move list functions into extended List module.
    
    However some existing functions had names which shadowed existing
    functions in the List module, so I had to rename them:
    
      assoc -> List.assoc_lbl
      append -> List.push_back_list
      prepend -> List.push_front_list
    
    This is an extension of the previous commit.

commit 373b1f934c54309c35657294c4966b438981bebf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 8 16:30:37 2017 +0100

    common/mlstdutils: Extend the List module.
    
    We defined a number of functions on lists which are not provided by
    the standard library.  As with Char and String, let's extend List to
    add these new functions to a List pseudo-module (really
    Std_utils.List, but called List when you ‘open Std_utils’).
    
    The initial exported functions are all List functions from OCaml 3.11
    + iteri + mapi.  We can add other functions as needed.

commit 0e97cc3874198d774d5206706007a2977262f4c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 7 15:43:12 2017 +0000

    v2v: -o null: Use the qemu null device driver.
    
    Instead of writing to a temporary file and deleting it, use the null
    block driver (the "null-co://" URI) in qemu to throw it away.

commit f9f857798875e86ef60966b02c19591dd4cbe53a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 8 08:34:56 2017 +0000

    v2v: Abstract the target file so it could be a QEMU URI.
    
    This complicated bit of refactoring abstracts the target file so it is
    allowed to be either a filename or a QEMU URI.

commit 1405526eb636cbaa143b636b32cdba56ca703e64
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 8 11:48:43 2017 +0000

    v2v: vddk: Fix printing of nbdkit command.
    
    Fixes commit 99a29125f6d743daed1457b0541f1daf943f95d8.

commit 7f8955684b415b6ecc12a4905fe6d681607d0a59
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 29 15:29:57 2017 +0100

    builder: use the template arch when caching all templates
    
    When caching all the templates, use the architecture of each template,
    instead of the architecture passed as --arch (or the host architecture,
    as default).  This way, the right destination filename will be used.
    
    Fixes commit b1cf6246f3c80762cf27dbdb24168589a34daf00.
    
    Thanks to: Erik Skultety.

commit 0cad4987b74f75c9ac71246544814ac4066feea3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 7 14:54:46 2017 +0000

    v2v: vddk: Print nbdkit command before running it.
    
    Very useful for debugging.

commit 071be402f9aa2b81cf58d78141093b9313e6121d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 7 13:55:07 2017 +0000

    v2v: cmdline: Reformat array of arguments.
    
    No change, just code formatting.

commit 5fb5f16736e48a12456ec2b014eea2c5332a2756
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 7 10:34:30 2017 +0000

    v2v: Remove unused ‘scheme’ parameter.
    
    It wasn't actually used for anything significant.  Even worse
    virt-v2v-copy-to-local made up a scheme out of thin air.
    
    Just code refactoring, no functional change.

commit 0333252cd47e40e69830fc8344d47e3814f43054
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 6 15:53:41 2017 +0000

    v2v: docs: State that --vddk-thumbprint is only required if --vddk present (RHBZ#1513884).
    
    Thanks: Ming Xie, Pino Toscano.
    
    See also:
    https://bugzilla.redhat.com/show_bug.cgi?id=1513884#c2

commit c2977f157d65d542e8917f2d5dca5b5ce1c77ea0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 6 15:48:50 2017 +0000

    v2v: docs: Remove min version of VDDK, recommend nbdkit >= 1.1.25 (RHBZ#1513884).
    
    Requires -> recommends because older versions of nbdkit will likely
    work also.
    
    See also:
    https://bugzilla.redhat.com/show_bug.cgi?id=1513884#c3

commit 4633fe62ab78ac450ef56f42c86dfb61e2d50eba
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 5 15:36:34 2017 +0100

    lib: libvirt: stop using <shareable/> for appliance disk (RHBZ#1518517)
    
    Commit aa9e0057b19e29f76c9a81f9aebeeb1cb5bf1fdb made the libvirt backend
    use <shareable/> for the disk of the appliance, since at that time all
    the instances were using the disk directly.
    OTOH, commit 3ad44c866042919374e2d840502e53da2ed8aef0 switched to
    overlays for read-only disks, including the appliance, so effectively
    protecting the appliance.
    
    Because of this, the libvirt backend does not need <shareable/> anymore.
    
    Thanks to: Daniel Berrange, Richard W.M. Jones,  Peter Krempa.

commit 92af7da26f30e45e53c8487b88e8cb5422b20d23
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 1 14:46:13 2017 +0100

    v2v: bootloaders: handle no default grubby kernel (RHBZ#1519204)
    
    When using grubby to get the default kernel of a guest, do not fail
    with a bogus error like:
    
    virt-v2v: error: libguestfs error: statns: statns_stub: path must start
    with a / character
    
    in case there is no default kernel that can be determined (e.g. because
    of a bogus configuration).

commit 4a0915b72cd660ec3c3afeddf8dba908dc3c2adf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 25 21:01:42 2017 +0000

    bugs-in-changelog.sh: Python bugzilla client -t option changed to -s.

commit d9c1c74a9a7dd8a80ce47b79d3ceb2c717d32958
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 23 18:43:51 2017 +0000

    v2v: Add generator_built and BUILT_SOURCES listing generated files.
    
    Fixes commit 0c396650b0018dc3fcd7ca809202ad46ae2c327d.

commit e974a82f1e9760eab9fa403452feed48fd35001f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Nov 23 14:49:44 2017 +0100

    docs: add virt-builder-repository.pod to podfiles
    
    Updates commit a442d2c3217f709128f0e377f88649fb6ba90f45.

commit 97272402c377dc83ca72b29dc38a8baa9f9995e6
Author: Lars Seipel <ls@slrz.net>
Date:   Thu Nov 23 06:15:28 2017 +0100

    launch: direct: Omit locking option for non-file disks (RHBZ#1516094)
    
    QEMU does not accept options unrecognized by the block driver
    in use. Disable locking only for read-only disks that are
    file-backed, as that's the only block driver it is supported
    with.
    
    Signed-off-by: Lars Seipel <ls@slrz.net>

commit 3841c04bd40951189802911b69cce35d72d94a34
Author: Yuri Chornoivan <yurchor@ukr.net>
Date:   Wed Nov 22 21:10:59 2017 +0200

    Fix minor typos

commit 832baa1cb430288ca9a870bc8045130722c95921
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 21 23:08:15 2017 +0000

    builder: Add missing builder/repository_main.mli file.
    
    Fixes commit a442d2c3217f709128f0e377f88649fb6ba90f45.

commit 7fcd0fb4fb35a1c495bc10e3aaf0fce4c0a0993b
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Nov 21 16:10:57 2017 +0100

    New tool: virt-builder-repository
    
    virt-builder-repository allows users to easily create or update
    a virt-builder source repository out of disk images. The tool can
    be run in either interactive or automated mode.

commit cfbef83c661c1395ed08199b6429a10e5f79634b
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Nov 21 16:10:56 2017 +0100

    builder: add a template parameter to get_index
    
    get_index now gets a new template parameter. Setting it to true will
    make the index parsing less picky about missing important data. This
    can be used to parse a partial index file.

commit ddf4cc36483ff8665264d1fb31c2a48e15d4c23b
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Nov 21 16:10:55 2017 +0100

    builder: change arch type to distinguish guesses
    
    Change Index.arch to the type (Arch of string | GuessedArch of string).
    
    In a future commit, the index parser will allow arch not to be set
    for some cases. Thus arch value will be guessed by inspecting the
    image. However we need to distinguish between a set value and a guessed
    one. Using this new type will help it:
    
        match arch with
        | Arch s        -> (* This is a set value *)
        | GuessedArch s -> (* This is a guessed value *)

commit b32a4a94a9e410742b4851b941e4e7dc4fea8ffa
Author: Martin Kletzander <mkletzan@redhat.com>
Date:   Sat Nov 18 19:44:02 2017 +0100

    build: Reference RPC_CFLAGS where needed
    
    Since glibc-2.26 removed the /usr/include/rpc/rpc.h, it caused problem even
    though probing for libtirpc has taken place and worked properly.  The problem is
    that RPC_CFLAGS (usually `-I/usr/include/tirpc` on Linux) was not used in places
    where it was needed.  So the build failed with messages like the following:
    
    In file included from guestfs_protocol.c:6:0:
    guestfs_protocol.h:9:10: fatal error: rpc/rpc.h: No such file or directory
     #include <rpc/rpc.h>
              ^~~~~~~~~~~
    
    Signed-off-by: Martin Kletzander <mkletzan@redhat.com>

commit 32c00c9e8f19a0423eff1416fe39123a525bca34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 18 12:32:13 2017 +0000

    common/mlpcre: Compile bindings even with --disable-ocaml (RHBZ#1514756).
    
    Thanks: Jean-Christophe Manciot

commit 0b5ef94a7641082845b46ce1f0901106462d2d3f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 16 23:05:17 2017 +0000

    Version 1.37.34.

commit 5f9d4d930ef48f6c51957b8bad20039f9b0e274c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 16 22:43:53 2017 +0000

    tests: Make filtering code in rhbz557655.sh test more liberal.
    
    Because of vagaries in how the debug messages get printed they can get
    split over lines:
    
      gulibguestfs: trace: truncate_size = 0
      estfsd: => truncate_size (0xc8) took 0.00 secs
    
    and the code which filtered out those messages before comparison was
    failing.  This makes the code more liberal on how it matches and
    filters out these messages.

commit 590a41b91c27581c1b7abb528c0b56f4f8d0cbde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 16 14:03:23 2017 +0000

    Version 1.37.33.

commit b46dfadba3f4c4e511bd648fdb7e44369d6b2aec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 16 14:03:03 2017 +0000

    po: Add osinfo_config.ml to POTFILES-ml.
    
    Updates commit 02184f55f9d9bf1c75d4392c2f2b52f0c1c64cd4.

commit db64226826ac2bfbf4c6bac4b9fc70a8b994166f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 16 14:02:10 2017 +0000

    Update PO files from Zanata.
    
    Adds po/cs.po and removes po/zh_TW.po.

commit cb7008a563db5c779877b591ecbef880c02cf07a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 16 13:22:02 2017 +0000

    builder: Add osinfo_config.mli file.
    
    Every .ml file now needs a corresponding .mli file so that
    dependencies are generated correctly.  The check-mli.sh script picks
    up the problem:
    
      FAIL: check-mli.sh
      ==================
      ./builder/osinfo_config.ml: missing ./builder/osinfo_config.mli
      FAIL check-mli.sh (exit status: 1)
    
    Fixes commit 46abca0ec3157cf7e31329f8a4cfbeb577b3fe55
    and commit 02184f55f9d9bf1c75d4392c2f2b52f0c1c64cd4.

commit 182d9342bb0b0dbaaae18eee432799cda5825421
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 6 14:20:22 2017 +0100

    lib: command: If command fails, exit with 126 or 127 as defined by POSIX.
    
    If running the external command fails in "argv mode" (ie. when
    not using the shell), then exit with either 126 or 127 as defined
    by POSIX.
    
    This is mostly the same as what bash does, see
    execute_cmd.c:shell_execve in the bash sources.
    
    Note: saving errno around perror(3) if necessary, otherwise you will
    see different behaviour between verbose and non-verbose mode.  In
    non-verbose mode, perror(3) tried to print to a closed file
    descriptor, failing and overwriting errno.  That took some time to
    debug.

commit fa09c0c14f3443eb85ea4293df663de6c9e8a156
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 5 19:24:33 2017 +0000

    common/mlstdutils: Add with_openfile function.
    
    This safe wrapper around Unix.openfile ensures that exceptions
    escaping cannot leave unclosed files.
    
    There are only a few places in the code where this wrapper can be used
    currently.  There are other occurences of Unix.openfile but they are
    not suitable for replacement.

commit fabae62a002a6c3c921c092f8017b0394031338f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 16 12:31:41 2017 +0000

    v2v: vddk: Atomicly chmod the password file.
    
    Ensure we are chmodding the correct file, avoids possible races.
    
    Thanks: Pino Toscano.

commit b2c19e3a7261aacbec1ccda219bbaf0d4846e425
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 5 19:24:33 2017 +0000

    common/mlstdutils: Add with_open_in and with_open_out functions.
    
    These safe wrappers around Pervasives.open_in and Pervasives.open_out
    ensure that exceptions escaping cannot leave unclosed files.

commit 0515cdee8442f2203d93c0d23e33799df58fdd3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 16 10:36:19 2017 +0000

    Version 1.37.32.

commit ccbd97973723842bfad4901550b3211534f5a795
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 16 10:33:42 2017 +0000

    builder: Add osinfo to virt-builder and hence to EXTRA_DIST.
    
    Fixes commit 02184f55f9d9bf1c75d4392c2f2b52f0c1c64cd4.

commit 0711669bca645000b7e2837645f93318329b76a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 14 17:58:30 2017 +0000

    daemon: Use a configure-time test to find the best OCaml runtime.
    
    In OCaml 4.06 we need to link to daemon to libasmrun_pic.a (the OCaml
    runtime linked with -fPIC).  Otherwise you will see many errors like
    this:
    
        /usr/bin/ld: /usr/lib64/ocaml/libasmrun.a(startup_aux.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
        /usr/bin/ld: /usr/lib64/ocaml/libasmrun.a(startup.o): relocation R_X86_64_32S against symbol `caml_data_segments' can not be used when making a shared object; recompile with -fPIC
        /usr/bin/ld: /usr/lib64/ocaml/libasmrun.a(fail.o): relocation R_X86_64_32 against symbol `caml_exn_Failure' can not be used when making a shared object; recompile with -fPIC
        /usr/bin/ld: /usr/lib64/ocaml/libasmrun.a(roots.o): relocation R_X86_64_32 against symbol `caml_frametable' can not be used when making a shared object; recompile with -fPIC
    
    This commit use a configure-time test to find the best OCaml runtime.

commit c301da995008b6b9c0e11ff4884a231d2b8be4e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 14 19:52:49 2017 +0000

    builder: Add Fedora 27 templates for aarch64, armv7l, i686, ppc64, ppc64le.

commit 04c6e29581aa4d18f0a7e6098c1b31e90b5e0842
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 14 14:51:53 2017 +0000

    builder: Fedora 27 (x86_64) image.
    
    Note this uses GPT, see commit a06e50e263d96e6759d6b8052f89bc06a99056ae.

commit 58a70d63bb327aae6861925ab2ff07ac9a644e8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 17 21:56:51 2017 +0100

    builder: template: Save the final virt-install command to a file.
    
    For documentation purposes only.

commit ef753f393eb02c2ec86dbaafb126840498e88783
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 18 11:15:37 2017 +0100

    builder: templates: Rebuild Fedora 26 ppc64 & ppc64le templates with GPT.

commit f5f6d4b5fd64bf1ba85f6e59b07497a4bfe97f37
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 17 16:02:50 2017 +0100

    builder: templates: For RHEL, CentOS >= 7 and all Fedora, default to GPT.
    
    The immediate issue is with Fedora/ppc64 and /ppc64le which currently
    use extended partitions, breaking the virt-builder ‘--size’ parameter,
    eg:
    
      $ virt-builder --arch ppc64le fedora-26 --size 20G
      ...
      [  21.6] Resizing (using virt-resize) to expand the disk to 20.0G
      virt-resize: error: /dev/sda5: partition not found in the source disk image
      (this error came from '--expand' option on the command line).  Try running
      this command: virt-filesystems --partitions --long -a /var/tmp/vbf67b8c.img
    
    However more generally MBR is broken and should die.  GPT is supported
    by all modern virtual bootloaders, so just default to it.
    
    Notes:
    
    * This is different from mandating a UEFI bootloader.
    
    * I am not planning to rebuild any existing images except the
      F26 ppc64 & ppc64le ones.

commit f1f05df0dd628a065f13f65f7a9790b1cfb31a1f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 14 09:39:11 2017 +0000

    fuse: Don't use errno if libfuse fuse_mount fails.
    
    libfuse prints errors on stderr and there seems to be no way to change
    that.  It doesn't make any attempt to preserve errno either, so
    printing an error based on errno is wrong.
    
    Thanks: Assaf Gordon.

commit 45b200d1c048b4f06ee107e491e2a20115b40f14
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Fri Oct 27 16:08:20 2017 +0200

    builder: add Index.write_entry function
    
    Add a function to properly write virt-builder source index entries.
    Note that this function is very similar to Index.print_entry that is
    meant for debugging purposes.

commit 61d68221084bca0e204cbc588437080d231aa1b7
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Fri Oct 27 16:08:18 2017 +0200

    builder: add Utils.get_image_infos function
    
    This helper function calls qemu-img info on an image file and
    returns the output as a JSON Yajl tree.
    
    This function will be used in future commits.

commit 652235ac186c4263953e2b7790f63a5031b3d63e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 27 16:08:16 2017 +0200

    builder: add simple OCaml osinfo-db reader
    
    Add a simple OCaml-based implementation of reader of the osinfo-db:
    the only interface is an iterator that invokes an user-supplied
    function with each XML file found.
    
    This implementation behaves like the current C implementation, and
    still supports the old libosinfo db.
    
    [RWMJ: Fixed trailing whitespace]

commit e8ee404175964ec72d448bde45a48c8af1ba6d7d
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Fri Oct 27 16:08:21 2017 +0200

    mllib: add XPath helper xpath_get_nodes
    
    This function will allow more OCaml-ish processing of XPath queries
    with multiple results.

commit 6bf02df5646e494cef9582b69f98e2afffb34c69
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Fri Oct 27 16:08:15 2017 +0200

    Ignore builder/*.out and *.img files
    
    These ignores are covering test-console-ubuntu-12.04 test data.

commit d1ce9b4d80fa2ac68869a7b6ca5d1721a4a6a4f8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 7 12:12:25 2017 +0100

    v2v: expose 'in-place' as machine-readable feature
    
    Even if two years later, expose it for clients, so they can check its
    availability.
    
    Updates commit d0069559a939e47e5f29973ed9a69a13f0b58301.

commit 3fef05a115647ebd5100719a99811d585aef58c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 7 11:32:16 2017 +0000

    v2v: vddk: Further rework documentation.
    
    Thanks for suggestions from Ming Xie.

commit a50843500335ea3c42d17196ef2e666dfc3e3928
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 7 10:07:03 2017 +0000

    v2v: vddk: Update minimum version of nbdkit to 1.1.16.
    
    While 1.1.14 will technically still work, 1.1.16 adds the
    ‘selinux=yes|no’ flag to ‘--dump-config’ output.  It's also the more
    widely available and tested version at the time of writing.
    
    Thanks: Ming Xie.

commit dbbb919565a9619358062bf56117c59a5fd356e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 7 10:03:54 2017 +0000

    podwrapper: nbdkit-* man pages are libguestfs man pages.
    
    Don't use the external link for these.
    
    Thanks: Ming Xie.

commit 87bf09e32ec32d1123b09808940ca88eca904da5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 6 15:31:01 2017 +0100

    v2v: rework free space check in guest mountpoints
    
    - move the space needed by mountpoint mapping to an own function,
      outside of the checking loop
    - remove the minimum limit of 100M on partitions, since existing
      partitions that we check (e.g. /boot) may be smaller than that
    - in case /boot is not on a separate mountpoint, enforce the space check
      on the root mountpoint instead, since it is where /boot is in that
      case

commit 5c4383ee0d21ea46eb4de869c161d5a3f4fd506c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 3 17:10:02 2017 +0100

    diff: avoid potential null pointer dereference on error
    
    If visit_guest() fails, then it returns a null pointer; later on,
    free_tree() is called unconditionally on the variables, thus
    dereferencing null pointers.
    
    As a solution, make free_tree() behave like free(), i.e. become no-op
    with null pointers.

commit e87dafb6ac37499c50387a7ec1a66b0a8ed8c8db
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 3 16:38:29 2017 +0100

    daemon: btrfs: fix bad handling of a couple of errors
    
    Remove two wrong error handling situations in btrfs_balance_status:
    - if the calloc for 'ret' fails, the 'goto error' would try to
      dereference the resulting null pointer (to free the items of the
      return struct); hence, just return null directly, instead of jumping
      to 'error'
    - if the strdup() for 'btrfsbalance_status' fails, then the directly
      return would leak 'ret'

commit 3e300fe2c9914de28e20c6e9845efcd6c14b349e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 3 16:33:09 2017 +0100

    daemon: btrfs: remove dead check
    
    In btrfs_subvolume_show, an extra check on 'key' is used in a place
    where this variable is already checked to be non-null.

commit 932811f58bb8ae2c648ae1eae3d5e6da48b21578
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 3 16:29:28 2017 +0100

    daemon: ldm: avoid manual free()
    
    When the LDM code was converted to the CLEANUP_* macros, a free()
    invocation for a CLEANUP_FREE variable was left in the
    ldmtool_diskgroup_volumes implementation, causing double-free on
    success.
    
    Updates commit 950951c67de61da27dceca8ffb2079031c13e43b.

commit 71b3cda90d1b1d2ce98e4e48fc4243358b1b69d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 19 12:05:43 2017 +0100

    v2v: Fix RPM file owned test (RHBZ#1503958).
    
    Linux.file_owner is not used by any other function, so remove it.
    
    Linux.is_file_owned is only used when removing kmod-xenpv on old RHEL
    releases, and so is only required to work for RPM.
    
    The old file_owner/is_file_owned functions were completely broken for
    the RPM case.  This replaces them with a simpler, working
    implementation of is_file_owned only.
    
    Thanks: Ming Xie for finding and reporting the original bug.

commit dff6b6f8a1028cfc3c35a592b4035ff17921dcf7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 2 13:00:20 2017 +0000

    v2v: Handle SATA controller (RHBZ#1508874).
    
    This also makes a fix to a related code comment.

commit f25a79d3ff8f2c852b641aed3dda5585be3fa8ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 2 12:52:59 2017 +0000

    v2v: Add new Source_SATA for SATA disks.
    
    Some hypervisors including KVM and VMware expose SATA as a separate
    device emulation from IDE.  SATA devices are an evolution of IDE, but
    in Linux they are handled like SCSI disks.
    
    This change adds a new Source_SATA type to model this.  In the Linux
    conversion module we treat them like SCSI (ie. with "sd" prefix).
    
    It's not very clear how to handle them for target bus assignment, so I
    arbitrarily mapped them to the SCSI bus.  It's possible we need a new
    bus type to handle SATA properly.  As the code only applies to
    removable devices it's not very important to get this right.

commit e277a715846e109bcd27f8a78095a5486ae8e480
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 2 12:50:06 2017 +0000

    v2v: Refactor some string_of_* functions.
    
    Updates commit 94c83c016516bba9dae0b8c01c9fea9e7159a8b6.

commit d09359a5ce6ed8ad483af7aac8bfabc62b22942c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Nov 2 11:13:42 2017 +0100

    v2v: -i ova: parse MAC address from <rasd:Address> (RHBZ#1506572)
    
    Read the MAC address of the network interfaces from the <rasd:Address>
    tag of the OVF.  This seems to be one of the possible ways used in OVFs.

commit c95cee10eb9602175e70d6547cab6b549b57d2fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 1 21:31:33 2017 +0000

    v2v: docs: SSL/TLS certificate problems with vCenter.
    
    Thanks: Brett Thurber for diagnosis and testing.

commit 77b991aa2c17d82dacf19e35225da63b3fe58aa6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 26 16:09:45 2017 +0200

    builder: ignore spaces after repo identifiers (RHBZ#1506511)

commit 1cd2775b7388e8e2344ba28c1b99f8a59da1418d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 23 17:44:23 2017 +0200

    rescue: initialize CLEANUP pointer variable
    
    This way it will not try to free uninitialized memory when going out of
    scope, and the inspector mode is not enabled.
    
    Fixes commit 3637c42f4e521eb647d7dfae7f48eb1689d0af54.

commit f52f9b4771c6d5c11feb7505e2c25ea5bec240e4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 23 17:42:03 2017 +0200

    rescue: fix size check
    
    Compare it to the right variable, not to the pointer itself.
    
    Fixes commit 3637c42f4e521eb647d7dfae7f48eb1689d0af54.

commit 5238560e305ea9ad07705d323397b8a9b5b6ed29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 18 18:07:19 2017 +0100

    python: tests: Allow some tests to be skipped.
    
    Currently test820RHBZ912499.py fails with libvirt because libvirt
    still doesn't work around qemu locking properly.  Allow this test to
    be skipped on a temporary basis using SKIP_TEST820RHBZ912499_PY=1

commit 0706da5d8fc6ad1f7e5cb3c0e14cc47c550cd497
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 18 14:53:43 2017 +0100

    tests: disks: Enhance the test output by naming the test failures.
    
    Makes it easier to find which test is failing.

commit f6004bebf794163a2ede31ac695ae36525d89af4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 18 14:52:03 2017 +0100

    tests: disks: Small adjustment for new libvirt iscsi qemu parameter.
    
    Latest libvirt (3.8, I think) made a very small adjustment to the
    format of the generated -drive parameter when using iscsi, from:
    
      file=iscsi://1.2.3.4:1234/iqn.2003-01.org.linux-iscsi.fedora,
    
    to:
    
      file=iscsi://1.2.3.4:1234/iqn.2003-01.org.linux-iscsi.fedora/0,
    
    This makes a corresponding change to the test so that both patterns
    can be recognized.

commit 96ec6a5002471c124861e03e07a1d59780a184c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 18 12:49:31 2017 +0100

    maintainer: Update to latest gnulib.

commit 0df576575794372a03c22c16fe8747a28ddda1f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 17 21:56:01 2017 +0100

    builder: template: Quote parameters when printing.
    
    This is for documentation only so the quoting doesn't actually matter,
    but it's better for the user to understand what is really being run.

commit fb2410dcab397502ba7fcfd7476f0635a97b6f87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 17 21:51:20 2017 +0100

    builder: template: Factor out function for printing virt-install command.
    
    Pure refactoring, no change.

commit 6e24e0a729528a518867b8ceb2fe77ebfa92f703
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 11 16:17:21 2017 +0100

    p2v: Enable miniexpect debugging.

commit 85f74101039d4a50dfd5effce9c794a7509e80f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 17 23:59:31 2017 +0100

    Version 1.37.31.

commit afdd5459f942db520ef3efba0e7c7666e03bc72f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 17 23:29:50 2017 +0100

    tests: Fix regression test to work with new debug messages from guestfsd.
    
    Commit 0b631d739b9e8f87c33e866811a2491bf2b354d4 changed the debug
    message format from the main loop in guestfsd.  This test tried to
    filter out these messages when comparing output, but that stopped
    working.  The problem was only evident when enabling debugging while
    running the tests.

commit 6394ce88b2a0b9d00dbd13c3178bb150e3eeebe9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Oct 17 14:13:19 2017 +0200

    v2v: -i libvirt: use precheck also for xen+ssh sources
    
    Updates commit f87f254b2bcda09713d908451f29512ec4286626.

commit b69ab3f778ea210e855fdcf3b67e139e67356f62
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Oct 17 12:33:32 2017 +0200

    daemon: simplify usage of Chroot.f
    
    Rely on currying, and avoid extra helper functions.
    
    No behaviour changes.

commit cb283429c4dff48e6fb36d532f886627625c5c90
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 17 11:23:12 2017 +0100

    v2v: In input and output classes move checks to new precheck () method.
    
    Previously we were abusing the ‘input#source ()’ and
    ‘output#prepare_targets’ methods to perform environmental checks.
    
    Small refactoring, no functional change.

commit 9c5265c8fe227da7a5a25bab7e2af74d50746ca0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 17 11:18:39 2017 +0100

    v2v: Minor correction to a debugging message.

commit 26212de982ca7a51eed730aee2627bfd5bd1241a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 17 10:56:14 2017 +0100

    v2v: vddk: Force source format to raw.
    
    Thanks: Ming Xie.

commit 6d5349aa3ecc473d54268296dc73cdf85cadde27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 17 10:43:30 2017 +0100

    v2v: vddk: Check if nbdkit supports --selinux-label before using.
    
    Give a better error message if not.
    
    Thanks: Ming Xie.

commit 035db7a30c28669a3e8e6dddf74b5f5319c14f83
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 16 20:59:53 2017 +0100

    Version 1.37.30.

commit 3e12067d3cbb894fb1c243eb62d0ed8437e2d9d8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 16 20:58:33 2017 +0100

    v2v: vmx: Add test files to EXTRA_DIST.
    
    Fixes commit 6c54b68acb707d8f3dcd80453c23f57c54989be9.

commit 2fb86dc8e920fde1b65f19d09ca352e754e3f45b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 16 16:11:36 2017 +0200

    daemon: use parse_key_value_strings
    
    Make use of parse_key_value_strings to slightly simplify the parsing of
    mdadm output, and the parsing of os-release, and lsb-release files.
    In particular, the parsing of lsb-release is simplified a lot, bringing
    it much like the parsing of os-release.

commit 3d0c0f25ec0ed9252e1583e5800853e8c387d5e1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 16 16:02:01 2017 +0200

    daemon: add split_key_value_strings helper
    
    Add a simple helper to turn a list of strings into key/value pairs,
    splitting by '=', with the possibility to apply a function to unquote
    values.
    
    Add also a simple unquote function.

commit 659445a26e02559dff77f8b638a353d6d9f8bf98
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 13 17:14:07 2017 +0100

    v2v: vCenter: Handle disks with snapshots (RHBZ#1172425).
    
    This implements a missing feature from old virt-v2v, namely being able
    to cope with a guest with snapshots.  Note this only converts the top
    (latest) snapshot.  As in old virt-v2v it does NOT convert the whole
    chain of snapshots.

commit 68116442609ff640fe5b5f71d135674251d3aa23
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 13 17:08:23 2017 +0100

    v2v: vCenter: Factor out get_https_url code.
    
    Pure refactoring.

commit dcc556ab6c9b8a5db58cc73e6bb5637d83cbf0b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 13 17:01:04 2017 +0100

    v2v: vCenter: Split up get_session_cookie function.
    
    This is a small refactoring where we split get_session_cookie into a
    function to fetch the URL and a function to parse the cookie.

commit 197f500337c039c5bff8e9aa7d482e6833d096a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 13 16:30:16 2017 +0100

    v2v: vCenter: Refactor the API to this module.
    
    This module had a selection of functions taking a different mix of
    parameters and doing slightly different things.  You could call one
    function to return an https://... URL, or another function to return a
    qemu URL, and there was a third function to get the session cookie but
    you generally had to call that anyway (and it was implicitly called
    when making the qemu URL!)
    
    Integrate these into a single function which returns a struct
    returning all possible values.
    
    This is conceptually refactoring, except that the session cookie is no
    longer memoized, but we didn't use this feature (of calling
    get_session_cookie multiple times) anyway.

commit 84ef182836407676b26ea4e71066507c474bf72b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 13 15:45:39 2017 +0100

    v2v: Remove --dcpath parameter and related functionality.
    
    With modern libvirt, when fetching the XML of a VMware guest libvirt
    passes us the datacenter path (dcpath).  However with older libvirt we
    had to guess this value, or else the user had to supply it on the
    command line.
    
    This commit removes all the guessing code and the --dcpath parameter
    (which will now give an error).
    
    This requires libvirt >= 1.2.20 for virt-v2v, released Oct 2015.

commit 7a2b07938fb69ddd4539554ed157069985fb6e4f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 16 14:32:28 2017 +0100

    v2v: vddk: Print passthrough options.
    
    Changes the output to look like:
    
    [   0.0] Opening the source -i libvirt -ic vpx://... guestname --vddk ... --vddk-thumbprint ...

commit fefa1680ad41f97bf3e61ea92fc421d420062486
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 16 16:38:18 2017 +0200

    daemon: inspection: discard os-release w/o version
    
    In case os-release does not contain VERSION_ID, and it is not an
    exception (like Void Linux), then discard the results got from
    os-release.
    
    This matches what the old C code did -- e.g. see
    commit 32d19e3289bc259901f77398703f16cf6eabd510, and the changes in
    commit 0251c0fcaa4fbb3b42968792996748136700c8d8.

commit c4ccac7a28dade85d495e7ead8eb0eba619047a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 16 10:06:54 2017 +0100

    v2v: vddk: Make it clearer that you should not run nbdkit 'make install'.

commit 9e0860374819cfce8b1ff5aec7ff37a83f993a2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 13 21:29:49 2017 +0100

    daemon: blkid: Use Option.default.
    
    Plain refactoring.

commit 138a51917d9a75d0a376dad5d9d332043ba9cfa4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 11 13:33:12 2017 +0100

    v2v: -i vmx: Add a test case which lacks scsi0:0.deviceType = "scsi-hardDisk"
    
    VMX file from:
    https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/
    
    Thanks: Tom Sorensen

commit df84cfe43f7c2d93e92f60b36ff490663f231718
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 11 13:43:26 2017 +0100

    v2v: -i vmx: Allow deviceType field to be completely omitted.
    
    Microsoft make some VMX files available here which we could not parse.
    These files lack the expected ‘scsi0:0.deviceType’ field:
    https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/
    
    According to
    http://faq.sanbarrow.com/index.php?action=artikel&cat=7&id=54&artlang=en
    this is permitted.  Also several other deviceType values may be found.
    
    Allow such VMX to be parsed.
    
    Thanks: Tom Sorensen

commit deb0bd576c931874f685674580c39990abefae11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 8 19:13:41 2017 +0100

    common/mltools: xpath_helpers: Get rid of xpath_*_default functions.
    
    Instead of using ‘xpath_(string|int|int64)_default’ we can write the
    equivalent code using ‘Option.default’.  This is not quite so concise,
    but may be easier to understand.
    
    eg:
      xpath_int_default xctx "xpath_expr" 10
    ->
      Option.default 10 (xpath_int xctx "xpath_expr")

commit b1932ee438cd341cf8fc3dd7da2434066fdffbe9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 8 17:45:57 2017 +0100

    common/mlstdutils: Introduce Option submodule.
    
    Inspired by ocaml-extlib, introduce a module for handling option
    types.
    
    We already had the ‘may’ function (which becomes ‘Option.may’).  This
    adds also ‘Option.map’ (unused), and ‘Option.default’ functions.
    
    Note this does *not* introduce the unsafe ‘Option.get’ function from
    extlib.

commit 44ca65ed5afbf9f9d04ac046667b1d57e65ec815
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 12 15:28:29 2017 +0100

    daemon: proto: Make the guestfsd main loop messages consistent and useful.
    
    After this change the debugging output looks like this:
    
      guestfsd: <= mount (0x1) request length 64 bytes
      commandrvf: stdout=n stderr=y flags=0x0
      commandrvf: udevadm --debug settle -E /dev/sda1
      calling: settle
      command: mount '/dev/sda1' '/sysroot//'
      [    1.152813] EXT4-fs (sda1): mounting ext2 file system using the ext4 subsystem
      [    1.154815] EXT4-fs (sda1): mounted filesystem without journal. Opts: (null)
      guestfsd: => mount (0x1) took 0.01 secs
      guestfsd: <= touch (0x3) request length 52 bytes
      guestfsd: => touch (0x3) took 0.00 secs
    
    Thanks: Pino Toscano

commit 3d4e2284d687338eab4e5f81fb5b3a5ec57e69e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 11 16:14:00 2017 +0100

    common/miniexpect: Synchronize to latest miniexpect.
    
    Updated to miniexpect commit eba90008396f05e2c0fa752421793b797383fca7.

commit 9ed53f75638340632877a161a5fb6bf3ced78090
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 12 10:24:53 2017 +0100

    daemon: inspection: Add support for NeoKylin (RHBZ#1476081).
    
    Thanks: Qingzheng Zhang

commit 93143781b0fa8231f79679230ff2e28020d0cfb4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 12 10:34:46 2017 +0100

    daemon: inspection: Sort cases in check_package_* functions.
    
    No change, just sorts the cases into alphabetical order for easier
    modification.
    
    Tidies up commit 394d11be49121884295e61964ed47f5a8488c252.

commit 2855cd463d7afdd2a900af636790639dfd2fb5e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 12 10:31:08 2017 +0100

    daemon: Enable warn-error in OCaml code.
    
    This was accidentally disabled because I used the wrong
    variable name.
    
    Fixes commit d5b6f1df5ff2d387a5dfc89b8316c0dff67ce2c9.

commit e91144a7e5599ad199309de02c4a35ae905891dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 11 12:09:48 2017 +0100

    customize: In verbose mode, run dnf --verbose.
    
    We should do the same for other package managers.  However apt-get
    doesn't have a clear verbose mode (omitting -q doesn't do what we
    want).

commit 2be5697b36f938dd4308a8aa0bb89bc84c1c9e46
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 11 12:44:52 2017 +0100

    appliance: Print /etc/resolv.conf in debugging output.

commit c03446aeea486e75190c6784372cff7feb8c5a6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 11 17:55:58 2017 +0100

    appliance: Create /dev/shm (RHBZ#1500537).
    
    This is required by ansible and probably other applications.
    
    Thanks: Nicolas Hicher

commit 006f506ac75029c4d8f04c3a0377800606db8938
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 9 18:53:35 2017 +0200

    common/mlutils: fix f_type comparisons
    
    statfs::f_type is usually a signed type, so cast it to unsigned to check
    its value against magic values of filesystems.
    
    Fixes commit a6a982f004ac0e861d1889219163ec5e6d7c8924.

commit 0cfda3b19e602e52c32814c8774dd92c7d31111a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 11 15:07:33 2017 +0100

    p2v: Test for sudo requiring a password first (RHBZ#1500673).
    
    When testing if sudo -n requires a password, we tested for the prompt
    earlier than testing for the magic sudo message ‘a password is
    required’.
    
    Since the shell will print the prompt just after the sudo message:
    
      prompt$ sudo -n virt-v2v --version
      sudo: a password is required
      prompt$
    
    the prompt nearly always matched and we missed the magic sudo message.
    (The exception is in the case where we are running everything on
    localhost where the sudo message could be read in a single call to
    read(2) without seeing the prompt immediately afterwards.  Even this
    exception was non-deterministic.)
    
    By swapping the priority of the sudo message and prompt we avoid this.
    
    Looking at the debug output (enabled by editing common/miniexpect)
    makes this clearer:
    
      DEBUG: writing: sudo -n virt-v2v --version
      DEBUG: buffer content: sudo: a password is required
      ESC]0;rjones@hamr:~^G###bphcxtq5###
    
    Fixes commit 5b6a8e086264c85fb048c0eadff6c34351663133.
    
    Thanks: Ming Xie.

commit e3a0bacca48d3bbd1d4ee5ac2b1eaf932e37c3f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 10 12:13:00 2017 +0100

    docs: building: OCaml >= 4.01 is required (not 4.02).
    
    Fix incorrect version number in the manual.
    
    Fixes commit 2cdd2eb7959cb07b5a9d09957c9b233ff82447ee.

commit b7d3011964b56d4dd3bf27150a745705d54fd613
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 9 22:02:41 2017 +0100

    v2v: linux_bootloaders: Small code formatting and comment changes.
    
    No functional change.

commit 1c407a004331dd925cd4d729b16d4e0d72faa0fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 9 21:51:26 2017 +0100

    v2v: Inline call to Linux.augeas_init.
    
    Two-line function, only called from one place, so inline it where it
    is used.

commit 5f3119e9e02f2f3f93e7273453190ac933a485f2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 9 17:59:46 2017 +0200

    common/mlaugeas: Synchronize with latest ocaml-augeas
    
    Synchronized up to commit fd480bd2086c498484e735b060a1c3e80491f02d.

commit c6fe43c98b234be132446870b75043f26f808ca4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 9 17:56:55 2017 +0200

    build: build mlaugeas with -Wno-unused-macros
    
    The upstream ocaml-augeas defines macros which may not be used in all
    the cases, triggering a warning (which turns into error with -Werror)
    because of -Wunused-macros.
    
    Since the code is correct, disable -Wunused-macros with
    -Wno-unused-macros before updating the embedded copy of ocaml-augeas.

commit e73f66f6597794c0c648a23b687b861c1a4ee5aa
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 9 14:29:56 2017 +0200

    build: build mlaugeas with -Wno-shift-negative-value
    
    The embedded copy of ocaml-augeas does Val_int(-1), which in turns
    triggers warnings in newer GCC versions about "left shift of negative
    value".  The issue actually lies in the OCaml headers (mlvalues.h in
    particular), and it was fixed in newer OCaml versions.
    
    Since the code is actually correct, disable -Wshift-negative-value with
    -Wno-shift-negative-value (checking whether the compiler has it).

commit 77c5619a765af34975cf159839d3c7170a9ff291
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 9 10:41:21 2017 +0200

    Fully initialize the custom_operations structs
    
    Use also custom_compare_ext_default for the compare_ext field.
    
    According to the git logs, this was introduced in OCaml 3.12.1, which is
    earlier than out minimum required version.
    
    mlaugeas is not touched by this change, since it is a copy of a 3rd
    party library (and thus it will be fixed there first).

commit ddacbe734906c0e8aa5401e3bb35f56d6fb66462
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Thu Oct 5 16:58:26 2017 +0200

    builder: rename docs test script
    
    Rename test-virt-builder-docs.sh into test-docs.sh to include test
    for another tool's documentation.

commit 68e96414cb8eb0d03f9b387300eea125a2d8b6ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 7 17:13:10 2017 +0100

    Version 1.37.29.

commit 2ffb68da7abc23fd21847a6eea3da8be40748c3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 5 17:29:01 2017 +0100

    builder: Add FreeBSD 11.1 template.

commit ec2f9c1b11f3c7bfa6a1bd33ebef3d03cc1540aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 5 15:43:43 2017 +0100

    builder: template: Add minimal support for creating FreeBSD templates.
    
    These cannot be automated yet.

commit 79a57809c5d04ab3c133df14f86f5a3194a3211e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 5 15:38:01 2017 +0100

    builder: make-template: Don't need --os-type=linux.
    
    The --os-type option is obsolete.  All the information is conveyed in
    the --os-variant option.

commit 72d8d33078691cb6f167382222aaba39603a4971
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 5 15:37:22 2017 +0100

    builder: make-template: Use the virt-install --transient option.
    
    Ensures that we don't need to clean up the libvirt domain.

commit aa1d0050abdaeb135df52a91d7d13adb72816159
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 6 12:58:14 2017 +0100

    m4: Rename guestfs_*.m4 to guestfs-*.m4.
    
    For consistency with other code.

commit ff5bacce179947e94e0880fcd4b29b0880fb10eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 5 14:39:35 2017 +0100

    lib/inspect-icon.c: Return error if guestfs_int_cmd_run has internal error.
    
    This function returns -1 if things like fork(2) fail, so it is right
    to return an error here.  If the PBMTEXT command fails then that's a
    NOT_FOUND case.

commit 4dc2531aba0a556379f38d40c704f6781c2fb392
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 5 10:29:32 2017 +0100

    daemon: Use O_CLOEXEC instead of Unix.set_close_on_exec.
    
    In fact we already used O_CLOEXEC in daemon/inspect_fs_windows.c,
    meaning that the code wouldn't have compiled on OCaml 3.11.
    
    Thanks: Pino Toscano

commit 9c9004dd64c69da7c094cc8c5b446af95558eb29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 5 10:07:11 2017 +0100

    common/mlstdutils: Drop our implementations of functions now in OCaml 4.01.
    
    We reimplemented some functions which can now be found in the OCaml
    stdlib since 4.01 (or earlier).  The functions I have dropped are:
    
     - String.map
     - |>
     - iteri  (replaced by List.iteri)
     - mapi   (replaced by List.mapi)
    
    Note that our definition of iteri was slightly wrong: the type of the
    function parameter was too wide, allowing (int -> 'a -> 'b) instead of
    (int -> 'a -> unit).
    
    I also added this new function to the Std_utils.String module as an
    export from stdlib String:
    
     - String.iteri
    
    Thanks: Pino Toscano

commit c8209c21099fadabe253901b1985b9f151f52d96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 3 22:51:26 2017 +0100

    ocaml: Enable warn-error on warning 52.
    
    Since the previous commits have fixed all instances of this warning,
    it should now be safe to enable warn-error on it.

commit 5c348d4b68d36855b2079170799e430f0dc6a047
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 4 11:00:18 2017 +0100

    ocaml: Avoid Warning 52 for Planner.plan function.
    
    Change the Planner.plan function so it returns an optional type.  This
    means it no longer raises Failure "plan" on error, so we can both
    force the caller to deal with the error case and avoid Warning 52.

commit a329f8d86d1fdc2aa9758cb3054fea3190ab80d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 3 22:47:46 2017 +0100

    ocaml: Avoid Warning 52 for Visit.visit function.
    
    Similar to the previous commit, this creates a new Visit.Failure
    exception for the visit function, avoiding Warning 52.

commit 2ae9fda371e17bd960df72510d6cfedae7d1a8e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 3 22:47:46 2017 +0100

    ocaml: Avoid Warning 52 for URI.parse_uri function.
    
    This avoids warning 52 in OCaml code such as:
    
      try URI.parse_uri arg
      with Invalid_argument "URI.parse_uri" -> ...
    
    which prints:
    
      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)
    
    In the long term we need to change fish/uri.c so that we can throw
    proper errors.

commit dbeaa404c407c43a59212ed08180aff174161241
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 3 22:24:03 2017 +0100

    ocaml: Replace Filename.temp_dir_name with get_temp_dir_name.
    
    This was deprecated and replaced in OCaml >= 4.00.

commit 7670f30e8f922ad29a9a31f89e1f33da0e897f7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 3 21:10:06 2017 +0100

    ocaml: Replace pattern matching { field = field } with { field }.
    
    If you have a struct containing ‘field’, eg:
    
      type t = { field : int }
    
    then previously to pattern-match on this type, eg. in function
    parameters, you had to write:
    
      let f { field = field } =
        (* ... use field ... *)
    
    In OCaml >= 3.12 it is possible to abbreviate cases where the field
    being matched and the variable being bound have the same name, so now
    you can just write:
    
      let f { field } =
        (* ... use field ... *)
    
    (Similarly for a field prefixed by a Module name you can use
    ‘{ Module.field }’ instead of ‘{ Module.field = field }’).
    
    This style is widely used inside the OCaml compiler sources, and is
    briefer than the long form, so it makes sense to use it.  Furthermore
    there was one place in virt-dib where we are already using this new
    style, so the old code did not compile on OCaml < 3.12.
    
    See also:
    https://forge.ocamlcore.org/docman/view.php/77/112/leroy-cug2010.pdf

commit 6e937e4a8843f7947d526923ea794218849e7d76
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 3 21:03:01 2017 +0100

    build: Require OCaml >= 4.01.
    
    RHEL 6, Debian <= 7 and Ubuntu < 14.04 are no longer supported
    (unless OCaml and other components are upgraded).
    
    See: https://www.redhat.com/archives/libguestfs/2017-September/msg00203.html

commit b6157847eb0e2d2699d69025e0074b989ae2a12b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 5 11:25:21 2017 +0100

    rhel: Allow compilation with Augeas < 1.8.0 by making aug_source optional.

commit ecde8ca0470e835c7cd8c0e77ae1a1c028bf1a3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 2 14:58:11 2017 +0100

    builder: Choose better weights in the planner.

commit 2da2062a9bc282cb5924253e26695831137d7661
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 2 17:56:51 2017 +0100

    daemon: Reimplement statvfs API in OCaml, drop gnulib fallback.
    
    common/mlutils: Unix_utils.StatVFS.statvfs: This commit implements a
    full-featured binding for the statvfs(3) function.
    
    We then use this to reimplement the daemon statvfs API in OCaml.
    
    Note that the Gnulib fallback is dropped in this commit.  It
    previously referenced non-existent field names in the fs_usage struct
    so it didn't work.  Also it's not necessary as POSIX has supported
    statvfs(3) since 2001, it's supported in *BSD, macOS > 10.4, and there
    is already a Windows fallback.

commit b8745507b18393d099e380133e289113dce4a577
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 3 22:24:52 2017 +0100

    common/mltools: getopt: Use lowercase_ascii instead of deprecated lowercase.

commit 7def8eaa3534f4a501c8eab3497ab035cf4cf18c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 1 10:51:37 2017 +0100

    mltools: planner: Documentation and minor refactoring of types and parameters.
    
    Just documentation and code refactoring, no functional change.

commit 0149820a34edff89e8cb9f27b542d4a97443b82a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 2 19:56:04 2017 +0100

    v2v: Document that Windows 10 is supported/tested.

commit f3e6a6f6ce39135f36e53be392de9992342cd32e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 2 19:52:40 2017 +0100

    v2v: Document that Windows Server 2016 is supported/tested.
    
    Tested by Kun Wei.

commit fc6f1d4e4bcee56182464460f0779f951e889f63
Author: Ken Stailey <kstailey@yahoo.com>
Date:   Sat Sep 30 21:29:22 2017 +0100

    fish: In interactive mode, improve error message for help of unknown command (RHBZ#1497475)

commit cab26a44bd60f6400b4cbb954733239e2ec2416f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 30 22:09:27 2017 +0100

    v2v: types: Rearrange types and headings.
    
    Also moves the mpstat structure & print_mpstat function into the
    v2v.ml file, since that is the only place which uses it.
    
    No functional change.

commit ab4eac601976a546cc9f062bc512c73218f5e503
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 30 10:12:57 2017 +0100

    v2v: -i vmx: Remove redundant parentheses in match cases.

commit 3029cd12bde16246afaa010b9d2dd69b245b1905
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 28 15:28:13 2017 +0100

    Version 1.37.28.

commit c4bf5419005dbad2249d084f719c486696bcb43a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 26 11:47:49 2017 +0100

    common/mltools: Rename Common_utils to Tools_utils.
    
    Reflecting the purpose of this module now, which is to act as a place
    for utility functions shared only by the OCaml virt tools.

commit 38429ebf948d5a4c89ec82a82f47856c1154a2ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 26 10:56:20 2017 +0100

    Rename mllib -> common/mltools.
    
    This directory which previously contained random modules and functions
    now has an official purpose: to be the place for any OCaml utility
    needed by the OCaml virt tools.
    
    This is just code movement, I didn't (yet) rename or move any of the
    modules.

commit 68a63365402d067f5a497ea221566ec866811e1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 26 09:44:24 2017 +0100

    po: Add common/ml* directories to POTFILES-ml.
    
    Although it's not too likely that these libraries will contain
    translatable strings, it's consistent to add them to po/POTFILES-ml
    because mllib/*.ml are also in this file.

commit a8a49c895482ab27039f37c8ec06f84c9a7192eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 26 08:55:15 2017 +0100

    common/mlgettext: Move common_gettext.ml{,i} to common/mlgettext.
    
    Mostly just code motion, but common_gettext.mli was the same whether
    or not ocaml-gettext exists, so instead of generating it, add the file
    to git.

commit 5296e37991963e900e3bfdaddc5514d8baafb83a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 25 19:29:31 2017 +0100

    common/utils: Move ‘full_path’ and ‘is_reg’ (etc) into utils (from visit).
    
    I also renamed the functions with the correct ‘guestfs_int_*’
    namespace.
    
    The corresponding change is made for OCaml C_utils and Visit.
    
    No functional change, just code motion.

commit de4152985411bb3c3b8a52e5cb1becd2fc2825a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 25 13:09:03 2017 +0100

    customize: Unconditionally set the machine-id if not set already.
    
    systemd defined an /etc/machine-id file which is supposed to contain a
    unique, unchanging ID for the host.  This file is initially zero-sized
    and is meant to be set by systemd on the first boot of the system.  In
    virt-builder Fedora templates, the file is empty.
    
    Unfortunately the Fedora kernel %post script requires the machine-id
    to have been set, else the script exits with an error:
    
      Running scriptlet: kernel-core-4.12.13-300.fc26.x86_64        209/209
      Could not determine your machine ID from /etc/machine-id.
      Please run 'systemd-machine-id-setup' as root. See man:machine-id(5)
      warning: %posttrans(kernel-core-4.12.13-300.fc26.x86_64) scriptlet failed, exit status 1
    
    This also leaves the kernel package half-installed.  The files are
    present in the filesystem, but important initialization is not done,
    in particular the vmlinuz file is not copied into /boot.
    
    A simple reproducer for this problem is:
    
      $ virt-builder fedora-26 --update
    
    which will leave the image with a half-installed kernel.  (Add -v -x
    to see the error above amongst the debug output).
    
    This change makes virt-customize set /etc/machine-id to a random value
    if the file exists and is zero sized.  This is done unconditionally at
    the same time as setting the random seed (a similar issue), and before
    running any customize options such as installing or updating packages.

commit 2f3715bdf20c15f49ad9ce903a110569c910144a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 20:50:55 2017 +0100

    v2v: utils: Replace Str.bounded_split with PCRE.nsplit.
    
    Updates commit 8f91d3a9b0356a701c1904e0a2efa5d272d08ac2 similar to
    Tomáš's original intended code.

commit b71ea2c2ef99f6aa5250ba0692cd0a9022aa9e76
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 18:41:22 2017 +0100

    generator: Replace use of Str.split with String.nsplit.
    
    Faster and equivalent.

commit 5f40a4f79711823ba80b9884912153b8341f5fcc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 14:46:09 2017 +0100

    v2v: parse VMX: Replace Str with PCRE.

commit 7cbed7ed68e1fde246e27f2043cf8ba5770d2d66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 14:46:09 2017 +0100

    v2v: parse OVF: Replace Str with PCRE.

commit 0a69d330f51a01e269d94583552ced66775ea33e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 14:46:09 2017 +0100

    v2v: vCenter: Replace Str with PCRE.

commit 72b5ac18742b5df4139a3bb5b6523baaa4395f6a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 14:46:09 2017 +0100

    v2v: -o libvirt: Use PCRE to verify arch is sane.

commit 8397d7239e2b1bb3c5db5ccbdd08972a468baa6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 13:06:57 2017 +0100

    v2v: -i ova: Use PCRE to match lines in manifest files.

commit 916c5436887b47f59c89c28a2d5f0a8666b7449f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 13:01:10 2017 +0100

    v2v: windows: Convert the Windows-related conversion modules from Str to PCRE.
    
    This is all new code since the virt-v2v conversion from Perl so there
    was no need to check back with the original code.
    
    See also commit 9d920732a35d9ef1b6a33509dabbbd44123e7eda.

commit 6475a0dfc56fdd7dd7fb6be35ea2475ec25a8048
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 12:30:34 2017 +0100

    v2v: linux: Convert the Linux-related conversion modules from Str to PCRE.
    
    For each regular expression I went back to the original Perl code to
    ensure that the regexp is correct.

commit 189c8459daff6e53e1730a939db014991751a82c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 13:32:09 2017 +0100

    v2v: linux: Properly ignore rpm/dpkg-move-aside kernels.
    
    The old virt-v2v code ignored boot kernels with names like
    "/boot/vmlinuz-*.rpmsave".  The transscribed code did not because the
    Str module requires ‘|’ to be escaped as ‘\|’.
    
    This changes the code to use a simpler test.
    
    Thanks: Pino Toscano

commit 0201a6bba4631854d1c6322add3c473f2ae45c13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 12:21:28 2017 +0100

    v2v: linux: Fix rewriting of grub2 GRUB_CMDLINE=...resume=<device>...
    
    Commit dbe0b69f24421f258da2fb420b58fc1530a9cd03 transscribed the Perl
    regexp incorrectly so that it only matched the impossible case of
    ‘resume=/dev/X’ for a single non-whitespace character X.
    
    This fixes the regular expression, referencing back to the original
    Perl code in virt-v2v.

commit a1225a022befc36b23b8de96ddf14d707929fbfa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 11:55:53 2017 +0100

    v2v: linux: Fix uninstallation of kmod-xenpv from /etc/rc.local script.
    
    In the original conversion of virt-v2v from Perl
    (commit 0131d6f666d93dd353c4e4092fd945861646d319), the Perl regular
    expression was incorrectly transscribed.  ‘\b’ was not converted to
    ‘\\b’ so the new regexp was looking for an ASCII BEL character, not a
    word boundary.  Also ‘|’ was used, but Str requires ‘\|’ (ie. "\\|"
    in the final source).
    
    To fix these problems I converted the code to use PCRE, and went back
    to the original virt-v2v code (virt-v2v.git:
    lib/Sys/VirtConvert/Converter/Linux.pm) to find out what the Perl
    regular expression should have been.
    
    Note I have also removed ‘.*’ at the beginning and end of the regexp
    because PCRE regexps are not anchored.

commit 2f1a1d987e2516f18f7e333c41c504649450b143
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 10:57:56 2017 +0100

    mllib: Convert Common_utils.parse_size and parse_resize to use PCRE.
    
    This also involved enhancing/fixing the test so that parse_size has
    test coverage.

commit 966b23d22994a8035955eaa1fa1e6782b19714bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 20 15:47:56 2017 +0100

    customize: Remove use of Str module from virt-customize code.

commit 5c029d6dd0f14573f88b9e7ba11e9b9deea22987
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 14:44:56 2017 +0100

    builder: Simplify PCRE regular expression by using case-insensitive matching.
    
    Updates commit e5182b87cf0c96933b39045bea3c5a94e29dcd95.

commit 558c7f1f62735fb4bd54e97572c36a3c3e2ad8ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 15:42:21 2017 +0100

    valgrind: Ignore PCRE.compile regexps stored in a global variable.

commit 336a7862c1370b0eba1ba5900ec7c31c5d95d64c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 19:12:06 2017 +0100

    common/mlpcre: Add split and nsplit functions.
    
    These work like our String.split and String.nsplit functions.

commit aef068c77f0ff1862c893fd9fc52895e26631271
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 20:47:38 2017 +0100

    common/mlstdutils: Add String.nsplit ?max parameter, and tests.
    
    This idea was previously proposed by Tomáš Golembiovský in
    https://www.redhat.com/archives/libguestfs/2017-January/msg00138.html

commit ed43cb38a9950c7d8b145b14ecf4f79c808b0e1b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 14:42:08 2017 +0100

    common/mlpcre: Allow some PCRE_* flags to be passed to pcre_compile.
    
    Only five simple flags are allowed so far, and not all of them are
    actually used in any code.  They are:
    
      ~anchored / PCRE_ANCHORED   - implicit ^...$ around regexp
      ~caseless / PCRE_CASELESS   - fold upper and lower case
      ~dotall / PCRE_DOTALL       - ‘.’ matches anything
      ~extended / PCRE_EXTENDED   - extended regular expressions
      ~multiline / PCRE_MULTILINE - ^ and $ match lines within the subject string

commit 16bd964cdca7939d38cfa13602082f23ff3bd591
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 20 15:28:32 2017 +0100

    common/mlpcre: Add PCRE.replace function.
    
    Similar to Perl s/// but lacks backreferences.

commit 1c1a481eab8582d914c0041437f5e7d978ac5f2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 20 14:41:05 2017 +0100

    common/mlpcre: Add PCRE.subi to return indexes instead of the substring.

commit f92ca0313845c44e5a34e8220c642b8febe7b1d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 28 14:02:24 2017 +0100

    common/mlpcre: Add const-correctness to guestfs_int_pcre_sub.

commit 9020e700cda9a0fb87aae7e04b46be5d010cdb38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 20 14:37:51 2017 +0100

    common/mlpcre: Raise Invalid_argument if PCRE.sub n parameter is negative.

commit d3f70eab84e2b2ffe20f23a8961263c5ea65e7c6
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Sep 26 17:53:32 2017 +0200

    builder: Fix problem about index-parse.h not being generated
    
    If configured with --without-ocaml, the build might fail because the
    fix added in df5bd5741b37da9cf97d7a76ac2805557aa630db was not active.
    According to the automake documentation, it should be enough to set
    BUILT_SOURCES.

commit e7102cfb2d00de636d9718ac9f0847cb7084ca84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 25 19:25:20 2017 +0100

    diff: Remove bogus perror when guestfs_* functions return error.
    
    Neither guestfs_copy_statns nor guestfs_copy_xattr_list set errno, so
    it's wrong to call perror(3) here.

commit 2160405dda0f9475307a382e27a8414ad32dd31d
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Sep 25 21:29:37 2017 +0200

    Fix determining release date for builddir != srcdir

commit f591763dd158d5b4afb0b19b152fb658319c6111
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 24 18:17:47 2017 +0100

    mllib: registry: Make with_hive_readonly, with_hive_write clearer.
    
    Tiny refactoring to make the code clearer.

commit 19a796755e52469fbe6a7894b955f0524b074c8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 24 18:01:56 2017 +0100

    v2v: Refactor convert functions.
    
    This pure refactoring changes the convert () functions so that the
    conversion operations are listed first, followed by the
    implementations of those operations.

commit 45268100f174b0021a34192b966af530145f8931
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 25 14:34:40 2017 +0100

    p2v: test: Send sshd debugging messages to stderr.
    
    So that we can see errors/problems in sshd from the test in the
    ordinary test-suite.log file.

commit 2333a6137a3ed7400e19006d0de868aa08b05f68
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 25 14:29:47 2017 +0200

    build: improve and simplify distro detection
    
    Add a --with-distro=ID argument for configure, so it is possible to
    manually specify the distro to use for the packages (in case os-release
    does not provide ID=.., or the ID is not recognized yet).
    
    In the case when --with-distro is not set, keep doing the autodetection,
    but using os-release only, i.e. dropping the checks for all the other
    -release files -- since there is --with-distro, older distros with no
    os-release can still be used.
    
    RWMJ: Add documentation to guestfs-building(1).

commit 1df62b5ff9d5f427d022afaea1342ff048891bae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 22 09:45:24 2017 +0100

    Version 1.37.27.

commit c6d0bb19d91ec8e2962409af99bdb1d5266a0798
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 22 09:42:39 2017 +0100

    common/mlaugeas: Add readme file to EXTRA_DIST.
    
    Fixes commit 2ffb8a6b25c64e03c8a4a5a514171656f2dcf97e.

commit 8861e311cf7bb83722c0be99d08acc4a88f6be37
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 18 17:37:15 2017 +0100

    build: Add comment to OCaml dependencies .depend files.
    
    Also mark them readonly, since they are generated.

commit d4274970d4e2c4936f83e0d243269677bf8bef39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 18 11:03:32 2017 +0100

    build: Since .mli files are now required, always build .cmi first.
    
    Here is an example of a failure with the previous dependency
    calculation:
    
      $ make -j5
      make: Entering directory '/home/rjones/d/libguestfs/common/mlstdutils'
        OCAMLOPT guestfs_config.cmx
        CC       libmlstdutils_a-dummy.o
        OCAMLOPT libdir.cmx
        OCAMLCMI stringMap.cmi
        OCAMLCMI stringSet.cmi
        OCAMLCMI guestfs_config.cmi
        OCAMLCMI std_utils.cmi
        OCAMLC   guestfs_config.cmo
        OCAMLC   libdir.cmo
        OCAMLC   stringMap.cmo
        OCAMLC   stringSet.cmo
        OCAMLOPT stringMap.cmx
        OCAMLOPT stringSet.cmx
        OCAMLOPT std_utils.cmx
        OCAMLC   std_utils.cmo
      ocamlfind ocamlc -package str,unix -I . -a guestfs_config.cmo libdir.cmo stringMap.cmo stringSet.cmo std_utils.cmo -o mlstdutils.cma
      ocamlfind ocamlopt -package str,unix -I . -a guestfs_config.cmx libdir.cmx stringMap.cmx stringSet.cmx std_utils.cmx -o mlstdutils.cmxa
        AR       libmlstdutils.a
      File "_none_", line 1:
      Error: Files std_utils.cmx and guestfs_config.cmx
             make inconsistent assumptions over interface Guestfs_config
      make: *** [Makefile:2523: mlstdutils.cmxa] Error 2
      make: Leaving directory '/home/rjones/d/libguestfs/common/mlstdutils'
    
    What seems to be happening is that there is a rule:
    
      std_utils.cmx : guestfs_config.cmi guestfs_config.cmx [...]
    
    In this case, make chose to build guestfs_config.cmx and
    guestfs_config.cmi in parallel (see the first 5 rules above).  However
    building guestfs_config.cmx also creates guestfs_config.cmi
    (implicitly - this is not expressed in make dependencies, and make
    doesn't "know" that guestfs_config.cmi has already been created).
    
    Unfortunately the OCaml compiler doesn't create output files
    atomically.  Worse than that, it creates an intermediate version of
    the output file, reads it back and then creates the final version.  It
    seems if the build of std_utils.cmi reads this intermediate version.
    In any case, Std_utils sees the wrong hash of the Guestfs_config
    module.
    
    The above only happens where we have a *.ml file without a
    corresponding *.mli file.  That is because if there is a *.mli file,
    ocamldep generates slightly different dependencies:
    
      guestfs_config.cmx [...] : guestfs_config.cmi guestfs_config.ml
      std_utils.cmx : guestfs_config.cmi guestfs_config.cmx [...]
    
    std_utils.cmx still depends on both files, but there is an extra rule
    which ensures that guestfs_config.cmx isn't built in parallel with
    guestfs_config.cmi.
    
    I tested this change by running this command:
    
      $ while ( rm common/mlstdutils/.depend; make -C common/mlstdutils/ clean && make -C common/mlstdutils/ ) >& /tmp/log; do echo -n .; done
    
    Before the change it would fail after about 100 iterations.  After the
    change it ran for 10000s iterations and did not fail ever.
    
    Updates commit 6d0ad49d5e3415de45a6ccdf1ec6de55e1e8384f.

commit 986c08756e462669e7a3e2108c70b8eeb64d5996
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 18 11:02:02 2017 +0100

    tests: Check that every *.ml file has a corresponding *.mli file.
    
    This is so that we can finally express OCaml dependencies correctly.

commit b92da3b1bf8e85978166e630bf8b35c53686d548
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 18 11:13:36 2017 +0100

    Make sure every *.ml file has a corresponding *.mli file.

commit 5e4477a57f38b13d74e10b536e219fd492c5f2b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 20 17:28:25 2017 +0100

    common/mlstdutils: Remove unused Libdir module.
    
    Last used in commit fd63d896445260ce83f88e58c0219606f97dca9e (in 2013).

commit bcd78acdb4f9f16c31c1d2f65fb52bf3e6807f8f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 18 16:53:58 2017 +0100

    daemon: Remove vestigial daemon/types.ml file.
    
    This file was empty and unused, likely left over from refactorings
    while the daemon inspection code was being written.
    
    Fixes commit d5b6f1df5ff2d387a5dfc89b8316c0dff67ce2c9.

commit d740f7d3fe584e2f581342ea1f4f9fd398e2d4b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 19 12:09:56 2017 +0100

    lib: Use guestfs_int_make_temp_path in a few more places.
    
    There were various places in the library where we open coded making
    temporary filenames.  This uses the utility function instead.

commit e0881ea66273db393ac3d85181f783f6aa52bcb0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 19 11:59:35 2017 +0100

    lib: Fix guestfs_int_download_to_tmp.
    
    Since commit 65cfecb0f5344ec92d3f0d3c2ec0538b6b2726e2,
    ‘guestfs_int_download_to_tmp’ was buggy because it did not deal with
    the case where a guest had multiple roots.  It cached the downloaded
    file under a single name which was not distinguished by which root we
    were looking at.  As a result, if you inspected (eg.) the icon on such
    a guest, then in some circumstances the same icon could be returned
    for all roots (incorrectly).
    
    This changes the function in a few ways:
    
     - Don't cache downloaded files.  It wasn't a useful feature of the
       function in most scenarios.  Instead a new name is generated for
       every call.
    
     - Use guestfs_int_make_temp_path.
    
     - Allow an extension to be specified.

commit e7273c967a35ed83fe8914e0cd0f0873ca91dee4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 19 11:57:58 2017 +0100

    lib: Allow an extension to be specified in guestfs_int_make_temp_path.
    
    In the function ‘guestfs_int_make_temp_path’, allow an optional
    extension to be specified.  For example:
    
      r = guestfs_int_make_temp_path (g, "ls", "txt");
    
    will create paths like ‘<tmpdir>/ls123.txt’.
    
    NULL can also be passed for the extension, which means no extension.

commit cf87c985a82704b4a6126ca08fdfb1c7cbaba7fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 19 11:35:41 2017 +0100

    lib: Move guestfs_int_download_to_tmp and remove inspect.c.
    
    Move the last remaining function ‘guestfs_int_download_to_tmp’ to
    lib/inspect-icon.c (the main, but not only user of this function).
    Then remove lib/inspect.c entirely.
    
    This is not quite code motion because I updated the comment for the
    function to reflect what it does in reality.

commit a4e0d35d0f5eb693e4ccc300e9e76d4c4352e13c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 19 11:25:31 2017 +0100

    lib: Move guestfs_int_parse_unsigned_int to version.c
    
    Just code motion, but this function seems to make more sense in
    version.c since that is the main (but not only) user.

commit 6184592ef0a27a68087c418645ed0b71710f485b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 19 11:17:32 2017 +0100

    lib: Remove unused function guestfs_int_parse_unsigned_int_ignore_trailing.
    
    Not used by any current code, removed.
    
    Last use of the function was seen in
    commit 65cfecb0f5344ec92d3f0d3c2ec0538b6b2726e2.

commit bbd83f87786ee707177ceb3f9c12f62c5f94cf81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 21 11:51:21 2017 +0100

    v2v: linux: Small fixes to documentation.
    
    Also combine the match cases into one statement.
    
    No functional change.

commit e37ac4024db22338e257f9d3db9a4d7abcad7e9d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 21 09:22:29 2017 +0200

    build: remove extra SUFFIXES from Makefile.am in 'po'
    
    Commit c226656519f65c7cd3c7276511196dc6387fe8fe added them to
    common-rules.mk, so they are redundant here.  Also, this assignment
    overwrites the value set in common-rules.mk.

commit 0526e789dccc95f7a59972aa3193e0cbaa85b6e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 19 10:13:16 2017 +0100

    docs: hivex >= 1.3.14 is required (RHBZ#1493048).
    
    Bug reported by Jean-Christophe Manciot.

commit daa8b6971c898b1151b52f7a4617ccef1b65c1ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 18 16:41:44 2017 +0100

    daemon: Fix configure check so it requires hivex.
    
    Commit 4d3601eb4ed1e314a8d4944a09a7f81638396cb6 made it clear that
    ocaml-hivex is required, implying also that hivex is required.
    However the configure test was still optional, and if you built
    libguestfs without hivex you got a very long and confusing error in
    the daemon/ subdirectory.
    
    Thanks: Cédric Bosdonnat

commit af88f23c77d3bdf28d3b4fd7e4c855eba3f4da01
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 20 17:45:08 2017 +0100

    daemon: inspect: Simplify parse_version_from_major_minor.
    
    Thanks: Pino Toscano.
    
    Updates commit cb7696a5d2ba0b7c4ea696f152053ade0d09cf06.

commit 909682710201b95bb03a709fc38f89e6e2b17dbd
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Mon Sep 18 17:53:51 2017 +0200

    builder: remove useless fish dependency

commit 2ebe309cca0959d4163d8fa2658c85b47d0f3001
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 18 16:05:35 2017 +0100

    builder: Add centos-7.4 image.
    
    Requested by Gal Ben Haim.

commit 39a897a658ddd5bb43336af6367a88a38ef6a413
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 16 23:42:46 2017 +0100

    Version 1.37.26.

commit 6490213736cfc64a105c7e5278dd83deb716b943
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 16 23:11:06 2017 +0100

    common/mlaugeas: Synchronize with latest ocaml-augeas.
    
    Thanks: Pino Toscano.

commit a0ec2c0e998b5344c86b2fda4046f44b21428509
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 5 10:17:36 2015 +0100

    threads: Add a test.

commit 6e3cf09bdd0b71a6dbfec6c308b7f59e2153417f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 2 21:55:37 2015 +0100

    threads: Update documentation in guestfs(3) to describe the new behaviour.

commit 9021826c1ffc66b94a94a2b8811a5770b6eb8dd2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 3 18:46:51 2015 +0100

    threads: Use thread-local storage for errors.
    
    We permit the following constructs in libguestfs code:
    
      if (guestfs_some_call (g) == -1) {
        fprintf (stderr, "failed: error is %s\n", guestfs_last_error (g));
      }
    
    and:
    
      guestfs_push_error_handler (g, NULL, NULL);
      guestfs_some_call (g);
      guestfs_pop_error_handler (g);
    
    Neither of these would be safe if we allowed the handle to be used
    from threads concurrently, since the error string or error handler
    could be changed by another thread.
    
    Solve this in approximately the same way that libvirt does: by making
    the error, current error handler, and stack of error handlers use
    thread-local storage (TLS).
    
    The implementation is not entirely straightforward, mainly because
    POSIX doesn't give us useful destructor behaviour, so effectively we
    end up creating our own destructor using a linked list.
    
    Note that you have to set the error handler in each thread separately,
    which is an API change (eg: if you set the error handler in one
    thread, then pass the handle 'g' to another thread, the error handler
    in the second thread appears to have reset itself back to the default
    error handler).  I haven't yet worked out a better way to solve this.

commit 53cb59b4651cdc755e9dd289ab0e9571872c79c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 2 22:21:18 2015 +0100

    threads: Acquire and release the lock around each public guestfs_* API.
    
    Acquire the per-handle lock on entering each public API function.
    
    The lock is released by a cleanup handler, so we only need to use the
    ACQUIRE_LOCK_FOR_CURRENT_SCOPE macro at the top of each function.
    
    Note this means we require __attribute__((cleanup)).  On platforms
    where this is not supported, the code will probably hang whenever a
    libguestfs function is called.
    
    The only definitive list of public APIs is found indirectly in the
    generator (in generator/c.ml : globals).

commit fb4a5fb2022482398af058115b5ae316b354efcf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 2 21:53:18 2015 +0100

    threads: Add a lock (a recursive mutex) to the handle.
    
    Add a g->lock field.  This commit simply initializes and destroys the
    lock on handle creation/free, and does nothing else.

commit 3c0440641e2dd06f629ea2b9652419ddeb3d1d0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 5 16:10:33 2017 +0100

    tests: md: Temporarily disable test which requires device name hints.
    
    These are broken after inspection was rewritten, but we should
    fix them before 1.38 is released.

commit 2ee181bb48fcc600013a44e865fc8a51e8ea3a52
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 17:23:40 2017 +0100

    Remove inspection from the C library and switch to daemon/OCaml implementation.

commit fd36163b3d63108a85f5807f5b06d5a93f436832
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 17:31:00 2017 +0100

    daemon: Implement inspection of Windows.
    
    Mostly a line-for-line translation of the C inspection code.

commit d04c0a543ac4248f0f14797b686ed0a48571db85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 17:31:00 2017 +0100

    daemon: Implement inspection of Linux and other Unix-like operating systems.
    
    This is essentially a line-for-line translation of the C inspection
    code.

commit 5014f66846f5b06b7ad565dc10e84b4a0101d308
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 17:25:42 2017 +0100

    daemon: Implement inspection types and utility functions.
    
    Define the types which will be used to communicate between the
    different parts of the inspection code.  The main types are:
    
      fs        corresponds to ‘struct inspect_fs’ in C code
    
      root      no direct correspondence with the C code, but in the C
                code, ‘inspect_fs’ was overloaded to store roots
    
      inspection_data
                the inspection data which is incrementally collected about
                each filesystem as we perform inspection steps
    
    Other types have simple and obvious correspondences with the
    equivalent C code.
    
    Add some utility function which will be used by inspection.
    
    Note that this commit has no effect on its own, it just links extra
    dead code into the daemon.

commit d50d6498f5ebde7015dfb74e7cb1543abeb46cd9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 17:17:29 2017 +0100

    lib: inspect: Remove ‘fs’ parameter from ‘guestfs_int_download_to_tmp’.
    
    After we move inspection code to the daemon, the library will no
    longer have access to ‘struct inspect_fs’, and so we won't be able to
    prefix downloads with the "root filesystem number".
    
    Just remove this prefix (it's internal only).  However it does mean
    that this function can no longer cache downloaded files.

commit 32b629043a9fe5411fdd40caa604486e15a66bce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 17:07:02 2017 +0100

    generator: daemon: Implement RStringList (RMountable, _) and RHashtable (RPlainString, RMountable, _).
    
    Implement returning these two types from OCaml daemon functions.

commit 357991aa4e6cc971ef7329a7d4bd6f3adf3889a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 17:02:47 2017 +0100

    daemon: Implement umount_all in OCaml.
    
    Unlike previous ‘daemon: Reimplement ...’ patches, this does not
    reimplement the umount_all API completely (yet, but this
    implementation could be completed in future and then replace the C
    one).  However it is necessary to have a version of umount_all which
    we can call from the OCaml inspection code.

commit b04842f7c1a0ba34f4e49c9d0ddc13653b2907cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 9 15:53:23 2017 +0100

    New API: Deprecate hivex_value_utf8 and replace with hivex_value_string.
    
    hivex has a function hivex_value_string.  We were not calling it under
    the mistaken belief that because hivex implements this using iconv,
    the function wouldn't work inside the daemon.  Instead we
    reimplemented the functionality in the library.
    
    This commit deprecates hivex_value_utf8 and removes the library side
    code.  It replaces it with a plain wrapper around hivex_value_string.
    
    Thanks: Pino Toscano

commit 437f58b82f962a5fa2aaaa316efcaacc4bd51634
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 17:01:48 2017 +0100

    daemon: utils: New functions and tests.
    
    These utility functions will be used in the OCaml inspection code.

commit bbbd5bc2d6eb2ab152ab9fc99780567d926f0fd0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 4 09:35:31 2017 +0100

    common: Bundle the ocaml-augeas library for use by the daemon.
    
    This commit bundles the ocaml-augeas library (upstream here:
    http://git.annexia.org/?p=ocaml-augeas.git;a=summary).  It's identical
    to the upstream version and should remain so.
    
    We can work towards using system ocaml-augeas, when it's more widely
    available.

commit 9caca86f9ec9ede07b72c65f1b72e5bee2a9b08a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 16 10:30:33 2017 +0100

    inspection: Deprecate APIs and remove support for inspecting installer CDs.
    
    This just duplicated libosinfo information, and because it was never
    tested it didn't work most of the time.

commit e7e7d7a8fbd879e07e6cb2a18e88f6677eeb13be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 16 22:23:17 2017 +0100

    daemon: chroot: Enhance module documentation.

commit 56c13346cf352594d7a1d499d2c3cb33a21c5fbc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 15 17:48:05 2017 +0200

    lib: qemu: ignore -Wnonnull also for GCC 4.8 and up
    
    Versions older than 6 that have -Wnonnull need the flag too.
    
    Fixes commit e2773e679ffd7551ab994d486b2bf9a7ce685f85.

commit 3e478322d627a29b7652e1203dd5f206fa9d26e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 15 14:37:20 2017 +0100

    Version 1.37.25.

commit e298feb4e28212629b1aefa62aaa1603486f5c28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 15 11:38:33 2017 +0100

    build: Add missing pattern rule to build *.cmi from *.ml.
    
    In the case where we have a module.ml without a corresponding
    module.mli file, ocamldep generates (correct) dependencies:
    
      module.cmx module.cmi : module.ml
    
    but we had no rule telling make how to generate the module.cmi
    file from module.ml.
    
    This didn't matter very much because when make came to build
    module.cmx, the module.cmi file is generated as a side-effect.
    
    However for highly parallel builds, the build ordering was still
    incorrect.  Any other module that depends on module.cmi could be built
    in parallel.  You would very occasionally see errors like this one:
    
      File "_none_", line 1:
      Error: Files index.cmx and utils.cmx
             make inconsistent assumptions over interface Utils
    
    Fixing this involves adding a ‘%.cmi: %.ml’ rule.  However we have to
    be careful that make doesn't run this rule instead of the ‘%.cmi: %.mli’
    rule (if module.mli did exist).  It turns out that GNU make says we
    can depend on rule ordering in the Makefile for this.
    
    I found that this only works correctly if we use "%"-style pattern
    rules (not the ‘.ml.cmi:’ old-style rules).
    
    This is *still* not a complete fix.  Make still doesn't know that the
    rules ‘%.cmo: %.ml’ and ‘%.cmx: %.ml’ also build the .cmi file as a
    side-effect, so you can still occasionally see build failures.
    However I could not work out how to add the extra information to the
    dependencies without causing make itself to go into an infinite loop.
    It may be that in the end we will have to get rid of pattern rules
    completely and generate the complete OCaml rule set.

commit dd1773d3c1eced25645208209b7b3f94ea08d061
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 15 12:05:24 2017 +0100

    get-kernel, resize: Fix dependencies.
    
    Because there are no *.mli in either of these directories, the .depend
    file was not being built (silently).  So dependencies were wrong.
    
    Fixes commit 692195c6ba4bdcf4b73341b2e1f06f4b1844a373.

commit d8352baab9923cdba3ff0b890077533638c6da94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 15 11:57:40 2017 +0100

    ocaml: Remove duplicated OCaml implicit rules.

commit 244a19957a5433552d641847acff6b5e9f632601
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 15 11:13:40 2017 +0100

    build: Move all SUFFIXES up to common-rules.mk.
    
    They need to be available in all subdirectories.

commit f84aaee096f72077450c661151116722a07de6a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 15 10:46:12 2017 +0100

    build: Use ocamldep -all and -one-line flags instead of hacking the output.
    
    We ran some sed scripts over the output of ocamldep to get them into a
    single line format.  This actually broke the output of ocamldep,
    combining multiple dependencies into single lines.  I didn't debug
    exactly why our sed rules were broken because modern ocamldep has an
    option (-one-line) which make this hacking unnecessary.
    
    Another useful option (-all) is added so that all dependencies are
    made explicit.
    
    Since old ocamldep in RHEL 6 doesn't support these options, we have to
    detect them at configure time.
    
    The historical reason we were trying to combine entries into a single
    line was so we could sort them.  That was only needed back when we
    used to commit the dependency files (so the files were stable), but we
    haven't committed dependency files in a long time.

commit bef06a5a42002dc477090136edb825e409b6c7bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 14 19:46:41 2017 +0100

    Version 1.37.24.

commit 045abb08e702646b13dfb2347d77c84860102d47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 14 17:17:15 2017 +0100

    lib: qemu: Also suppress -Wnonnull warning in yajl code.
    
    Required by gcc-7.1.1.
    
    Updates commit 3d2b84231fca14b7e2beeeeab0e852f44dba0c21.

commit fe4672859a21f85af42db16593c7080a3337cab7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 14 18:05:00 2017 +0100

    Version 1.37.23.

commit 96111237a9835613597bb47b99ec1bd5dc1ff5b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 13 10:06:34 2017 +0100

    tests/qemu: Make the isolation tests more read and write heavy.
    
    Do more reading of the backing file data, and more writes to the
    overlay.

commit 5b7a7df1c02b20f19caf038a9320263c35ed3130
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 13 09:57:26 2017 +0100

    tests/qemu: Split qemu snapshot isolation into 3 tests.
    
    It contained 3 tests before.  It's better to run them in parallel.
    
    Just a simple refactoring, no change.

commit c68ce4f5968418e26024f230d243da3b4b919c9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 12 10:48:37 2017 +0100

    launch: direct: Disable qemu locking when opening drives readonly (RHBZ#1417306).

commit 1a13e90ff0be63c9921f96685ccd39a6b46e42c1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 11 17:38:08 2017 +0100

    lib: qemu: Add accessor to test if qemu does mandatory locking.
    
    QEMU >= 2.10 started to do mandatory locking.  This checks the QMP
    schema to see if we are using that version of qemu.  (Note it is
    sometimes disabled in downstream builds, and it was also enabled in
    upstream prereleases with version 2.9.9x, so we cannot just check the
    version number).

commit 3591a650600190ca12b328a18e3cb959110dcc77
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 12 17:56:46 2017 +0100

    lib: qemu: Allow parallel qemu binaries to be used with cache conflicts.
    
    Rename the cache files like ‘qemu.stat’ etc so they include the qemu
    binary "key" (ie. size and mtime) in the name.  This allows a single
    user to use multiple qemu binaries in parallel without conflicts.

commit 1ff17e5fe951c592d175ab3d21199011b3231769
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 11 16:02:46 2017 +0100

    lib: qemu: Run QMP ‘query-qmp-schema’ against the qemu binary.
    
    This adds an extra test using QMP (the QEMU Monitor Protocol).  This
    allows us to get extra information about the qemu binary beyond what
    is available from the version number or ‘qemu -help’.

commit d3e448ef3017532e0745cc78d859e983215bf2e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 11 15:05:09 2017 +0100

    lib: qemu: Factor out common code for reading and writing cache files.
    
    The previous code duplicated a lot of common code for reading and
    writing the cache file per data field.  This change simply factors out
    that common code.  This makes it simpler to add new tests in future.
    
    This is just refactoring, it should have no effect.

commit 1289474daebb9270f672476fd5ba3a095f409bd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 11 12:48:18 2017 +0100

    lib: qemu: Refactor guestfs_int_test_qemu so it doesn't return qemu version.
    
    Rather unnecessarily this function returned the parsed qemu version.
    This complicates further refactoring, so I have changed the function
    not to return this, and instead there is a separate function you have
    to call to get the version struct (‘guestfs_int_qemu_version’).
    
    Apart from a tiny amount of extra copying this is simply refactoring
    of the interface between the direct-mode backend and the qemu query
    functions.

commit 66d5af1f1f78375f40d3a1ace453b18e1b049b9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 11 16:06:38 2017 +0100

    lib: command: Print command before running it with guestfs_int_cmd_pipe_run.
    
    Unlike ordinary guestfs_int_cmd_run, the pipe version did not print
    the command it was about to run when debugging was enabled.
    
    Fixes commit e98bb8692929a037f3452686719504aea31f311d.

commit 739b7d1a11ba10b0c79f22e4019e591b1cbeba5a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 7 09:06:14 2017 +0100

    builder: Fix rhel-7.X Server source baseurl (again).
    
    Updates commit 91c950dfba8fff257c382a0499294001b5bbd0ec.

commit 2449c8815ee66611383b7221688f824fb332f77e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 6 18:16:54 2017 +0100

    builder: Fix rhel-7.X Server source baseurl.
    
    Thanks: Jiri Denemark

commit 657f5090b9a6daf7a8f448155b78ebe6574152c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 4 17:25:41 2017 +0100

    Version 1.37.22.

commit 888db7a7d959529562b9e1f6ba1a93b862b49138
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 30 17:14:03 2017 +0100

    v2v: Implement input from nbdkit vddk plugin (RHBZ#1477912).

commit f63557adc253908492344749cb997fc822b71ff8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 4 14:58:11 2017 +0100

    v2v: In --machine-readable output, advertize vcenter over HTTPS and Xen over SSH.
    
    These have been supported since forever, but it's good to have an
    indication in the ‘virt-v2v --machine-readable’ output that they are
    available:
    
      $ virt-v2v --machine-readable
      virt-v2v
      libguestfs-rewrite
      vcenter-https
      xen-ssh
      colours-option
      vdsm-compat-option
      [etc]
    
    Thanks: Pino Toscano.

commit a9203198a0900da1d8b206c7516f6b6defcc9905
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 1 14:05:38 2017 +0200

    launch: direct: limit kvm-pit.lost_tick_policy to x86
    
    This QEMU property is specific to x86/x86_64, so add it only on these
    architectures.

commit 01e57aa3965129721c1f269a662ea191c8414471
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 30 16:16:16 2017 +0200

    fish: add small documentation bit about format of URIs (RHBZ#1450325)
    
    Mention which format URIs follow, with a small example on escaping
    special characters.

commit d22078a2c55a304264b597ed2a43ddc050433be2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 30 13:05:32 2017 +0200

    v2v: warn when the guest has hostdev devices (RHBZ#1472719)
    
    virt-v2v obviously cannot convert this kind of devices, since they are
    specific to the host of the hypervisor.  Thus, emit a warning about the
    presence of passthrough host devices, so at least this can be noticed
    when converting a guest.

commit 11409306c6911dcd734c271f887fafbc7cb75c24
Author: Florian Klink <flokli@flokli.de>
Date:   Sun Aug 27 01:21:38 2017 +0200

    builder/templates/debian.preseed: enable serial console
    
    RWMJ:
    
     - Rebuilt the images, to fix RHBZ#1484957
    
     - Regenerated the index-fragment files as part of rebuilding the images.

commit 6bf490fee4f9b98d6817eaf8339cea085d5d069c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 18 10:34:16 2017 +0200

    resize: handle empty UUIDs for swap partitions (RHBZ#1482737)
    
    Avoid passing an empty UUID string to mkswap, which mkswap does not
    accept (correctly) as new UUID.
    
    In addition, print a warning when the UUID of a swap partition changed,
    since it may require manual fixups in the guest.

commit 9abe53275bb4aaa76fd14185f8bed850a2515ab9
Author: Florian Klink <flokli@flokli.de>
Date:   Tue Aug 15 00:06:09 2017 +0200

    builder: templates: debian: use single-partition layout
    
    The previously selected 'atomic' recipe resulted in 2GB swap in a 6GB
    volume. Also, we don't really need the boot partition, so just create a
    partition using the whole disk space.

commit df13a5325bfdb5aa06f34575567c6ed89f8ddec6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 12 22:42:18 2017 +0100

    configure: Further split blocks of text in the script output.
    
    Commit 0a94cae15bae7cecb725e78e485708694d347612 added useful
    headings to parts of the configure script.  This refactors
    the code by adding a common macro (‘HEADING’), and also changes
    the output so it's clearer at a glance:
    
      --- Checking for Haskell ---
      checking for ghc... (cached) ghc
    
      --- Checking for PHP ---
      checking for php... (cached) php
      checking for phpize... (cached) phpize

commit d5cbe7b4bee5dec9e28b1db03e933c97ef6d11e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 14 08:59:51 2017 +0100

    v2v: Mention update-crypto-policies in documentation.
    
    Modern ssh and RHEL 5 sshd are not always interoperable, requiring
    enabling legacy crypto policies on the converion server (ssh client).
    
    Thanks: Nikos Mavrogiannopoulos, Jakub Jelen.

commit 4237b467cac7e632edd2a4f3fec182dae27c31b9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 10 15:03:37 2017 +0200

    ruby: fix order of CFLAGS
    
    Shuffle the order of the various CFLAGS used when building the Ruby
    extension: first the flags from manywarnings (gnulib), then libguestfs
    own CFLAGS, and then -DGUESTFS_PRIVATE=1 (so it is not overridden).
    
    This matches also what happens in automake parts, and makes it possible
    to override any flags from manywarnings also in the Ruby extension.

commit 6f78196425302ba97cbcfeb64d97716a4f0d70ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 9 17:57:54 2017 +0100

    valgrind: Ignore everything allocated through caml_stat_alloc.
    
    As the name suggests, caml_stat* functions are used for allocating
    static blocks.  The OCaml runtime doesn't bother freeing any of these
    on exit.  OCaml 4.05 allocates caml_executable_name this way, a newly
    seen global variable.  We might as well just ignore everything
    allocated this way.
    
    Further information here:
    
      https://github.com/ocaml/ocaml/blob/e7cf3b18467d930a33f378dab9bc8482fa35d43b/byterun/caml/memory.h#L66

commit 86ba930a8932b3763e8947f235b11f4fbd957040
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 9 15:31:01 2017 +0100

    Version 1.37.21.

commit e52cae5dabc044bb5a2b32f83ee46f45cb9ed579
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 8 14:57:47 2017 +0100

    build: Add a common script for generating OCaml dependencies correctly.
    
    These are generated in many different ways in the various
    subdirectories, and sometimes not generated correctly.  Introduce a
    script to do this in one place, and hopefully correctly.
    
    This is mostly simple refactoring, but I got rid of a couple of
    things:
    
    (1) The ‘make depend’ rule doesn't appear to be needed.  automake (or
    make?)  seems to rebuild the ‘.depend’ file automatically just because
    it is included.
    
    (2) I got rid of the hairy path rewriting sed expression.  Possibly
    that is needed for srcdir != builddir.

commit e17b7ab9946c8887e6b872a8f06768188f633d28
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 9 14:56:50 2017 +0200

    configure: output paths where java is searched in
    
    Output each path where we attempt to find 'java', so it is easier to
    spot whether the location for the current OS is missing.  This also
    removes the need to print the location next to the version, since the
    location was already printed above.

commit 85539edc846eee04976acacfc73f587c993171ad
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 9 14:54:03 2017 +0200

    configure: visually split the blocks of checks
    
    Add sort of "headers" to split most of the logical sections of the
    configure, so it is easier to get feedback on the progress of configure.

commit e6b31214fd70434cd9a033cd82f9a8f5680c1627
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 3 15:56:45 2017 +0100

    tests: Add a regression test for RHBZ#1477623.

commit 5ca068731a2ac60f45131bb64773fd9bdfcd4f85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 3 18:06:54 2017 +0100

    daemon: lvm: Pass device parameter of lvm_canonical_lv_name as PlainString.
    
    All sorts of strings might be passed here hoping to make them
    canonical LV names.  We cannot be sure that the strings passed will be
    devices which exist in the appliance.

commit 13ee2dd3a3444afb8b4644d25e889fcf405d0ce8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 3 17:03:12 2017 +0100

    tests: discard: Remove dubious use of "/dev/urandom" as a Device parameter.
    
    This API docs don't state that this is permitted.

commit 4c42020acde83c9495f86cb71992030a42d86c3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 3 14:31:19 2017 +0100

    daemon: Refine check for Device and Dev_or_Path parameters (RHBZ#1477623).
    
    For Device parameters we expect a block device name.  However we were
    only testing for "/dev/..." and so chardevs (from the appliance) could
    be passed here, resulting in strange effects.  This adds a function
    is_device_parameter which tests for a valid block device name.
    
    For Dev_or_Path parameters much the same, except we can also use the
    is_device_parameter function elsewhere in the daemon to distinguish if
    we were called with a device or path parameter.  Previously we used a
    simple test if the path begins with "/dev/...".
    
    Reported by Mathieu Tarral.

commit 092008607041c08ff81c23735414bb462d5f3c59
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 3 15:01:57 2017 +0100

    daemon: Deduplicate some utility functions.
    
    The following functions were previously reimplemented in OCaml.  This
    commit replaces them with calls to the C functions:
    
     - is_root_device
     - prog_exists
     - udev_settle
    
    plus the internal get_verbose_flag function.
    
    However note that we cannot do this for every utility function.  In
    particular the C function must not call any reply* functions.

commit 05ec64c882b7941de2c3b42c2c2327dbb4f384c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 3 14:46:10 2017 +0100

    daemon: Move utility functions to a separate file.
    
    This allows us to share certain utility functions with OCaml code.

commit 58b06d0da0d45eadf19c63edca5feeb9acf90197
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 8 16:23:10 2017 +0100

    daemon: utils: Small refactoring to hide ‘chan’ from code.

commit f8f6a63a6c59cf2c7a2c01b927573ae8ee34170f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 8 16:13:22 2017 +0100

    daemon: Remove extra space from debug message.

commit 57c9c92c4a8b91ebccf2b132d6dfb2daa13258dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 3 18:49:01 2017 +0100

    Version 1.37.20.

commit 630e4c6e7494504ba00e3d0f78ef3f5453e7d15e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 1 15:40:56 2017 +0100

    daemon: Restore PCRE regular expressions in OCaml code.
    
    When parts of the daemon were previously converted to OCaml, the
    previous PCRE regexps were converted to Str regexps.  Restore the
    original PCRE regexps.
    
    There was also one case where an original call to glob(3) was replaced
    by a Str regexp, and this is replaced by a PCRE regexp (although it is
    in fact identical in this instance).
    
    This updates commit b48da89dd6edce325f4c1f2956435c4d383ebe77
    and commit eeda6edca19ea02ffea7f433501dd063e04cd819
    and commit 2ca0fa778de5e748f4545eddf9798e7a723fe07e.

commit 9ec8c9f105404efd8e25d1778eaf507533485025
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 1 14:53:35 2017 +0100

    builder: Replace small usage of Str with new PCRE module.

commit 251a5fac53e02abd5131d47fdf8fd9109c9b46a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 1 12:58:33 2017 +0100

    common: Add a lightweight OCaml binding for PCRE.
    
    This uses the gnulib TLS macros.

commit ab97bbef1110428c96ffa27212c544cdc0247045
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 2 10:35:36 2017 +0100

    builder: Added RHEL 7.4 kickstarts.

commit b29e9412b4c0462f22142bb97449b7ff129b5b9d
Author: Jamie Iles <jamie.iles@oracle.com>
Date:   Tue Aug 1 13:08:14 2017 +0100

    Add missing oraclelinux cases.
    
    oraclelinux is the same as redhat/centos/scientificlinux, so add it
    where it is missing.  This fixes amongst other things, running sysprep
    on an Oracle Linux image where it would previously fail operations like
    setting the hostname, saying that it was not supported on that distro.

commit 028db34964794232957e514bbf0bae192d9bdfde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 1 09:18:18 2017 +0100

    docs: guestfs-hacking: Reorder directory names into alphabetical order.

commit a40c4b0a69eccadb147273c9ef4f5210a7b0a1aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 31 16:20:50 2017 +0100

    daemon: ntfs: fix name of the ntfs-3g.probe tool in one other place.
    
    Fixes commit 381c8b68c485730513c14e9e84a4c66379f69845, which forgot to
    add the dash in the name.
    
    See also commit ef53cd561996687c0380e6d094a3c5835516fa8f which fixed
    the same thing elsewhere.

commit c51ec56bf29b7549316359598742070a7e6d37be
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 31 12:09:26 2017 +0200

    gobject: use bash for running the tests
    
    Since the introduction of the TEST_FUNCTIONS framework in tests, with
    commit 2cb0413049f1a185a057c1b82b6642241f80dcdc, using a non-bash shell
    will not work anymore, since the framework currently relies on bash.
    
    Hence, switch the interpreter of these tests to bash, so they can run
    also on systems where /bin/sh is not bash (e.g. default Ubuntu
    installations).

commit ddd063e16db0632ab70ec3d63aea03aafc7ee779
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 31 11:19:33 2017 +0200

    builder: templates: disable Debian support for NVRAM
    
    It isn't ready to be pushed yet (needs more testing), and it was
    accidentally committed by me with
    commit ef53cd561996687c0380e6d094a3c5835516fa8f.
    
    My mistake, my fix, apologies.

commit 7325587e2fe3a313e8f337fcd29679464a47680d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 31 11:16:17 2017 +0200

    daemon: ntfs: fix name of the ntfs-3g.probe tool
    
    Fixes commit 381c8b68c485730513c14e9e84a4c66379f69845, which forgot to
    add the dash in the name.

commit fded0e908e77655bb6fe2a35509c75194803cd58
Author: Nikos Skalkotos <skalkoto@gmail.com>
Date:   Sat Jul 29 20:51:04 2017 +0300

    New partition API: part_resize
    
    This can be used to enlarge or shrink an existing partition.

commit a9daf3f82157ee0aa919e95745b9eccf9fbd1784
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 31 09:57:47 2017 +0200

    build: require ocaml-hivex for the daemon
    
    Since commit d5b6f1df5ff2d387a5dfc89b8316c0dff67ce2c9, the daemon
    requires ocaml-hivex; OTOH, nothing checks it is actually available, so
    the build of the daemon will fail with a semi-cryptic error about the
    lack of a directory in the OCaml install prefix.
    
    As fix, check for the presence of the hivex module at build time,
    failing earlier if not present.  The check is performed only when the
    daemon is enabled, as ocaml-hivex is not used for anything else than the
    daemon.

commit 842267e445a4b564cf10850eb26fb8288057b6e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 29 08:29:22 2017 +0100

    docs: ocaml-hivex is now required to build the daemon.
    
    Fixes commit d5b6f1df5ff2d387a5dfc89b8316c0dff67ce2c9.

commit ebd648df59117eeb111973a13e09a190bff01af1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 27 23:04:11 2017 +0100

    Version 1.37.19.

commit af44c2ae5dedf6747a04b6ec826e1ff1caf74ab1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 15 16:42:52 2017 +0100

    daemon: Reimplement ‘device_index’ API in OCaml.

commit f7f04ddef7a14e71e4f476c562ff6afa0f8322ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 15 16:42:52 2017 +0100

    daemon: Reimplement ‘part_get_parttype’, ‘part_get_gpt_type’, ‘part_get_gpt_guid’ APIs in OCaml.

commit 9e31fe0f3093936f57ee98d0f90e58a0289173da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 4 09:35:31 2017 +0100

    daemon: Reimplement ‘realpath’ API in OCaml.

commit 7d73ae2f03e9545131c6246764c3f9c1e6185121
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 4 09:35:31 2017 +0100

    daemon: Reimplement ‘md_detail’ API in OCaml.

commit 6c20534fbde88ac37fbb4ecac2024e195c65fd79
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 3 14:56:57 2017 +0100

    daemon: Reimplement ‘nr_devices’ API in OCaml.

commit 1ff52b372f43d38dea69269ba71ef9f8b6fa3005
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 4 09:35:31 2017 +0100

    daemon: Reimplement ‘findfs_uuid’ and ‘findfs_label’ APIs in OCaml.
    
    This also reimplements the lv_canonical function in OCaml.  We cannot
    call the original C function because it calls reply_with_perror which
    would break the OCaml bindings.

commit 214d784a06eebb632de16f4cb48719526faff30c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 6 12:07:04 2017 +0100

    daemon: Reimplement ‘part_list’ API in OCaml.

commit ed87876aebb546b9a094ed6b01ffd3096e031dfc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 4 09:35:31 2017 +0100

    daemon: Reimplement ‘list_filesystems’ API in the daemon, in OCaml.
    
    Move the list_filesystems API into the daemon, reimplementing it in
    OCaml.  Since this API makes many other API calls, it runs a lot
    faster in the daemon.

commit 4c4a26b5a8fce95ff278aa612c1d7fd79677730b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 4 09:35:31 2017 +0100

    daemon: Reimplement ‘btrfs_subvolume_list’ and ‘btrfs_subvolume_get_default’ in OCaml.

commit e55387eaf61b5e97d080e5d8ca85a1ab48a160d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 4 09:35:31 2017 +0100

    daemon: Reimplement ‘list_md_devices’ API in OCaml.

commit 479fe46ce056018b4bd1a93e10349c9690660e4c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 3 14:56:57 2017 +0100

    daemon: Reimplement ‘lvs’ API in OCaml.

commit 4be3f69db6fea8f42cd7212d3f7199e722fe555a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 3 14:56:57 2017 +0100

    daemon: Reimplement ‘list_ldm_(volumes|partitions)’ APIs in OCaml.

commit 0618fcae32f57d4c7b82f79afac6c5adf0ebcd7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 3 14:56:57 2017 +0100

    daemon: Reimplement ‘file_architecture’ API in OCaml.
    
    The previously library-side ‘file_architecture’ API is reimplemented
    in the daemon, in OCaml.
    
    There are some significant differences compared to the C
    implementation:
    
     - The C code used libmagic.  That is replaced by calling the ‘file’
       command (because that is simpler than using the library).
    
     - The C code had extra cases to deal with compressed files.  This is
       not necessary since the ‘file’ command supports the ‘-z’ option
       which transparently looks inside compressed content (this is a
       consequence of the change above).
    
    This commit demonstrates a number of techniques which will be useful
    for moving inspection code to the daemon:
    
     - Moving an API from the C library to the OCaml daemon.
    
     - Calling from one OCaml API inside the daemon to another (from
       ‘Filearch.file_architecture’ to ‘File.file’).  This can be done and
       is done with C daemon APIs but correct reply_with_error handling is
       more difficult in C.
    
     - Use of Str for regular expression matching within the appliance.

commit dd0f9b00febe3a51eaeb2001ed9f88a872500f0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 3 14:56:57 2017 +0100

    daemon: Reimplement ‘case_sensitive_path’ API in OCaml.

commit a07caf2e2530e384d81cde9a6a291dfeba4517f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 3 14:56:57 2017 +0100

    daemon: Reimplement ‘part_get_mbr_id’ API in OCaml.

commit 86cfaf0b6cdfb5c5bc273d67b6640a1b9168eef7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 3 14:56:57 2017 +0100

    daemon: Reimplement ‘mount’, ‘mount_ro’, ‘mount_options’, ‘mount_vfs’ APIs in OCaml.
    
    Some of the oldest and most core APIs, reimplemented.
    
    This also moves the strange ‘mount_vfs_nochroot’ function into
    btrfs.c.

commit 89362ba7d8726208aaf29399b31a775d1a4deff0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 3 14:56:57 2017 +0100

    daemon: Reimplement ‘readlink’ API in OCaml.

commit 932fbb171bb40f0d8bdfe935734aa824155c1ced
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 3 14:56:57 2017 +0100

    daemon: Reimplement ‘is_dir’, ‘is_file’ and ‘is_symlink’ APIs in OCaml.
    
    This also demonstrates usage of optional arguments.

commit 792b30eedf714a900c0cb32814a9637172e50c4f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 3 14:06:47 2017 +0100

    daemon: Add unit tests of the ‘Utils’ module.

commit da7f86e3118ed5c5a90bdc79948ec00301503ea8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 2 17:44:35 2017 +0100

    daemon: Reimplement several devsparts APIs in OCaml.
    
    The reimplemented APIs are:
    
    * list_devices
    * list_partitions
    * part_to_dev
    * part_to_partnum
    * is_whole_device

commit a956343069ade1ae333b837d030f2795154b311a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 2 17:44:35 2017 +0100

    daemon: Reimplement ‘vfs_type’ API in OCaml.

commit 91a32d284dda4f964493bebc1589e4b96dc4b25b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 2 17:44:35 2017 +0100

    daemon: Reimplement ‘file’ API in OCaml.
    
    ‘file’ is a small, self-contained API which runs a single command, so
    it's a good test case for reimplementing APIs.

commit 7aa8d0011bc068061521d15e3017c6b14b432db4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 2 17:09:29 2017 +0100

    daemon: Allow parts of the daemon and APIs to be written in OCaml.
    
    This change allows parts of the daemon to be written in the OCaml
    programming language.  I am using the ‘Main Program in C’ method along
    with ‘-output-obj’ to create an object file from the OCaml code /
    runtime, as described here:
    https://caml.inria.fr/pub/docs/manual-ocaml/intfc.html
    
    Furthermore, change the generator to allow individual APIs to be
    implemented in OCaml.  This is picked by setting:
    
      impl = OCaml <ocaml_function>;
    
    The generator creates ‘do_function’ (the same one you would have to
    write by hand in C), with the function calling the named
    ‘ocaml_function’ and dealing with marshalling/unmarshalling the OCaml
    parameters.

commit 6ff4f79241903796182542074a6dee77afbc764b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 26 15:39:32 2017 +0100

    daemon: Reimplement handling of lvm.conf and filters.
    
    LVM is fine with a completely empty configuration file (meaning "all
    defaults"), so start with one instead of copying the system
    configuration file.
    
    Also this means we can very easily implement lvm_set_filter
    functionality without using Augeas, since we no longer have to worry
    about existing filters being present.
    
    Thanks: Alasdair Kergon, Zdenek Kabelac.

commit 8472e78a022e79dee18a5cf119e23d26835edcc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 18 18:47:54 2017 +0100

    v2v: Add slow tests of opensuse 13.1, 13.2 and 42.1 conversions.

commit 4338eba20d00585a2f029811ded00169b803e281
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 18 10:59:34 2017 +0100

    v2v: bootloaders: Handle no Bootloader::Tools default section (RHBZ#1472208).
    
    In SUSE guests, handle the case where
    Bootloader::Tools::GetDefaultSection () returns undef.
    
    Previously this would return an empty string and cause a bogus error
    in subsequent code:
    
    virt-v2v: error: libguestfs error: statns: statns_stub: path must start
    with a / character

commit b9fa7705aa0aa0a5f0b67c422a9b5d95f38407de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 24 14:49:06 2017 +0100

    common/mlstdutils: Fix parallel builds of bytes.ml.
    
    With OCaml < 4.02 when using the alternate Bytes module, this module
    would be compiled twice during parallel builds, resulting in
    occasional corruption.  The reason for this is that the ocamldep file
    mentions ‘bytes.cmo’ whereas the ‘$(OCAML_BYTES_COMPAT_ML)’ macro
    expands to ‘../../common/mlstdutils/bytes.ml’.  Make doesn't recognize
    these as the same file.
    
    Use an alternate way to specify this file to fix this.

commit 57c193e0b39245bbc66e7476079caf6b661bb4e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 24 16:27:07 2017 +0100

    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.

commit db28a748a5523953097dd63d2eb25dac648ac9cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 13 13:36:41 2017 +0100

    common/mlstdutils: Build a bytecode version of this library.
    
    Even if ocamlopt is available, always build a bytecode version of
    ‘common/mlstdutils’.
    
    Furthermore, because this library is pure OCaml, we should not be
    using ‘ocamlmklib’.  We should use ‘ocaml{c,opt} -a’ instead.  This
    doesn't make any difference for native code, but for bytecode it was
    building a broken library.
    
    The original reason for making this change is because the generator is
    always built as bytecode, and it depended on
    ‘../common/mlstdutils/guestfs_config.cmo’ and
    ‘../common/mlstdutils/std_utils.cmo’.  On native code platforms these
    were not built before the generator and so the generator races to
    build the .cmi and .cmo files.  Since the generator doesn't have
    correct dependencies covering the ‘common/mlstdutils’ directory you
    can get a broken link on fast machines:
    
      File "../common/mlstdutils/std_utils.ml", line 1:
      Error: Corrupted compiled interface
      ../common/mlstdutils/guestfs_config.cmi
      make[2]: *** [Makefile:1993: ../common/mlstdutils/std_utils.cmo] Error 2
      make[2]: *** Waiting for unfinished jobs....
      make[2]: Leaving directory '/builddir/build/BUILD/libguestfs-1.37.17/generator'

commit 162662477b038e001a8594b8aca41eb19990799f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 26 16:19:03 2017 +0100

    tests: lvm: Make the lvm_set_filter test easier to understand.
    
    No functional change.

commit bba57071cc0d6ef4cf48b02accf151835154b14b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 24 16:10:47 2017 +0100

    daemon: Tidy up the <daemon.h> header file.
    
    No change, just tidy up the header file.

commit f503b23c4d781cb912906c023a211b170df40992
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 27 12:03:25 2017 +0100

    v2v: uefi: Add function to error out unless UEFI firmware is installed.
    
    No change, just refactoring.

commit 1ec032235ed7aa5df43c8f5bd971e0c07aac9923
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 24 14:15:02 2017 +0100

    common/mlstdutils: Don't export StringSet.map (for older OCaml).
    
    Fixes commit 8548729cf21c71efd5e05b49c51c728893bc3df4.
    
    Thanks: Pino Toscano.

commit f8a6ce59ec059c0793a8e68a988f5cda77e4cd49
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 21 17:27:26 2017 +0100

    common/mlutils: Remove bogus suffix parameter from Mkdtemp.temp_dir.
    
    The C function mkdtemp(3) requires that the string ends with 6 'X'
    characters, so appending a non-empty suffix causes the function to
    raise EINVAL.
    
    Luckily we only ever called this function with the last parameter "".

commit a4baee2993298bda7e95a09bfa96e1d935970963
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 21 17:07:03 2017 +0100

    common/mlstdutils: Implement StringSet.

commit eda53096daeaf1217dc2a5ddcd5d776b91515d26
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 21 14:50:08 2017 +0100

    common/mlstdutils: Add chomp function to remove \n from end of strings.
    
    This is like the Perl chomp function, it removes a single \n from the
    end of a string if present, else leaves the string alone.
    
    I believe I found the only (two) places where such a function is used,
    but there may be a few more lurking.

commit 2ee355a671f1daa818cd03d8dbc6ba7ba872e7c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 19 16:33:55 2017 +0100

    builder: templates: Rebuild all Fedora 26 templates with LVM disabled.
    
    This also fixes virt-p2v-make-disk which could not handle the base
    disk images using LVM.
    
    Fixes commit 48874066b90031c6d436e9b3dbe5bff691580421
    and commit 0a73032120b3c464886ef4ee4ca7f9ad6cc66876.

commit 687b790b78100f1a616337b64840bd468c605f36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 19 15:24:05 2017 +0100

    builder: templates: Calculate revision correctly when existing file has no revision.

commit b8424811a9aa55fae3d1cefae56fdf27c270d49d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 19 14:50:59 2017 +0100

    builder: templates: Generate plain partition layouts (without LVM).
    
    This was a mistake when the original shell scripts were transcribed to
    make-template.ml (in commit 65a05703858341476b9b2ceea2ef43e6f1447c43).

commit a496c9751c0e93080cb00f207cbb47e9796b71d0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 19 14:47:15 2017 +0100

    p2v: make-disk: Add verbose option to dracut in post-install script.
    
    The verbose output goes to /tmp/builder.log so it wouldn't normally be
    seen by the end user, but it's useful for debugging.

commit a39aa0e963ed06e47a6c71ec615dc3a0bf6644b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 19 11:49:19 2017 +0100

    fuse: Make it clearer that -o allow_other must be enabled in /etc/fuse.conf.
    
    It wasn't very clear in the manual before.

commit e6f71114b4e414fdfe3dfed1d3def98b012e74a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 18 18:40:55 2017 +0100

    build: Require <caml/unixsupport.h>
    
    Require <caml/unixsupport.h> (an OCaml header file) and remove
    alternate defintions of ‘Nothing’ and ‘unix_error’ which are defined
    in this header file.
    
    We require OCaml >= 3.11 which has this header file, so there is no
    need to test for it or provide alternative definitions.
    
    Thanks: Pino Toscano.

commit 97809e86c1430ff8de2050e4d888516374d754dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 14 13:22:49 2017 +0100

    build: Make OCaml compiler required for all builds.
    
    Previously the OCaml compiler was only required if building from git
    but was at least theoretically optional if building from tarballs
    (although this was never tested).  Since we want to write parts of the
    daemon in OCaml, this makes OCaml required for all builds.
    
    Note that the ‘--disable-ocaml’ option remains, but it now only
    disables OCaml bindings and OCaml virt tools.  Using this option does
    not disable the OCaml compiler requirement.
    
    Also note that ‘HAVE_OCAML’ changes meaning slightly, so it now means
    "build OCaml bindings and tools" (analogous to ‘HAVE_PERL’ and
    others).  The generator, daemon [in a future commit], and some utility
    libraries needed by the generator or daemon do not test for this macro
    because we can assume OCaml compiler availability.

commit 43022de81f86597fa6830f3c06b360a7f1394cc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 18 15:15:47 2017 +0100

    Version 1.37.18.

commit ab574e31fbe513144f6ceb6eb9f4cf0854308344
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 15:46:29 2017 +0100

    v2v: Set correct root device when rebuilding SUSE kdump initrd.
    
    The ‘vmware-uninstall-tools.pl’ script tries to rebuild the initrd.
    On SUSE, if kdump initrd has been enabled, this would use the wrong
    root device because ‘mkdumprd’ doesn't know what root device to use.
    Fix that by setting the ‘rootdev’ environment variable.
    
    See also https://bugzilla.redhat.com/1465849 (this is not a fix).

commit cfcdb401cb0db1b2ee148e8b3a49fef768a050d8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 17:10:40 2017 +0100

    lib: Move guestfs_int_parse_unsigned_int* functions.
    
    Just code motion, no functional change.

commit 52fbf5f5d59dcc62db318c179921a6f8d48c6630
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 15:53:07 2017 +0100

    p2v: make-disk: Install p2v service in multi-user.target instead of default.target.
    
    Tested by doing ‘make -C p2v run-virt-p2v-in-a-vm’.

commit f3534206a8b583a752015412ad99194602f06369
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 17 15:49:13 2017 +0100

    customize: firstboot: Remove default.target.wants/guestfs-firstboot.service too.
    
    This file could be left over from earlier use of the ‘--firstboot’
    option.
    
    Thanks: Pino Toscano.

commit 604a540ed7bb1df2e7ea81ea414cfdf76d24818c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 16 21:44:22 2017 +0100

    customize: firstboot: Install firstboot scripts in multi-user.target (RHBZ#1469655).
    
    When the guest uses systemd, install firstboot scripts under
    ‘multi-user.target’.
    
    See this link for details:
    https://lists.freedesktop.org/archives/systemd-devel/2017-July/039325.html
    
    This fixes firstboot on Fedora 26 (and in general with systemd >= 233).
    
    Thanks: Lennart Poettering

commit 9b62f9cbc82181cecde045291fbe7f62f30f48b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 16 21:41:15 2017 +0100

    customize: firstboot: Factor out the name of the systemd target.
    
    Currently we install the firstboot service under systemd target
    ‘default.target’.  This change simply factors out this name.
    
    Note that the name is not factored out in the code which deletes the
    old ‘/etc/systemd/system/default.target.wants/firstboot.service’ file,
    since that would have always been installed in the same location.

commit 4a45e2dce0f9a31adc516a7a13a3a1c8d360cdea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 16 21:35:12 2017 +0100

    docs: Add info about how the stable tarballs are signed.

commit 8b2d0619cb1c0a781a0c198d852cdb000f45f925
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 15 17:59:24 2017 +0100

    lib: Move implementation of ‘hivex_value_utf8’ to new file ‘lib/hivex.c’.
    
    Just a code movement, no change.

commit be438593e976c0a466b8c9decf4c18ce5f479939
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 13 12:07:35 2017 +0100

    builder: templates: Prevent script from being run as root.
    
    Or with LIBVIRT_DEFAULT_URI=qemu:///system which is the same
    thing.
    
    In either case the images are created as user qemu.qemu and then
    aren't readable or modifiable by later parts of the script.

commit 1e6f0ae664be423585fe65ed5c920ab1c8b6587c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 13 11:59:52 2017 +0100

    customize: Test firstboot in Fedora 26.
    
    It currently fails because of this bug apparently in systemd:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1469655
    https://github.com/systemd/systemd/issues/6334

commit d3ababead9579872f6b2154a16f1f1818a2ff659
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 11 15:21:02 2017 +0200

    ocaml: fix build with Bytes fallback
    
    Place the Bytes fallback module in the right place (mlstdutils), with no
    need to make it available directly also for generation, since it uses
    mlstdutils now.
    
    Fixes commit 61d4891ef48df171a27873efe90aab51a9b711ef.

commit dbeb2915167a4c9acad5e52442e6997a4567544c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 11 15:19:00 2017 +0200

    builder: fix paths to mlstdutils & mlutils
    
    Followup/fix of commit 61d4891ef48df171a27873efe90aab51a9b711ef.

commit a7a6f70fa4052b6016ddb5240fecee93555ede3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 11 13:21:46 2017 +0100

    builder: Add Fedora 26 for aarch64, armv7l, i686, ppc64, ppc64le.
    
    All the secondary architectures except s390x, which we cannot handle
    because qemu doesn't emulate that architecture sufficiently yet.

commit 14caf0b04d7f136c81af048bda325ad9841a1e40
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 11 13:02:55 2017 +0100

    builder: templates: Use full path for nvram file.
    
    Works around a virt-install or libvirt bug:
    https://bugzilla.redhat.com/show_bug.cgi?id=1469491

commit 687da5bb39b3718d4950c73b749ec050ee9d07df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 11 12:00:58 2017 +0100

    builder: templates: Use dl.fedoraproject.org for secondary architectures.
    
    Avoid redirecting to incomplete mirrors.

commit f1ad29c09fa86ff8681337c8444eb100e314789d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 11 10:29:57 2017 +0100

    builder: Add fedora-26 (x86_64) image.

commit 09e718d08ee31bc1f92531c07d0cabde008a3a30
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 10 22:06:45 2017 +0100

    Version 1.37.17.

commit 3f2bc3d17199eed0b1a4af40fe8d96e398563a8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 10 22:04:41 2017 +0100

    common/mlutils: Add test .ml file to EXTRA_DIST.
    
    Fixes commit 8be72935dcd2f0a5320aaf93733888db85239a1d.

commit 9188428ba6ee5a6fc429b7d5c4a3d386ef6c3262
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 29 11:57:50 2017 +0100

    gobject: Add outline guestfs-gobject(3) manual page.
    
    Since we removed gtk doc, we might as well replace it with a
    manual page explaining the basics of how to run gjs.

commit 4c4f6e47bd764cf58fe60a9eb32ef96f910b702b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 29 11:05:24 2017 +0100

    gobject: Remove gtk-doc (RHBZ#1465665).
    
    The gobject bindings are adequately covered in the usual manual pages:
    guestfs(3).  There is no need for separate generation of gtk-doc.
    Also generating gtk documentation is the slowest part of the build,
    and the tooling around gtk-doc is broken
    (https://bugzilla.redhat.com/show_bug.cgi?id=1465665).
    
    Note this removes the configure ‘--enable-gtk-doc’ option.  Using this
    option now gives a warning, but is otherwise ignored:
    
      configure: WARNING: unrecognized options: --enable-gtk-doc

commit 0108a061dad297e9aad0f46cb8392c5cda19c02c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 29 11:45:25 2017 +0100

    gobject: Use TEST_FUNCTIONS framework in tests.

commit e21bae4a446bdd7d9d4aa12131d3b09de48e1f0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 8 17:14:55 2017 +0100

    daemon: Link guestfsd with libutils.
    
    After the previous refactoring, we are able to link the daemon to
    common/utils, and also remove some of the "duplicate" functions that
    the daemon carried ("duplicate" in quotes because they were often not
    exact duplicates).
    
    Also this removes the duplicate reimplementation of (most) cleanup
    functions in the daemon, since those are provided by libutils now.
    
    It also allows us in future (but not in this commit) to move utility
    functions from the daemon into libutils.

commit a7052147317635b2802462265597514fbbe2a70d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 9 11:52:42 2017 +0100

    utils: Rename ‘guestfs-internal-frontend.h’ to ‘guestfs-utils.h’.
    
    The reason it's not just ‘utils.h’ is because Pino is worried that we
    might pick up /usr/include/utils.h from a rogue library.

commit c9556f75ad1afb228178a120e966365d0d22f58b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 9 09:15:30 2017 +0100

    mllib, v2v: Split out OCaml utils bindings ‘common/mlutils’.
    
    Create a module ‘C_utils’ containing functions like ‘drive_name’ and
    ‘shell_unquote’ which come from the C utilities.
    
    The new directory ‘common/mlutils’ also contains the ‘Unix_utils’
    wrappers around POSIX functions missing from the OCaml stdlib.

commit edc5b23ebd7260a54db0b24b72ebb6737639de20
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 8 15:39:33 2017 +0100

    utils: Split out structs cleanups and printing into common/structs.
    
    These won't be used by the daemon, so interferes with us using
    common/utils in the daemon, so they are moved to a different library.

commit d5b53fad1c9278cc5cf5ec3b0f7f4b6795f9ba78
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 8 17:19:23 2017 +0100

    common/utils: cleanups: Add CLEANUP_CLOSE function.
    
    This is present in the daemon, but the function could be used
    throughout the code.

commit b3c576e26db9b78202bae514a2fc3e7959d59985
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 19 12:20:45 2017 +0100

    common/utils: Refactor stdlib, gnulib and libxml2 cleanup functions.
    
    This refactoring change just moves the cleanup functions around in the
    common/utils directory.
    
    libxml2 cleanups are moved to a separate object file, so that we can
    still link to libutils even if the main program is not using libxml2
    anywhere.  Similarly gnulib cleanups.
    
    cleanup.c is renamed to cleanups.c.
    
    A new header file cleanups.h is introduced which will replace
    guestfs-internal-frontend-cleanups.h (fully replaced in a later commit).

commit 235c1e12c47d3e265026c2ef8aadae0dbb29dd5a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 8 19:00:47 2017 +0100

    common/utils: Move ‘uefi.c’ to ‘lib/’.
    
    This was only used inside the library, so move it there.

commit 115c679397a9704a69cce9d64184ed4191eb86ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 15 15:29:35 2017 +0100

    common/mlstdutils: Implement ‘Char.mem’, ‘String.span’ and ‘String.cspan’.
    
    Char.mem tells you if a byte is a member of a string.
    
    String.span and String.cspan are like the C functions strspn and
    strcspn.

commit acc63e434a9ddad6b91129b9bbcb691181bac9b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 15 15:29:35 2017 +0100

    common/mlstdutils: Implement complete set of byte swapping functions.
    
    This implements all of:
    
     val int_of_le16 : string -> int64
     val le16_of_int : int64 -> string
     val int_of_be16 : string -> int64
     val be16_of_int : int64 -> string
     val int_of_le32 : string -> int64
     val le32_of_int : int64 -> string
     val int_of_be32 : string -> int64
     val be32_of_int : int64 -> string
     val int_of_le64 : string -> int64
     val le64_of_int : int64 -> string
     val int_of_be64 : string -> int64
     val be64_of_int : int64 -> string
    
    and tests.

commit 6f7c68c3143aa511858d8f8e9688f177f5ed950d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 8 13:27:25 2017 +0100

    mllib: Split ‘Common_utils’ into ‘Std_utils’ + ‘Common_utils’.
    
    The new module ‘Std_utils’ contains only functions which are pure
    OCaml and depend only on the OCaml stdlib.  Therefore these functions
    may be used by the generator.
    
    The new module is moved to ‘common/mlstdutils’.
    
    This also removes the "<stdlib>" hack, and the code which copied the
    library around.
    
    Also ‘Guestfs_config’, ‘Libdir’ and ‘StringMap’ modules are moved
    since these are essentially the same.
    
    The bulk of this change is just updating files which use
    ‘open Common_utils’ to add ‘open Std_utils’ where necessary.

commit 268f83d22a31fc6f75b42a3b0107053305f5bf4f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 8 10:58:39 2017 +0100

    mllib: Move Xml (libxml2) OCaml bindings to common/mlxml.
    
    The ‘Xml’ module is a self-contained library of bindings for libxml2,
    with no other dependencies.
    
    Move it to a separate ‘common/mlxml’ directory.
    
    This is not pure refactoring.  For unclear reasons, the previous
    version of ‘Xml.parse_file’ read the whole file into memory and then
    called ‘xmlReadMemory’.  This was quite inefficient, and unnecessary
    because we could use ‘xmlReadFile’ to read and parse the file
    efficiently.  Changing the code to use ‘xmlReadFile’ also removes the
    unnecessary dependency on ‘Common_utils.read_whole_file’.

commit 85d30a1d047056cfe8b5a834bff5c1928ace65ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 8 10:58:39 2017 +0100

    mllib: Move Progress OCaml bindings to common/mlprogress.
    
    The ‘Progress’ module is a self-contained library with the only
    dependencies being:
    
     - the C ‘progress’ implementation
    
    Move it to a separate ‘common/mlprogress’ directory.
    
    This change is pure code refactoring.

commit c1c259386a2fca094f4610917f6e051382c8f084
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 8 10:58:39 2017 +0100

    mllib: Move Visit OCaml bindings to common/mlvisit.
    
    The ‘Visit’ module is a self-contained library with the only
    dependencies being:
    
     - the C ‘visit’ implementation
    
     - the guestfs OCaml bindings
    
    Move it to a separate ‘common/mlvisit’ directory.
    
    This change is not entirely refactoring.  Two other fixes are made:
    
     - remove unsafe use of CLEANUP_FREE from a function which could
       raise an OCaml exception (cleanup handlers would not be called
       correctly if the exception is thrown)
    
     - don't link directly to common/visit/visit.c, but instead use
       the library (common/visit/libvisit.la)

commit 13435c4113e18918ab996680ea3c64c1ecd74500
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 10 15:33:40 2017 +0200

    builder: templates: pass empty proxy to d-i when not set
    
    When there is no proxy set, pass an empty string to the Debian
    Installer.  This way, the installer will not ask for a proxy.

commit 0eba6a81ff812b2dacaeb73544dcc3257d3cd29d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 7 17:47:49 2017 +0200

    builder: templates: save NVRAM before removing guest
    
    When installing guests that need NVRAM variables, the cleanup of the
    guest with `virsh undefine` will remove that file too, which is not what
    we want.  Instead, compress the NVRAM file right before the cleanup,
    to ensure we have it.
    
    Also, fix the filename for it, removing the double "-nvram" suffixes.

commit ec31711288a8064c1fde1b8334dd431c6c0d5cf0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 3 11:29:48 2017 +0200

    builder: templates: improve debian.preseed
    
    - set the mirror to deb.debian.org, which is the official redirector, so
      generated images will use the closest mirror depending on their
      location
    - automake the task selection, using the choice we want
    - do a full upgrade of the distro, so the template is already up-to-date
    - install grub on the default device, which should also be the only one
      in the automated installation

commit b807d62dc83d96855fcd47b1a832a4769dd4c457
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 3 11:27:47 2017 +0200

    builder: templates: generalize debian location
    
    Add an helper function to translate our architecture to the Debian
    naming, and use it to get the location for all the architectures.

commit 84e6f0923976db8780ac8c2a638fe6e5e1de8ace
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 10 11:53:29 2017 +0200

    builder: templates: update Debian preseed from Stretch
    
    Update our debian.preseed file from a Stretch example file, leaving all
    the customization done already.

commit 4b51d84d0c6d1d51cf3e6de9470592da0242706d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 10 15:03:32 2017 +0100

    builder: make-template: Combine both os_variant_of_os functions into one.
    
    Cosmetic only change, no functional change.

commit aac66949dcf246d9e718e04b0a25d991ea6937df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 7 12:59:10 2017 +0100

    v2v: docs: VDSM location of virt-v2v log file.
    
    See this bug for background information:
    https://bugzilla.redhat.com/show_bug.cgi?id=1350465
    
    Thanks: Tomáš Golembiovský, Pino Toscano

commit 2b0cd5a046ecd7ba5a266c11fa9da698ef9bb7f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 29 23:59:15 2017 +0100

    lib: libvirt: Pass copyonread flag through to the libvirt XML (RHBZ#1466563).
    
    We were dropping the add_drive copyonread flag when using the libvirt
    backend.  This resulted in significant performance degradation (2x-3x
    slower) when running virt-v2v against VMware servers.
    
    Thanks: Kun Wei.

commit 0ddf42931e489e51f10638b505625c85228bfa78
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 29 15:18:49 2017 +0100

    v2v: Allow -i libvirtxml to open network disks over http or https.
    
    Currently -i libvirtxml mode only works for local files or NBD disks.
    The purpose of NBD is to support virt-p2v.
    
    This change adds support for network disks over http or https, ie:
    
        <disk type='network' device='disk'>
          <driver name='qemu' type='raw'/>
          <source protocol="http" name="/scratch/disk.img">
            <host name="server.example.com" port="80"/>
          </source>
          <target dev='hda' bus='ide'/>
        </disk>
    
    This is just for testing.  It's especially useful for exercising curl
    support in qemu without requiring VMware to be available.

commit ec60505f4506945d33104a3670eb0c02f536c2bf
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Tue Jun 27 19:42:20 2017 +0300

    launch: add support for autodetection of appliance image format
    
    This feature allows you to use different image formats for the fixed
    appliance. The raw format is used by default.
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>

commit e800d1fa8576d9b9c613b2c7cf6c68876bdb268e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 27 09:51:21 2017 +0100

    builder: Add debian-9 template.

commit ab58dd3d40e6501f3b9cacb1f8d16939217e168d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 27 09:49:06 2017 +0100

    builder: make-template: Remove trailing \n in Debian index-fragment.
    
    Caused the following error when running make-template:
    
      syntax error at line 22: syntax error
      virt-index-validate: ‘debian-9.index-fragment’ could not be validated, see errors above

commit e7f4a7bcdd18e14102df449da71766cafb001583
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 27 09:35:04 2017 +0100

    builder: Support Debian 9 ("Stretch") in make-template.

commit cbea6fbff69f327e15853e28c82f51110d1afdc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 23 12:01:12 2017 +0100

    configure: Fix the release date so that it's impossible to forget about.
    
    Add a RELEASES file which contains the release date for each version
    of libguestfs.  When a new version is released, the configure script
    checks that the date has not been omitted from the file.
    
    This also fixes the release date for version 1.37.16 which I omitted
    from commit 9455f212374295897c726b858c6fec611e370100.

commit 041de7f296d8f7e9251a01a2f5ac1318639c3d77
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 22 19:13:43 2017 +0100

    m4: Add utimbuf.m4 to gitignore.
    
    Updates commit 01a6d88660d8d84647c139126f1fab27e4710247.

commit 48a7bef5c95134c9c29007437b8f1aee88e6fea6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 22 14:39:14 2017 +0100

    Update gnulib to latest.

commit e1d9c15a4b59eadb8de1c7333595faf459248768
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 22 15:06:01 2017 +0100

    builder: Allow large variable length arrays.
    
    Gnulib added: -Wvla-larger-than=4031, get rid.

commit 9ba68c31f81dd7c9a97816aba2f22d8ce5f83a4c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 22 15:05:21 2017 +0100

    build: Force -Wformat-truncation=1.
    
    Gnulib changed the default to -Wformat-truncation=2, but GCC 7 gives a
    bunch of completely incorrect warnings.  Change it back.

commit df82d22509ebcebed5d72c6d58c6e13966648384
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 22 14:53:04 2017 +0100

    build: Force -Wimplicit-fallthrough=4.
    
    New gnulib uses ‘-Wimplicit-fallthrough=5’ which warns (and hence
    errors) on every switch statement with an implicit fallthrough.
    
    We could use the new GCC attribute here:
    
      #ifndef FALLTHROUGH
      # if __GNUC__ < 7
      #  define FALLTHROUGH ((void) 0)
      # else
      #  define FALLTHROUGH __attribute__ ((__fallthrough__))
      # endif
      #endif
    
    but instead this changes the level to 4 which allows us to use
    /*FALLTHROUGH*/ comments (which we are already using) to mark cases
    where we expect fallthrough.

commit 7eef7585e945334693f53d1656e19377ca1a2cce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 22 14:32:26 2017 +0100

    maintainer: Unset LC_ALL before running Python script to list bugs.
    
    Gnulib installs two files: ‘GNUmakefile’ and ‘maint.mk’.  The first
    one runs the second one, and the second one sets LC_ALL=C universally.
    
    However this breaks the ‘bugzilla’ script (or Python) because some
    bugs contain non-ASCII characters in their Summary.  The script prints
    this error:
    
      Traceback (most recent call last):
        File "/usr/bin/bugzilla", line 1117, in <module>
          main()
        File "/usr/bin/bugzilla", line 1112, in main
          _format_output(bz, opt, buglist)
        File "/usr/bin/bugzilla", line 702, in _format_output
          print(format_field_re.sub(bug_field, opt.outputformat))
      UnicodeEncodeError: 'ascii' codec can't encode characters in position 108-109: ordinal not in range(128)
    
    The simplest fix for this is to unset LC_ALL before running the
    external script, so that the normal locale settings are used.

commit 52a7efdd2a96b7603cdd434f2d2eb78857607043
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 22 11:52:02 2017 +0100

    v2v: Document vdsm-compat-option in machine-readable output.
    
    Thanks: Ming Xie

commit 14c3c7876006a3896ef695777bb108b93bd06473
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 21 22:43:37 2017 +0100

    Version 1.37.16.

commit 71adbbffe9453862f847a79b39ee868670cd37b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 21 22:23:12 2017 +0100

    maintainer: New layout of libguestfs website.

commit 9d39aba58255b8571bd37e7ee8c3f6337af82573
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 21 21:56:11 2017 +0100

    Version 1.37.15.

commit 6cabc452e05edccf7efe7ca710554b4dcfb46414
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 21 17:13:29 2017 +0100

    mllib: Handle empty files correctly in read_first_line_from_file.
    
    The OCaml function ‘input_line’ throws an End_of_file exception if the
    end of the file is read before any other input, ie. if the file here
    is zero length.  Return an empty string instead.
    
    This can produce peculiar errors such as:
    
    $ virt-customize ... --root-password file:/dev/null
    libguestfs: uncaught OCaml exception in getopt callback: End_of_file

commit 73c824fa7a987521630899fd5ede563789d03ff2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 21 16:08:29 2017 +0100

    appliance/init: Allow daemon stack traces to be captured by gdb.
    
    This fragment, not enabled by default, allows stack traces to be
    captured and displayed by gdb in case the daemon crashes.

commit 2260a5007daf2e7e52de9a1e4e10d31b07cf8163
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 21 16:34:05 2017 +0200

    resize: make sure the input disk is read-only
    
    Fixes commit 8a2b0738d1b79f288b14fc35294567430d10b7ec.

commit 6a5102cf3eb0faaced169079642f71cf64012245
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 21 13:46:58 2017 +0200

    python: PEP 8: remove extra spaces in example lines
    
    Remove (before opening round bracket) whitespaces in the documentation
    of the Python binding, according to the PEP 8 specification.
    
    This is just code reformatting, with no behaviour changes; no content
    changed beside whitespaces, so "git diff -w" gives an empty diff.

commit 9c2f2d44fd10b5659e6b970f3117c7e896b0abdf
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 20 15:20:23 2017 +0200

    dib: use Common_utils.run_commands
    
    Use the new helper for spawning parallel commands, and redirecting their
    stdout to file.

commit 66c741b8c943216c13708149d1b517f67dae9544
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 20 15:20:22 2017 +0200

    mllib: add new Common_utils.run_commands
    
    Mostly modelled after a snippet implemented in dib, it is an helper
    function to run multiple commands in parallel, waiting for all of them
    at once, and returning all their exit codes.  It is possible to pass
    custom descriptors for collecting stdout and stderr of each command.
    
    Common_utils.run_command is adapted to use few helper methods used by
    run_commands, so all the existing code using it keeps working; in
    addition, it gets labelled parameters for stdout and stderr FDs.
    
    Add a simple unit tests for them.

commit da94f3f9d7d4f6156a2e6839379a72131b5b522a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 19 14:47:20 2017 +0100

    gitignore: Remove a few unused patterns from this file.

commit f1c9bb949de77f11620468e3aa4de42e26e2094a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 13 08:49:05 2017 +0100

    lib: direct, uml: Refactor unblocking SIGTERM code.
    
    A small refactoring of
    commit 1f1cd11cf0f5a6652c1571fd01a4cce2c7e411ae.

commit 27f0f663e8a24af18037f6074144b6cb0aa165fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 13 08:42:29 2017 +0100

    lib: Move close_file_descriptors into guestfs-internal.h.
    
    This macro is only used by the library, so move it to
    lib/guestfs-internal.h.

commit 56c6863cab44e6f6ac6249d508782a40d793730b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 12 13:15:34 2017 +0100

    daemon: lvm: Pass --yes option to force pvresize (RHBZ#1460577).
    
    LVM2 >= 2.02.171 requires the ‘--yes’ option to force pvresize to work
    in various circumstances, eg. reducing the size of an existing PV.
    
    Pass this flag unconditionally.
    
    Note this does NOT break earlier versions which just ignore this flag.

commit fe6d3a62c9cdb0d7cdf4fea82759ce6bbec519f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 10 18:30:05 2017 +0100

    lib: direct, uml: Unblock SIGTERM in the hypervisor and recovery processes (RHBZ#1460338).
    
    If SIGTERM is blocked in the main program, then it ends up still being
    blocked in the subprocess after we fork.  This means that we cannot
    kill qemu by sending SIGTERM to it.  This commit fixes the problem by
    unblocking SIGTERM unconditionally after fork.
    
    Thanks: wtfuzz on IRC for reporting and analysis.

commit dc29650f21cf20e3ec95db04c43d11c1e928fcd6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 8 08:16:04 2017 +0100

    lib: create: Allow any [[:alnum:]]+ string as a backingfmt parameter (RHBZ#1459979).
    
    If you use the libguestfs tools which open disk images read-only
    (eg. virt-df), with formats such as 'vdi', then you will see an error:
    
      error: invalid value for backingformat parameter 'vdi'
    
    This is because opening a disk image read-only will try to create a
    qcow2 file with the original image as a backing file.  However the
    list of permitted backing formats was very restrictive and did not
    include 'vdi' (nor many other uncommon formats).
    
    Instead of using a whitelist for backing formats, just validate that
    the string is alphanumeric and short.
    
    Thanks: Mike Goodwin for reporting the bug.

commit 1a7f966587c55e287d4a3a9c46518009b4b842d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 9 12:54:41 2017 +0100

    daemon: ldm: Use CLEANUP_FREE on list of static strings.
    
    This likely causes a double-free in the ‘ldmtool_scan_devices’ API.

commit 0fc239d61ed4508226294924ba207a7dd5260ce3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 8 19:16:56 2017 +0100

    docs: Document common/qemuopts subdirectory.

commit b22d239c8abf8990794688ed61a2392ed85e1b25
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 4 09:27:52 2017 +0100

    builder: Add cirros-0.3.5.

commit efd66b09ba7600909d74520b20e0cac12aedac38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 4 09:35:01 2017 +0100

    builder: templates: Ensure a stable sort when creating index file.

commit 76fa38eb899b1879e616d578b7cc5d11fef17b62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 4 09:34:25 2017 +0100

    builder: Fix Unicode quotes in index file.
    
    Fixes commit 126ef5d08238038973c903fcc78670a4a496fa4c.

commit d0c27c90e845ab5709b41058f85adef8d3d6f5ab
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jun 1 18:03:37 2017 +0200

    v2v: tell v2v the real root device to mkinitrd
    
    Complementary fix of commit 2d25872df3619a3077006ad0f91c029602db6780.
    On SLES 11 SP4 with kdump enabled mkinitrd calls mkdumprd which calls
    mkinitrd, but mkdumprd doesn't have any clue of the root device.
    
    Call mkinitrd with rootdev environment variable to tell them all
    what device to use as root.
    
    Tested-By: Cédric Bosdonnat <cbosdonnat@suse.com>

commit 3312889035da05ee06ffa965ee7afb187d533431
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 25 12:16:53 2017 +0100

    mllib: Export which in "stdlib mode".
    
    As with the previous commit, this was already being compiled in, but
    not exported, so there's no substantive change here.

commit 2742477b9254934f761721e4dcf95d2106143f08
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 24 15:46:52 2017 +0100

    mllib: Export prog, quiet, trace, verbose in "stdlib mode".
    
    These were already included in the .ml implementation file, but just
    weren't being exported in the interface, so there's no real change
    here.  It just allows these functions to be used.

commit b6fd73cff8b6dcd156518a9cdaa1eff312f07823
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 30 12:50:10 2017 +0200

    btrfs_replace: fix position of subcommand options
    
    btrfs-progs 4.11 is more strict with option parsing, so subcommand
    options must appear now before the subcommand arguments.

commit caeae6e5880961db00f8e27515af73933aa16db3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 22 11:31:45 2017 +0200

    v2v: add crypto support (RHBZ#1451665)
    
    Make use of the additional command line arguments, and API needed to
    decrypt LUKS partitions.  This extends to v2v the work done in other
    OCaml tools with commit 6b26a0cce4f1d6264bee88902b8931e39288c901,
    since it seems to be working fine after a basic testing.
    
    Related to: RHBZ#1362649

commit fd04ed89684a3d5b27d657f8e6adb4b5bc0c1622
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 18 22:34:12 2017 +0100

    Version 1.37.14.

commit 529b4ceaf010e48790ebb277e3ae6fba41eb635b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 18 15:59:38 2017 +0100

    lib: Add VIRTIO_DEVICE_NAME macro to handle virtio-mmio vs CCW vs virtio-PCI.
    
    Also move the macro into lib/launch-direct.c, since it is not used
    anywhere else (libvirt handles the differences in the libvirt
    backend).

commit 98bcb05800478a723ec5ca5dce5a9638092436a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 17 13:45:56 2017 +0200

    s390x: tests: 9p: Use virtio-9p-ccw as the 9p device in this test.

commit 050d2e8ae5a971060a91ed58ab72b2c5b9db31c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 17 13:38:43 2017 +0200

    s390x: tests: regressions: Skip IDE tests on S/390.
    
    IDE interface is not supported.

commit 4baaf35fcf764d544dedc329e706a0a0b8054b63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 16 19:58:59 2017 +0200

    s390x: launch: direct: Use virtio-*-ccw on this architecture.
    
    PCI devices don't exist/work.  You would see errors such as:
    
    qemu-system-s390x: -device virtio-rng-pci,rng=rng0: MSI-X support is mandatory in the S390 architecture

commit 46889f7a1c12fa1834bda675880c66e9a2cecf27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 17 11:38:05 2017 +0200

    init: Add comment that we should consider using /proc/consoles.
    
    Although we can't use it at the moment because it is incorrect
    on at least s390x (RHBZ#1351968).

commit 235cd757276889fb5a23d3bd68935c6472c80148
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 17 11:24:39 2017 +0200

    s390x: appliance: Use /dev/ttysclp0 for serial console.

commit 6d5f0a55f025f4bd27b9e797d56d84f937343c6b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 17 12:16:07 2017 +0200

    s390x: launch: direct: Use sclp as serial console on this architecture.
    
    The same change to the direct backend as made to the libvirt backend
    in the previous commit.

commit 604571de1b99b35ea07a8f178d9b30d4043a28ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 16 20:12:54 2017 +0200

    s390x: launch: libvirt: Use <console> device sclp for appliance debug messages (RHBZ#1376547).
    
    Thanks: Cole Robinson, Dan Horak, Thomas Huth.

commit 1290ce896b8bd2bebd961816cffb1077a271bec0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 15 14:41:03 2017 +0200

    v2v: linux: pass the root device when using SUSE's mkinitrd
    
    mkinitrd in SLE guests < 12 tries to get the root device by scanning the
    fstab: this will fail, since v2v already remapped the devices from
    hd*/sd* to vd* in the guest (including in its fstab).
    
    Since we know what is the root device in the appliance, pass it to
    mkinitrd directly, so it does not have to do guesswork.
    
    Thanks to: Cédric Bosdonnat, for reporting the issue, and testing
    the fix.

commit 7b11e60c2756eae1ec76984b318ab8c649729810
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 15 14:31:56 2017 +0200

    python: PEP 8: add empty line
    
    Small update for commit 45e046dac95ce6895af95832def7e40ad786e36f.
    
    This is just formatting, no behaviour changes.

commit 26c154673816dd342dffc1ab0c7be59202202180
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Thu May 11 21:21:39 2017 +0300

    python: check return value of Python object functions (RHBZ#1406906)
    
    Verify the returned values of Python Object constructor functions
    are not NULL before adding them to a collection.
    
    This is particularly relevant when constructing Unicode strings in
    Python 3 as they will return NULL if non UTF-8 characters are present.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit ce7d4060dae24c24f4b71ca3249b0219903c9926
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 12 17:13:55 2017 +0200

    appliance: update yara packages on openSUSE
    
    Add the package for the yara library as available on openSUSE Leap 42.2.
    'yara' is left there for now.
    
    Updates commit 2e24129da37656706b5a1d3b6bc83d4c089740bb.

commit 3b900e4f373c9ae29f2346389e857e107a2dd185
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 12 17:03:01 2017 +0200

    daemon: lvm: use 'yes' as boolean for lvm2
    
    It looks like older versions of lvm2 (recent enough to have selectors)
    do not recognize '1' (and '0') as boolean values.  Switch to 'yes',
    which seems to be supported.
    
    Updates commit 7367945647e774aec4b93c3bf13181212d3c6430.

commit 23f96a7bde3a301b63fbcd44e4613865c386ca56
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 11 14:32:18 2017 +0200

    python: improve few exceptions thrown on error
    
    Make use of functions and types that fit more, and that do the same job:
    - use PyErr_NoMemory() on malloc failure
    - use PyErr_SetFromErrno when setting an exception from an errno
    - throw TypeError if not getting a list when required

commit bf303ead941098c71d2f2232a75400812d3d3e18
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 9 17:47:32 2017 +0200

    python: use right func when PyString_FromStringAndSize is not there
    
    Fixes commit 9d25b4e56471f9c33ea6229a8b620fc800c240f8.
    
    Thanks to: Matteo Cafasso

commit ce205c8f3218f7b338177496b14b0398e1d053b2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 9 15:12:40 2017 +0200

    python: add simple wrappers for PyObject<->string functions
    
    The current need for #ifdef's based on the presence of
    PyString_FromString makes both the OCaml code of the generator, and the
    generated C code a mess to read.
    
    Hence, add three simple wrappers to make both the OCaml, and C code more
    readable, and easier to tweak in the future.
    
    This should be just refactoring, with no actual behaviour changes.
    
    Thanks to: Matteo Cafasso

commit 5ca0516c45cded2aa786dec1fa86a44bd04c8181
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 8 14:08:12 2017 +0100

    Version 1.37.13.

commit 739d3b0a34dd0ac902dd29b3928240f7692bc3f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 8 09:55:42 2017 +0100

    v2v: -i ova: Prefer pigz or pxz for uncompressing OVA files (RHBZ#1448739).
    
    If the parallel tools pigz or pxz are available, prefer them for
    uncompressing gz- and xz-compressed OVA files respectively.  If not
    available then gzip or xz are used as normal.

commit baf73994066f0e89fb0dc8138ad5da2e7bcf7804
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 8 09:50:17 2017 +0100

    v2v: -i ova: Refactor constructing zcat command.

commit 04dfdc23c3c9045fb5689ad6ece6e018e3075dde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 8 09:40:36 2017 +0100

    v2v: -i ova: Refactor untar function.

commit c9d72957494c81799e65f104aaee5f3195992349
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 27 11:50:31 2017 +0100

    v2v: -o qemu: Reimplement qemu command line using common/qemuopts.

commit 2ddcfccd1d90d44635466971c5bb9a4c71c8ae1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 27 10:45:28 2017 +0100

    launch: direct: Reimplement command line handling using qemuopts library.

commit a8bf43bd40df04cc31adb76e2d871689a3d0a7be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 27 10:42:19 2017 +0100

    configure: Drop --with-qemu-options / QEMU_OPTIONS.
    
    In its current form this is very hard to implement because it requires
    us to "unparse" the options, including removing any shell quoting.
    
    It wasn't implemented at all for the libvirt backend.
    
    Also contrary to the documentation, the configure script did not use
    these options for testing, but constructed its own set of qemu test
    options.

commit ce03d280e819b3af591f8d05662e6f74d52ab6ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 26 15:34:06 2017 +0100

    common: Add a simple mini-library for handling qemu command and config files.

commit adfe11561ba373640f8158716a0bebe2dfb45a60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 25 09:22:50 2017 +0100

    generator: Annotate returned strings which are devices or mountables.
    
    Previously the generator did not change any string returned from the
    daemon.  Thus guestfs_list_devices (for example) might return internal
    device names like /dev/vda (if virtio-blk was in use).
    
    This changes calls to the daemon so that returned strings are
    annotated as plain strings, devices or mountables:
    
        old               --->     new
      RString "uuid"             RString (RPlainString "uuid")
      RString "device"           RString (RDevice "device")
      RString "fs"               RString (RMountable "fs")
    
    For hash tables, keys and values must be annotated separately.  For
    example a hash table of mountables (keys) -> plain strings (values)
    would be annotated like this:
    
        old               --->     new
      RHashtable "fses"          RHashtable (RMountable, RPlainString, "fses")
    
    The daemon calls reverse_device_name_translation (currently a no-op)
    for devices and mountables.
    
    Note that this has no effect for calls which are handled on the
    library side.
    
    (cherry picked from commit 6b77cc196ecb8d7e1d73592ef65a189a7412c97c)

commit c38989c5dc03ee89aa726f54397ab73ac8088c95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 25 13:45:30 2017 +0100

    daemon: Move device_name_translation function to its own file.
    
    Just code motion.
    
    (cherry picked from commit c75d873568e95fb7845c6e3913347c4bf267f4e9)

commit d70af6c5b5adfb6dd9747eddc666425f055c88c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 20 15:40:20 2017 +0100

    lib: Remove internal details of device name translation from API docs.
    
    Remove much of the text detailing how device name translation
    happened.  Since we removed support for virtio-blk
    (commit 9e0294f88fbb30f592396894c9633041b7b89aaf) and deprecated the
    ‘iface’ parameter, only /dev/sdX device names should be visible
    through the public APIs, both in parameters and in return values from
    calls like guestfs_list_devices and guestfs_list_partitions.
    
    Note the above is in fact not true for the UML backend, but UML is
    broken in the kernel and in any case this will be fixed later.
    
    (cherry picked from commit 2727e589db216bf0731385966889a4f66dbfe225)

commit 5286ecf0de97d3cb9ffd24554245c911325107be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 28 10:24:00 2017 +0100

    launch: Error if you try to launch with too many drives.
    
    In particular the virt-rescue --scratch option makes it very easy to
    add huge numbers of drives.  Since the per-backend max_disks limit was
    never checked anywhere you could get peculiar failures.  Now you'll
    get a clear error message:
    
    $ virt-rescue --scratch=256
    libguestfs: error: too many drives have been added, the current backend only supports 255 drives

commit 2081a4c9246d29f3c709c0da9953b06686e96d27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 8 10:01:47 2017 +0100

    v2v: -i ova: Rearrange functions.
    
    No change, just move one function.

commit 4adc6a2791d1a095c43cf7fd48e86e2d57365bbd
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Thu May 4 18:56:47 2017 +0300

    appliance: search all types of appliances for each path separately
    
    This patch changes appliance search using paths with multiple directories. Now
    all appliance checks will be done separately for each directory. For example
    if the path LIBGUESTFS_PATH=/a:/b:/c, then all applainces are searched first in
    /a, then in /b and then in /c. It allows to flexibly configure the libguestfs
    to interact with different appliances.
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>

commit 6525c21bcb63b6727c676bf21bc2370d45d82f41
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 4 16:52:15 2017 +0200

    perl: remove 900-introspection.t from MANIFEST
    
    Fixes commit b06cc25a5837f62f2c51d9ed824cc55e5f1557da.

commit 2d5222b55012cbf26f9d83bb0e9956c29161c398
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Thu May 4 14:20:29 2017 +0300

    build: add ./configure --with-guestfs-path option
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>

commit 7da5a88278e30e28d6fdd0283405b3f8fefc16e2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 4 10:08:18 2017 +0200

    perl: drop %guestfs_introspection stuff
    
    It is not something standard, and actually unused by libguestfs itself.
    Possibly going to be used by the old virt-v2v (which was in Perl), but
    never used for that either.

commit 970d58aa7a9c558c921c053d1f40bbf74c9e2e28
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 3 15:15:45 2017 +0200

    inspector: validate resulting XML files
    
    Run xmllint to validate the XML output files of virt-inspector, so the
    schema is checked against actual output of virt-inspector.

commit 9be67cef451667ad3837c584b409c4fd80389d2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 28 09:59:23 2017 +0100

    common/options: Change drv struct to store drive index instead of device name.
    
    The device name is only used by guestfish (when using the -N option to
    prepare drives).  We constructed the device name very naively,
    basically ‘sprintf ("/dev/sd%c", next_drive)’.
    
    This stores the device index instead, and only constructs the device
    name in guestfish.  Also the device name is constructed properly using
    guestfs_int_drive_name so it can cope with #drives > 26.
    
    As a side effect of this change we can remove the extra parameter of
    the add_drives macro.
    
    Thanks: Pino Toscano

commit d2fe21c2e4c2999cff698b51d4cd559e3e01e67e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 21 13:19:49 2017 +0100

    generator: Don't permit certain String/stringt combinations.
    
    After the previous commit it become possible to construct various
    "impossible" argument types, such as lists of FileIn strings.  This
    commit prevents these from happening.

commit 93796f7f66cb572c0d17eac3a23f2d396e0379c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 21 12:59:07 2017 +0100

    generator: Simplify the handling of string parameters.
    
    Previously we had lots of types like String, Device, StringList,
    DeviceList, etc. where Device was just a String with magical
    properties (but only inside the daemon), and DeviceList was just a
    list of Device strings.
    
    Replace these with some simple top-level types:
    
      String
      StringList
    
    and move the magic into a subtype.
    
    The change is mechanical, for example:
    
        old                     --->    new
      FileIn "filename"               String (FileIn, "filename")
      DeviceList "devices"            StringList (Device, "devices")
    
    Handling BufferIn is sufficiently different from a plain String
    throughout all the bindings that it still uses a top-level type.
    (Compare with FileIn/FileOut where the only difference is in the
    protocol, but the bindings can uniformly treat it as a plain String.)
    
    There is no semantic change, and the generated files are identical
    except for a minor change in the (deprecated) Perl
    %guestfs_introspection table.

commit ae53cd467dbaa6f1c9a6e3cd8ca9453187f90016
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Tue May 2 15:35:06 2017 +0300

    v2v: bootloaders: search grub config for all distributions
    
    This patch improves the search of grub config on EFI partition. This
    means that the config will be found not only for rhel but also for
    many other distributions.  Tests were performed on the following
    distributions: centos, fedora, ubuntu, suse. In all cases, the config
    path was /boot/efi/EFI/*distname*/grub.cfg
    
    The main purpose of the patch is to improve support for converting of
    vm with UEFI for most distributions. Unfortunately this patch does not
    solve the problem for all distributions, for example Debian does not
    store grub config on the EFI partition, therefore for such
    distributions another solution is necessary.
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>

commit e20ace06929fd3345049e3fa125f80c414c3b3ad
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Apr 25 23:03:05 2017 +0300

    yara_scan: added API tests
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit f9852fcfa349df8b8477e80fdc8b06a4901e208a
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Apr 25 23:03:04 2017 +0300

    New API: yara_scan
    
    The yara_scan API parses the file generated by the daemon counterpart
    function and returns the list of yara_detection structs to the user.
    
    It writes the daemon's command output on a temporary file and parses it,
    deserialising the XDR formatted yara_detection structs.
    
    It returns to the caller the list of yara_detection structs generated by
    the internal_yara_scan command.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit d13c1f2cef5c8ec22ea535ba081159ed55632c1f
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Apr 25 23:03:03 2017 +0300

    New API: internal_yara_scan
    
    The internal_yara_scan runs the Yara engine with the previously loaded
    rules against the given file.
    
    For each rule matching against the scanned file, a struct containing
    the file name and the rule identifier is returned.
    
    The gathered list of yara_detection structs is serialised into XDR format
    and written to a file.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit db96d1302ac79f06f92af0920c9b3a943026a8e9
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Apr 25 23:03:02 2017 +0300

    New API: yara_destroy
    
    The yara_destroy API allows to claim resources back via the removal of
    the previously loaded Yara rules.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit bd70db5aac0e9906dc655bbc1c376e2fac8ae1d0
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Apr 25 23:03:01 2017 +0300

    New API: yara_load
    
    The yara_load API allows to load a set of Yara rules contained within a
    file on the host.
    
    Rules can be in binary format, as when compiled with yarac command, or
    in source code format. In the latter case, the rules will be first
    compiled and then loaded.
    
    Subsequent calls of the yara_load API will result in the discard of the
    previously loaded rules.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 3acb1460c39eb8f318d86245cadfd5573be57e7c
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Apr 25 23:03:00 2017 +0300

    appliance: add yara dependency
    
    libyara3 on Debian/Ubuntu
    yara on SUSE/RedHat
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit c86af3ffde5fc172d842a39ee3cf5d496af2b126
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Apr 25 23:02:59 2017 +0300

    daemon: expose file upload logic
    
    Allows other modules to use the same logic for uploading files.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit e99163a813a9b70a1e1cec6b5711c97463dc1c55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 2 10:57:53 2017 +0100

    v2v: -o rhv: Add Windows 2016 Server type in OVF output (RHBZ#1447202).
    
    Thanks: Kun Wei
    
    See also:
    https://github.com/oVirt/ovirt-engine/commit/d233325d7b808e8bae83645ac645dfea9dfe8407

commit d95082964b4506dfd3fb3b16e3041c1046521275
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Fri Apr 28 17:04:15 2017 +0300

    appliance: more reliable check for the supermin appliance
    
    At least two control files (packages and base.tar.gz) are necessary for the
    supermin appliance.
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>

commit dec8c2d25d9a8aeb5b691293666672309186471b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 26 16:34:17 2017 +0200

    v2v: -o glance: factorize common properties
    
    Many of the properties for disks are the same for all of them, so
    collect them only once, instead of doing that for every disk.
    
    Should be just code motion, with no behaviour change.

commit b8f88e4e9ed8299b28eff63c26fe4d17101a1b61
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 26 16:05:15 2017 +0200

    v2v: -o glance: add property for UEFI firmware (RHBZ#1445659)
    
    When converting a guest with UEFI firmware, set the also
    hw_firmware_type=uefi property for all the disks of the guest, so Nova
    can properly boot the guest.

commit 677c10ac9419818dd86505b6ef04c6811695bd60
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 12 17:58:40 2017 +0200

    appliance: add cdrkit-cdrtools-compat on openSUSE
    
    It looks like isoinfo is in that package since openSUSE Leap 42.1, so
    make sure to include it to not break the isoinfo* APIs.

commit bb40431eb7d9937f1c278d416c2d24ac9c2feb94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 25 22:52:47 2017 +0100

    Version 1.37.12.

commit 646f538c2fe5936c6d387cf5c0731f2e721848b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 25 12:49:12 2017 +0100

    generator: python: Omit unused parameter names in match cases.

commit eed24a811c77bf03128cad092d6f256870128f1c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 25 12:49:12 2017 +0100

    generator: perl: Omit unused parameter names in match cases.

commit f002301d9d5a8f5f2aca003261749e1225817156
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 25 12:37:01 2017 +0100

    daemon: Use CLEANUP_* functions to avoid an explicit free in stub functions.

commit a49519ecb70d5e7e47d7fda3a8ed75f8929464e2
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Apr 25 00:19:59 2017 +0300

    daemon: ignore unused return value in upload function
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit c0a3b129ac18bc10709c8217c5ed399e4b50fb96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 20 15:08:24 2017 +0100

    daemon: stubs.h is generated, so should be listed in generator_built.
    
    Fixes commit 20f190617aafcddd08f99c0abec4fef90426ec9e.

commit 9e1a7fc0047c4e8e125ed5a9df2e0b0faa58bda8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 20 15:07:23 2017 +0100

    generator: daemon: Move *RESOLVE* macros to an ordinary header file.
    
    It's clumsy to define these in the generator, as they are essentially
    just static text.

commit a98b204426725995045f6e35b69c1d8777d1eaf1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 20 13:48:58 2017 +0100

    generator: daemon: Replace ‘cancel_stmt’ with ‘is_filein’ flag.
    
    In every instance where we used the ‘cancel_stmt’ parameter of
    these macros:
    
      ABS_PATH
      NEED_ROOT
    
    the value was only ever ‘cancel_receive ()’ or empty.  We only use
    ‘cancel_receive’ for FileIn functions, so replace it with a simple
    flag for whether the current function is a FileIn function.
    
    This also removes some incorrect comments about macros that cannot be
    used with FileIn functions when in fact they can.

commit 97128c63279da5cbea6519e37d394932e68abf5e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 20 13:35:17 2017 +0100

    generator: daemon: Remove fail_stmt parameter from *RESOLVE* macros.
    
    As a simple consequence of the previous commit, every instance of the
    ‘fail_stmt’ parameter to one of the following macros:
    
      RESOLVE_DEVICE
      RESOLVE_MOUNTABLE
      REQUIRE_ROOT_OR_RESOLVE_DEVICE
      REQUIRE_ROOT_OR_RESOLVE_MOUNTABLE
    
    is now ‘return’ and therefore we can replace it in the macro and drop
    the parameter completely.

commit 1a7240695a1228dd56539799fde9e5b837793601
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 20 13:28:04 2017 +0100

    generator: daemon: Remove done label.
    
    As a simple consequence of the previous commit, the ‘done’ label can
    be removed, and any instance of ‘goto done’ can be replaced by
    ‘return’.

commit 149f6780d8da161cf9b75284dfb95501fb2fec05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 20 13:23:49 2017 +0100

    generator: daemon: Use a cleanup function to free XDR args struct.
    
    Previously stubs were generated like this:
    
      void
      fn_stub (XDR *xdr_in)
      {
        struct guestfs_fn_args args;
        ...
        // on error paths, ‘goto done’
        ...
      done:
        xdr_free ((xdrproc_t) xdr_guestfs_fn_args, (char *) &args);
      }
    
    This replaces the call to xdr_free with a generated cleanup function.

commit feb2f7fc78a557af21542ca42d3f3a4389d20d00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 20 13:00:21 2017 +0100

    generator: daemon: Get rid of useless done_no_free label.
    
    The generated code had:
    
        ...
      done_no_free:
        return;
      }
    
    There was no possible code between the label and the return statement,
    so both the label and the return statement are redundant.  The
    instances of ‘goto done_no_free’ can simply be replaced by ‘return’.
    
    The only small complication is that there is a label just before this
    which contains some optional code.  So we might have ended up with
    generated code looking like:
    
      done:
        // if there was no optional code, this would be empty
      }
    
    which provokes a parse error in C.  Therefore I had to add a semicolon
    after the ‘done:’ label.  This will be removed in a subsequent commit,
    so it's just to make the current commit bisectable.

commit 105df5641f12494827ce14361c74411d2f000c2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 18 13:59:16 2017 +0100

    tests: Replace test-max-disks with several tests.
    
    Replace the monolithic 'test-max-disks.pl' script with a test program
    written in C.  The program is completely equivalent to the old script,
    except for the enhancement that it is able to detect if disks are
    added to the appliance in the wrong order.
    
    The tests themselves are split out into some shell scripts:
    
     - test-27-disks: Fully tests 27 disks.
       This is the minimum supported configuration for all backends.
    
     - test-255-disks: Fully tests 255 disks.
       This is the most disks that libguestfs up to 1.36 supported.
    
     - test-add-lots-of-disks: Add ‘a lot’ of disks and exit (without
       any further testing).  This is meant to try to exercise > 255
       disk case but without being as slow as a test of the max number
       of disks (which takes ages, even for as few as 4000 disks).
    
     - test-max-disks: Test the maximum possible number of disks.
       The maximum depends on several factors, notably which backend
       is in use, and the limit on the number of open files.
    
       ‘test-max-disks’ is a slow test.

commit 5a2846c897f8aa1e2cadbd384e3f3ff97b4145e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 19 17:07:55 2017 +0100

    daemon: Add an assertion to suppress a warning with GCC.
    
    swap.c: In function 'do_mkswap_U':
    swap.c:62:9: error: argument 1 null where non-null expected [-Werror=nonnull]
         if (strlen (label) > SWAP_LABEL_MAX) {
             ^~~~~~~~~~~~~~

commit 55c78217a12b0e4e8838f917cde1e808e2dc4cac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 19 16:55:16 2017 +0100

    daemon: Remove use of fixed-size stack buffers.
    
    GCC 7 complains that the fixed size buffers are not large enough
    (at least in theory) when using ‘-O3 -mtune=broadwell’.

commit 8405bd94a15645e36f3a56a06a4bfced42714aed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 18 21:40:56 2017 +0100

    lib: direct: Remove support for virtio-blk as the default.
    
    virtio-scsi has been supported in qemu since 2012, and it is superior
    in every respect to virtio-blk.  There's no reason to still be using
    virtio-blk.
    
    virtio-scsi support was initially added in 2012
    (commit 0c0a7d0d868d153adf0600189f771459e1068b0a).
    
    You can still use virtio-blk using the (deprecated) iface parameter,
    but don't do that in new code.

commit 199e1277a88c68aa0e749c252651aa5b48dbd667
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 19 17:26:03 2017 +0100

    lib: Reimplement is_zero.
    
    As suggested by Eric Blake.

commit 6e3417b989af75664e3ce5b44ba3c5430f8b497f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 19 14:32:49 2017 +0100

    daemon: Move the useful 'is_zero' function into common code.
    
    This is largely a simple refactoring, but it combines another
    definition of this function from virt-builder which had a slightly
    different prototype.

commit 98d4cd6ed5f38fa3f324a467324ca66da8ff8fc2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 18 12:38:21 2017 +0100

    lib: libvirt: Document virtio-scsi controller/bus/target/unit fields.
    
    This adds comments documenting what the fields correspond to in qemu,
    and the range of each field.

commit 1c19f889b91df3e3565cfd4f24d4268cad6a4898
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 15 12:31:08 2017 +0100

    v2v: ovf: Use push_back instead of append.
    
    Microscopically more efficient.
    
    Updates commit dac5fc53acdd1e51be2957c67e1e063e2132e680.

commit 3e2fe216eeb1edd25f7339b63534aa4a39d743da
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Apr 13 18:49:33 2017 +0200

    v2v: ovf: store CPU model for oVirt
    
    If CPU model is available store it in OVF for oVirt. This affects
    -o rhev and -o vdsm.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 11a686dcf77bc3151ae4c9802b36b350c41205ed
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Thu Apr 13 19:44:07 2017 +0300

    daemon: add udev_settle_file to is_root_device
    
    It fixes a fail with ENOENT when device is not yet present after system boot.
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>

commit 009ea63dd8197b3febd9b494b8d2b209b42e275f
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Thu Apr 13 19:44:06 2017 +0300

    daemon: run 'udevadm settle' with --exit-if-exists option
    
    Add udev_settle_file() to run 'udevadm settle' with --exit-if-exists option. It
    will slightly reduce the waiting-time for pending events if we need to wait
    for events related to a particular device/file.
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>
    
    RWMJ:
     - Use local variable for MAX_ARGS.
     - Use commandv instead of commandrv, fix checking of return code.

commit 1971355701e18b4271f1310904b154488768a188
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 13 17:08:17 2017 +0100

    Version 1.37.11.

commit b0ad11996ab9965626fad96f633b688688a9d5e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 12 23:09:32 2017 +0100

    v2v: windows: Install both legacy and modern virtio keys in the registry (RHBZ#1431579).
    
    Thanks: Kun Wei (for finding the bug)
    Thanks: Ladi Prosek (for diagnosing the problem and proposing the fix)

commit bbed7455e2d2b0d17d0c130a43d5f2fa6943c03d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 13 00:10:28 2017 +0100

    mllib: Bind %identity C primitive to Common_utils.identity.

commit fadb2c215e9192407a20ee4ccecead90c542a2b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 13 10:11:00 2017 +0100

    v2v: -o rhv: Document how to test RHV conversions without RHV.

commit 30d51ad64f6ce6924534a0c5aecb9a7323fc8a7f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 13 09:57:37 2017 +0100

    v2v: -o rhv: Quote parameter to rm -rf.
    
    This was safe before, the change just prevents accidental errors.

commit d8b528b9a4317f601e15dcacf8bedc14aba43a54
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 12 08:32:58 2017 +0100

    v2v: tests: Fix -i vmx test so it is more stable.
    
    When running under valgrind, the process takes a fraction of a second
    to start up, changing the "Opening the guest" timestamp, which broke
    the test.
    
    Fixes commit ca40078cdda9167d4658ddfe24c828c7ee76be37.

commit 9bc1edaf22b2478931b92b78c03213bd97350742
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 11 23:41:51 2017 +0100

    Version 1.37.10.

commit 646d48ffd7cd2717380af998ee866e9ee8bb2bb1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 10 11:29:17 2017 +0200

    builder: various improvements to the documentation
    
    - convert the Fedora 20 examples to Fedora 25
    - convert the yum examples to dnf
    - convert the Debian 7 examples to Debian 8
    - mention that --core updates all the installed packages, not "core"
      ones
    - convert i386 to i686 for the Fedora 32bit examples
    - mention that autogenerated root passwords are printed on stdout
    - mention --get-kernel is deprecated in favour of virt-get-kernel
    - update URL to the Puppet installation documentation
    - edit the repository index documentation to make it clearer
      non-compressed templates are supported
    - remove old wrong paragraph about customization specified in command
      line not processed in the same order
    - use --install instead of --run-command '$pkgmgr install ...'
    - other minor changes

commit b4afcf1dac35e559306676fa40d59a306e25bce6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 10 15:24:26 2017 +0100

    v2v: Implement -i vmx to read VMware vmx files directly (RHBZ#1441197).
    
    This is a mostly complete implementation of a VMX parser and input
    class for virt-v2v.  It parses the name, memory size, CPU topology,
    firmware, video, sound, hard disks, removable disks and network
    interfaces from the VMX file.  It only omits support for floppies and
    SCSI CD-ROMs.
    
    The input class is split into two major parts: a generic VMX file
    parser (Parse_vmx), and the Input_vmx module which translates the VMX
    tree into the source device model.
    
    This also contains tests.  There are simple unit tests of the
    Parse_vmx module, and also some more complete parsing tests taken from
    real guests.

commit 5933e2d98d0812ea15fe7a0dac1715d2d94e3f57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 11 08:32:04 2017 +0100

    mllib: Add Char.hexdigit function.
    
    Same as the function defined in fish/fish.c.

commit ea048431c2ac2824378a1af3036aae3ced90da78
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 11 08:29:47 2017 +0100

    ocaml: Add Bytes.sub_string function to Bytes compat module.
    
    This is only used when OCaml < 4.02 (eg. RHEL 7).  For more recent
    versions the real Bytes.sub_string function is used instead.

commit ffe375d3809e4bfc6e59d794e8432c649ad8632a
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Apr 11 13:18:01 2017 +0200

    v2v: ovf: Add virtio-rng and memory balloon device
    
    This affects -o rhv and -o vdsm.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit a6dc06a25c28a02b68112d1442caeb16e8c141f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 11 14:52:24 2017 +0100

    v2v: -o qemu: Add a comment about ICH9 audio device.
    
    Just a comment.

commit 359bfefa244ee6ca1d774ccbbf25f6cf65c9b1c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 11 12:16:51 2017 +0100

    v2v: -o qemu: Fix creation of ICH6 sound device.
    
    Fixes commit f6ece2c01a9a1a43d6715103e7dbdda0f09ee862.

commit 7c6e66d8c1977641afcbebc422807b7b01063d48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 7 21:02:04 2017 +0100

    v2v: -o qemu: Use 'commas' function for qemu comma-separated parameters.
    
    This actually makes no difference, but is "more correct" because the
    commas function handles quoting correctly.
    
    Fixes commit d6e59ddfcd15d79d245ef96f63fc31df2a62243c.

commit 372ea443491c0c4e49cda8250d791e7858d366c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 6 15:10:39 2017 +0100

    Version 1.37.9.

commit d93b72bf35d6f34e80206a3fc3da468485969df1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 6 11:15:22 2017 +0100

    builder: Allow GnuPG v2 or v1 to be used (RHBZ#1438939).
    
    All of the GPG commands we run are compatible with either v1 or v2, so
    this simply involves looking for either gpg2 or gpg binaries at
    runtime.

commit d2a9f66f34dce78831cbecfc5ad9600adabd121e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 5 14:29:28 2017 +0100

    v2v: windows: Prefer virtio-win ISO over directory (RHBZ#1438794).
    
    The exploded tree has many missing drivers (eg. virtio-rng).
    The ISO contains the complete set, so prefer it.

commit 5b89e83ba69eaf2522da1e127812a733fd626ede
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 5 14:19:31 2017 +0100

    v2v: -o qemu: Add virtio-rng, balloon and pvpanic to output (RHBZ#1438794).

commit 01338ffad45593a3fc090ccb1b986cba59c2f204
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 5 15:28:56 2017 +0100

    v2v: -o glance: Add virtio-rng to output properties (RHBZ#1438794).
    
    Only virtio-rng is supported at the time.

commit 57a7457e53b295a7d7f23d93077dd2d7e8082915
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 5 14:19:31 2017 +0100

    v2v: -o libvirt: Add virtio-rng, balloon and pvpanic to output XML (RHBZ#1438794).
    
    When outputting libvirt XML, create virtio-rng, a memory balloon
    device, and a pvpanic device, if the guest supports it.
    
    Thanks: Daniel Berrangé for advice on memballoon

commit d295d6e510a4fb251d545c52c0a9d6dccabe6f78
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 5 13:38:37 2017 +0100

    v2v: Extend guestcaps to record drivers for virtio-rng, balloon and pvpanic.
    
    Extend the guestcaps structure so it records whether a guest supports
    (or drivers were added) for virtio-rng, the virtio memory balloon, and
    the ISA pvpanic device.

commit 743605af77d90a7103fb0401d8c5fd3bb68c8cd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 6 10:24:50 2017 +0100

    v2v: linux: Print best kernel in debug output.
    
    After sorting kernels to find the best one, print the best kernel if
    verbose is enabled.

commit 37e50dc3a60c1fba9e10a5b45e18dcb59db09ab1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 5 13:55:28 2017 +0100

    v2v: linux: Replace 'ki_supports_virtio' field.
    
    Previously the kernel_info field 'ki_supports_virtio' really meant
    that the kernel supports virtio-net.  That was used as a proxy to mean
    the kernel supports virtio in general.
    
    This change splits the field so we explicitly test for both virtio-blk
    and virtio-net drivers, and store the results as separate fields.
    
    The patch is straightforward, except for the change to the
    'rebuild_initrd' function.  Instead of making the module list
    conditional on whether virtio-net is available and using the old
    (probably wrong) fallback if it happens to be unavailable, this now
    tries to enable the common virtio kernel modules (just the ones needed
    for virtio-blk and virtio-net to work).  The fallback is only used if
    none of the common virtio modules can be found.
    
    This also adds a print_kernel_info function (as the
    string_of_kernel_info function was unwieldy) and exports it from the
    module.

commit 573e94d1eef437b3a89de7cebdfe88c37d647bd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 5 13:44:00 2017 +0100

    v2v: linux: Fix Xen PV-only detection.
    
    We want to detect if a Linux kernel is Xen PV only ("PV-only").  Such
    a kernel will not boot on KVM, and if a guest has only PV-only
    kernels, it will not be able to boot at all on the target.
    
    Our previous test was wrong.  It tested whether the xennet.ko module
    exists.  This module was renamed in more recent kernels (to
    xen-netfront.ko), so it happened to not detect modern kernels as
    PV-only, but this was by chance.
    
    Modern kernel images can be compiled with Xen PV guest support.  The
    same image can boot on baremetal, KVM, Xen PV or Xen HVM.  Testing if
    the xennet (or xen-netfront) module exists is irrelevant to this.
    
    This test, which is based on ideas from Laszlo Ersek and
    
      https://wiki.xen.org/wiki/Xen_Project_Software_Overview#Guest_Types
    
    uses the kernel config test CONFIG_X86_XEN || CONFIG_X86_64_XEN to
    determine PV-only kernels.
    
    Note that these CONFIG flags were never upstream, and existed only in
    Linux kernels forked by Xen ("XenLinux").  By the time Xen guest
    support was added upstream, it was implemented using pvops support, so
    a single image could boot on Xen and non-Xen as described above, and
    these flags were no longer used.
    
    Updates commit 7eb219d1938968c4d6bffda038aaace936f7efbf.
    
    Thanks: Laszlo Ersek.

commit 9a3bdba8dfcad036ef7c37e550e8f013b5f32016
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 5 13:35:58 2017 +0100

    v2v: linux: Don't return virtio flag from configure_kernel function.
    
    This is pure refactoring, no change to functionality.

commit df5ad1313a8df1c156bf3812d71ff2f41f1787e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 5 12:24:44 2017 +0100

    v2v: Rename OVF module to Create_ovf.
    
    It's not a general OVF module at all.  It only creates OVF,
    and only for RHV.

commit 4a40a885ae435ef6bd62253397e5c3bc04c7e9e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 4 14:37:56 2017 +0100

    Use Unicode single quotes ‘’ in place of short single quoted strings throughout.
    
    Only in end-user messages and documentation.  This change was done
    mostly mechanically using the Perl script attached below.
    
    I also changed don't -> don’t etc and made some other simple fixes.
    
    See also: https://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
    
    ----------
     #!/usr/bin/perl -w
    
    use strict;
    use Locale::PO;
    
    my $re = qr{'([-\w%.,=?*/]+)'};
    
    my %files = ();
    
    foreach my $filename ("po/libguestfs.pot", "po-docs/libguestfs-docs.pot") {
        my $poref = Locale::PO->load_file_asarray($filename);
    
        foreach my $po (@$poref) {
            if ($po->msgid =~ $re) {
                my @refs = split /\s+/, $po->reference;
                foreach my $ref (@refs) {
                    my ($file, $lineno) = split /:/, $ref, 2;
                    $file =~ s{^\.\./}{};
                    if (exists $files{$file}) {
                        push @{$files{$file}}, $lineno;
                    } else {
                        $files{$file} = [$lineno];
                    }
                }
            }
        }
    }
    
    foreach my $file (sort keys %files) {
        unless (-w $file) {
            warn "warning: $file is probably generated\n"; # have to edit generator
            next;
        }
        my @lines = sort { $a <=> $b } @{$files{$file}};
    
        #print "editing $file at lines ", join (", ", @lines), " ...\n";
        open FILE, "<$file" or die "$file: $!";
        my @all = ();
        push @all, $_ while <FILE>;
        close FILE;
    
        my $ext = $file;
        $ext =~ s/^.*\.//;
    
        foreach (@lines) {
            # Don't mess with verbatim sections in POD files.
            next if $ext eq "pod" && $all[$_-1] =~ m/^ /;
    
            unless ($all[$_-1] =~ $re) {
                # this can happen for multi-line strings, have to edit it
                # by hand
                warn "warning: $file:$_ does not contain expected content\n";
                next;
            }
            $all[$_-1] =~ s/$re/‘$1’/g;
        }
    
        rename "$file", "$file.bak";
        open FILE, ">$file" or die "$file: $!";
        print FILE $_ for @all;
        close FILE;
        my $mode = (stat ("$file.bak"))[2];
        chmod ($mode & 0777, "$file");
    }

commit ab6cf265e7e283f2a5ce03b7e8a6954dc4893bb2
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Mon Apr 3 19:44:45 2017 +0300

    v2v: windows convert: fix virtio block driver installation for w10/w2k16
    
    This patch fixes the problem of the first boot after installation virtio block
    drivers on Windows 10 / Server 2016. The problem is related to the change in
    the behavior of Windows-Kernel-Pnp. To fix we need to add a field "Version" to
    HKLM/SYSTEM/DriverDatabase/DriverPackages/drv_inf_label then Windows-Kernel-Pnp
    will be able to correctly install the virtio block driver.
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>

commit 44da0fe4ecc0478e1a4ca5ce79dffea0bb0f7b9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 31 11:47:34 2017 +0100

    po: Fix charset=CHARSET -> charset=utf-8 in pot file.

commit 239eeb3092b4c38a93323d2e7c93776708ce8191
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 30 22:11:56 2017 +0100

    Replace possessive ASCII apostrophe ('s) with Unicode apostrophe (’s).
    
    Only replaced in end-user messages and documentation, not in code,
    comments, or anything else that's not end-user visible.
    
    See: https://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html

commit de828a0c410c7f156d77f6e8d7e97b4e72083f51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 30 21:58:46 2017 +0100

    Use Unicode single quotes ‘’ in place of `' in strings throughout.
    
    See: https://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html

commit a002fd49ec3055494e52c044a521ccd1d143ce9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 31 09:51:17 2017 +0100

    perl: Add =encoding to Sys::Guestfs man page.
    
    Otherwise the man page cannot contain any non-7-bit-ASCII characters.
    
    The test error seen was:
    
    Failed test 'POD test for blib/lib/Sys/Guestfs.pm'
    at /usr/share/perl5/vendor_perl/Test/Pod.pm line 187.
    Wide character in print at /usr/share/perl5/vendor_perl/Test2/Formatter/TAP.pm line 112.
    blib/lib/Sys/Guestfs.pm (1811): Non-ASCII character seen before =encoding in 'caller’s'. Assuming UTF-8
    Looks like you failed 1 test of 1.

commit 5a86e23cd86fb759d20638ecbcf8f6fa814ad1fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 31 09:13:10 2017 +0100

    docs: Fix documentation for btrfs_group_limit API.

commit a4511c18d8ab3fb192a4fc7dbdeb714e7cdf6eb3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 30 22:11:15 2017 +0100

    v2v: utils: Remove another reference to kraxel's OVMF repo.
    
    Updates commit 889386f8c6088e57fd68f2bb6bf85f69ecfc6f6c.

commit 3a3c617af15ad0c1b34767c8e2902f11e41e98d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 30 21:40:58 2017 +0100

    Version 1.37.8.

commit d7a33ad848ddce6f35a0386cec4025ad63f7a6e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 30 19:34:29 2017 +0100

    p2v: tests: Fix fake scp command so it can handle multiple local files.
    
    Fixes commit d178deeeb814471b9d70431626b6cd515a21d0c1.

commit a4870d5718b0743414a966cf9a8384aae8acd4ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 30 14:45:47 2017 +0100

    p2v: Fix list of files in documentation.

commit e3209644d5db96937614192f0126a271d5c417ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 30 13:13:03 2017 +0100

    p2v: Run fewer 'scp' commands.
    
    Each scp command takes a considerable amount of time -- several
    seconds -- because it must set up, authenticate and tear down a new
    connection.  Avoid this by combining several copies into a single
    command.
    
    We still have to use two scp commands because we want to check that
    some files are copied and ignore failures in a second set of
    informational files.

commit d842238e6ba30d1d1f39f428a110417c3fef4e5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 28 23:03:31 2017 +0100

    p2v, v2v: Ensure the full version is always available in several places.
    
    Ensure the full version of virt-v2v and virt-p2v is available in the
    conversion log file, the only log file that we reliably get from users
    and customers.  "Full version" means the major, minor, release and
    extra fields.  The extra field is especially important as it contains
    the downstream package release in Fedora, RHEL etc.
    
    This change saves the virt-p2v version as a comment in the
    physical.xml file, which is included in full in the conversion log (by
    virt-v2v).
    
    It also ensures that the initial virt-v2v debug message contains the
    full version number including the 'extra' field.
    
      $ cat virt-v2v-conversion-log.txt
      virt-v2v: libguestfs 1.37.7local,libvirt (x86_64)
      ...
      <!-- virt-p2v 1.37.7local,libvirt -->
    
    It also adds 'p2v-version' and 'v2v-version' files in the virt-p2v
    debug directory.  These are strictly superfluous but could be useful
    for end users.
    
      $ cat p2v-version
      virt-p2v 1.37.7local,libvirt
      $ cat v2v-version
      virt-v2v 1.37.7local,libvirt

commit 9d2e67b70ce5dd52db38310198eae2fba3190f67
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 30 13:27:26 2017 +0200

    p2v: use standard license type in about dialog
    
    GtkAboutDialog in GTK+ 3 can be configured with few standard licenses,
    including GPL2+.  Thus, just set that property, so the about dialog will
    show its own license text, and there is no need for our custom one.

commit f6a7e73df2ba1ee25d8e1abc19fce53bc1f776c2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 30 13:15:54 2017 +0200

    p2v: move the license text to gui.c
    
    It is used only for the about dialog, and this way it will be easier
    to disable.

commit bd65894a09e6a7828d51dd81ef7cb5f4a84448df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 30 12:27:57 2017 +0100

    p2v: Rebuild dependencies.* files if config.status changes.
    
    If you switch from ./configure --with-gtk=2 to =3 (or vice versa) the
    dependencies files don't get rebuilt.  As a result the wrong Gtk
    libraries can be included in the ISO and virt-p2v won't run.

commit b9f25ad70202509d3487f3bb584c0e0397057745
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 30 12:27:39 2017 +0100

    docs: security: Document new CVEs in PCRE which may affect inspection.

commit 9cea1642261b972517d48fb0b74be04455d2ebd6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 29 18:54:49 2017 +0200

    mllib: cast integer pointers to intptr_t as intermediate step
    
    This make sure there is no mismatch between the size of the integer
    value that Int64_val returns, and the size of the guestfs_h pointer.
    
    This should fix the warning on 32bit environments (and thus build, when
    --enable-werror is enabled).

commit 73089f84a174f5d0f95027165b1d5e0b4b8589ff
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 29 15:57:40 2017 +0200

    automake2junit.ml: escape text in message of <skipped>
    
    Escape XML characters in the logs to use as message for <skipped>, so
    special characters such as &, ", and < do not make the whole XML
    invalid.

commit 0488ccbb9f3108797a21430733693a56dde0c3c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 27 17:41:32 2017 +0100

    v2v: In --help output, note that --compressed only applies to -of qcow2.
    
    Just a minor documentation change.

commit b082a2836f09e9fc6cff938269f23fc9b4f4e55f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 25 23:34:09 2017 +0000

    rescue: Don't document --suggest option in --help output.
    
    Also fix the docs test to ignore it.
    
    Updates/fixes commit 33d2ae796119ae5dd38e2afcbf1ba4216bd99846.

commit 382c8ccf799221a87bfb4f88f118c3f1c3c28448
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 25 18:29:35 2017 +0000

    dist: Add AUTHORS to EXTRA_DIST and remove from dist-hook.
    
    It's a normal file now and can be distributed in the usual way.
    
    Fixes commit 34755dd86a4c7d9a83a76e3a9b44e303918ded2f.

commit 383e715889ec9365b7bc25851c3a4dd38f9ebc8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 25 13:12:10 2017 +0000

    generator, p2v: Generate AUTHORS and p2v/about-authors.c from a single place.
    
    This also improves the "Credits" box in virt-p2v.  With Gtk >= 3.4
    this can now show all contributors organized by the nature of their
    contribution.

commit a0246ee8ecebe28bcc6bd607b80a591b3472a68e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 25 12:11:48 2017 +0000

    docs: hacking: Document 'make maintainer-*' targets.

commit 3fea871d9255f74dc4a71df8d6921d9546ed79e2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 25 12:03:23 2017 +0000

    docs: hacking: Fix the headings.
    
    Just grouping things more logically.

commit 25d359cb1a5db916c818fb16251f04fe537d6976
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 24 22:52:02 2017 +0000

    rescue: docs: Note that you can run virt-rescue on disks too.

commit 15330285e1cb197a1b9d72c4d317d16c29232ad5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 24 22:51:06 2017 +0000

    rescue: docs: It is no longer necessary to mount filesystems by hand.
    
    Fix the manual page to reflect the new -i option.
    
    Fixes commit 33d2ae796119ae5dd38e2afcbf1ba4216bd99846.

commit 3e40d9fa0b7669c0daf6ff33e94f72299a2b4919
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 24 14:58:32 2017 +0000

    Version 1.37.7.

commit 237d1428ff97e6248e7c0c5bc9cf058e590d195c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 23 14:19:39 2017 +0000

    p2v: Use lscpu instead of libvirt to get CPU information.
    
    Don't get the CPU information from libvirt, because including libvirt
    and all dependencies in the virt-p2v ISO bloats everything.
    
    Instead get most of the information we need from the util-linux
    program 'lscpu'.
    
    Unfortunately the CPU model cannot be retrieved.
    
    Example output:
    
      $ ./run virt-p2v --cmdline="p2v.dump_config_and_exit"
      [...]
      cpu vendor . . .   Intel
      cpu sockets  . .   2
      cpu cores  . . .   8
      cpu threads  . .   1
      flags  . . . . .   acpi apic pae
    
    This updates commit 963d6c3be7cd91c0373f67cfdd95c4f1dad1452f.

commit e88d99001ea3ff72f1a69eb9259a42e408a23874
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 21 17:02:08 2017 +0000

    p2v: Move code to generate physical XML to a separate file.
    
    This is pure refactoring, except that I have removed the definition
    xmlBufferDetach since that function is not used.

commit 21b34b05e2ec45119a04492720c04681294ac3bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 21 11:28:36 2017 +0000

    p2v: Calculate offset of the Real Time Clock from UTC.
    
    Calculate the offset of the physical host's Real Time Clock (RTC) from
    UTC and pass this to virt-v2v through the libvirt XML description of
    the physical machine.
    
    The libvirt XML is modified to add one of the following:
    
    (no <clock/> element)
    
     - if the RTC could not be read or there was some other time
       calculation error.
    
    <clock offset='utc' />
    
     - if the RTC is the same as UTC.
    
    <clock offset='localtime' />
    
     - if the RTC is in local time.
    
       It's not possible to distinguish between UTC and localtime in
       timezones that lie along the Greenwich Meridian (obviously
       including the UK), when daylight savings time is not in effect.  In
       that case, UTC is chosen.
    
       Necessarily in timezones that use DST, this depends on when
       virt-p2v is run, so in the unusual case where a physical machine is
       switched off for a long time and then booted directly into virt-p2v
       when DST has changed, the calculation can be wrong.
    
    <clock offset='variable' basis='utc' adjustment='<seconds>' />
    
     - if the RTC is some other offset to UTC, other than equal to UTC or
       localtime.

commit 0f36c22decaba5ce29c3a6e6e3748f01e775cb7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 24 11:19:27 2017 +0000

    tests: v2v: -i ova: Fix test for reordered XML.
    
    Commit 8e617b792f9c7cc8131ba59c0b0a9c545356778d reversed the order in
    which the <features> and <os> sections appear in the XML.

commit f5ea7cd9a2bc394783941b9a5455f82bd5bb17ac
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 24 11:04:14 2017 +0100

    inspect: get a more common size icon for ALT Linux guests (RHBZ#1433937)
    
    A 64px icon does not exists everywhere, so just use a 48px one.
    
    Updates commit bc54e0d605682385f460c6e90ba87c5a48f8077e and
    commit 9928296c1ca8df5bd8f108ed00039adc6468cac3.
    
    Thanks to: Xiang Hua Chen.

commit ba733b4a471f0e2953f32a12fa80dbd21ee465e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 24 08:59:53 2017 +0000

    bash: Implement tab completion for virt-win-reg (RHBZ#1367738).
    
    This only implements long and short options.
    
    Thanks: Ming Xie.

commit c33ee105689b5515ddd2dcd4e82fa7c0ecd58166
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 22 15:44:18 2017 +0000

    v2v: xen: Require direct backend when doing Xen conversions over SSH.
    
    Unfortunately libvirt has another bug related to the qemu
    ssh driver, as described here:
    
      https://bugzilla.redhat.com/show_bug.cgi?id=1434651#c3
    
    (The libvirt bug is https://bugzilla.redhat.com/1140166)
    
    Until this bug is fixed we have to require the direct backend to be
    used for xen+ssh conversions.
    
    This partially reverts commit ecbf09385033ba0acf14e914927ec81ad20a5308.

commit 48a2f49336a5295eea08fc4f7f2478e89fb76087
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 22 17:10:42 2017 +0100

    inspect: improve detection of Mageia install discs
    
    Check for a "product.id" file in an architecture-specific subdirectory
    of the main partition, and use its data to improve the data on the
    media.
    
    Only Mageia as distribution name is recognized there, since most
    probably this file will not be available on other distros.

commit 5eea2a152021030b55fc0e8e3cc8c58e7695d723
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 22 10:57:20 2017 +0100

    dib: implement IMAGE_ELEMENT_YAML
    
    Export a new environment variable for extra-data.d scripts, that
    contains a YAML representation of the elements in use.
    
    This is a new addition in d-i-b 2.0.

commit fdc3cb40c1012e1b00933aff50f6c859fb593b02
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 20 17:52:18 2017 +0100

    dib: require a Python interpreter
    
    d-i-b 2.0 is written in Python, and thus it passes the information about
    the interpreter used for it (sys.executable) to the scripts that need
    it; this mechanism replaces the old discovery of what is the default
    Python interpreter in the system.
    
    Since we are not Python-based, look for 'python' and use it as default
    interpreter, with the --python command line option to set a different
    one.
    
    The only place where it is used so far are extra-data.d scripts; in case
    it will be used also in other out-of-chroot phases, a different solution
    will be needed.

commit 3d11be9999341aa814a1220aa77a5e877495363d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 20 17:43:26 2017 +0100

    dib: extract get_required_tool out of require_tool
    
    Extract from require_tool an helper function to search for the tool, and
    return the found path (instead of ignoring it).

commit 4da0e61402f2d670c880fbc65cc64b7b243c89be
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 20 16:24:12 2017 +0100

    dib: export IMAGE_BLOCK_DEVICE_WITHOUT_PART
    
    New environment variable exported by d-i-b 2.0.

commit abe5246694f1fb2c9c32019108c37bbe33a2949d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 20 16:18:25 2017 +0100

    dib: implement get_image_element_array stuff
    
    Output the get_image_element_array function like d-i-b does, together
    with the eval stuff needed to make it work.
    
    get_image_element_array is basically a bash array, with the keys are the
    used elements, and the values are the paths of each element; it is a new
    addition in d-i-b 2.0.
    
    This is used so far only for the extra-data.d phase.

commit 1822d926a5bb198580bfce8b86e6fbcea4ec15a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 22 10:30:12 2017 +0000

    bash: Add a bash completion script for virt-v2v-copy-to-local (RHBZ#1367738).
    
    Thanks: Ming Xie

commit e38ee5d71605d43150fe3f692dee95cabcc6f444
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 21 17:19:52 2017 +0000

    p2v: gui: Change mnemonics so 's' is not used twice (RHBZ#1379289).
    
    Change mnemonics so 's' is not used twice:
    
      Start Conversion: 's' -> 'c'
      Output Connection: 'c' -> 'o'
      Output Storage: continues to use 's'
    
    Thanks: Ming Xie.

commit af5e6511f213a1342be05e5dab9bfe0f39200456
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 21 13:12:09 2017 +0000

    p2v: Allow setting QEMU_OPTIONS when testing qemu in a VM.
    
    Also document both QEMU and QEMU_OPTIONS in guestfs-hacking(1).

commit ae9bde27f581e6c8a61c0c64a05b4e92487f8c26
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 20 13:15:52 2017 +0000

    daemon: selinux: Add setfiles -v flag when verbose.
    
    This shows which files are being relabelled.  Also only use -q
    (suppress non-error output) when we are not verbose.

commit 0899b13b500df6fe42b3640c893be1eb08fcc8ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 20 16:54:51 2017 +0000

    daemon: selinux: Add setfiles -m option to suppress extra excludes (RHBZ#1433577).

commit 164b25542eefcc61327e1e04ec909c9318938546
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 20 15:02:33 2017 +0000

    v2v: inspect source: Don't tell people twice to run virt-v2v -v -x (RHBZ#1167623).
    
    There were two related bugs in the virt-v2v error messages when source
    inspection failed.
    
    Firstly it would print the message about running 'virt-v2v -v -x' twice:
    
      virt-v2v: error: inspection could not detect the source guest (or physical
      machine).
    
      Assuming that you are running virt-v2v/virt-p2v on a source which is
      supported (and not, for example, a blank disk), then this should not
      happen.  You should run 'virt-v2v -v -x ... >& log' and attach the complete
      log to a new bug report (see http://libguestfs.org).
    
      No root device found in this operating system image.
    
      If reporting bugs, run virt-v2v with debugging enabled and include the
      complete output:
    
        virt-v2v -v -x [...]
    
    And secondly it would tell you to run virt-v2v -v -x even if you were
    running with verbose messages.
    
    Further fix for https://bugzilla.redhat.com/show_bug.cgi?id=1167623
    which updates commit ab7197476de1cb3c8727caf4da429f6293ca4227.
    
    Thanks: Kun Wei.

commit 783c67dd8cd1b587458c7ea37c1877c4ba8b9214
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 20 13:45:56 2017 +0100

    inspect: get a better icon for ALT Linux guests (RHBZ#1433937)
    
    Use a 64px icon which is in the menu-icons-default package, hopefully
    part of the default installation of any flavour.
    
    Updates commit 9928296c1ca8df5bd8f108ed00039adc6468cac3.
    
    Thanks to: Xiang Hua Chen.

commit 5db4a08d743d584304498b46d94026f2ad90d450
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 20 11:04:51 2017 +0000

    Version 1.37.6.

commit 51ff763e96cb112db4cfbcf8ddef592716e1a1c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 20 10:46:58 2017 +0000

    customize: slow-tests: Test Fedora 25 instead of Fedora 24.
    
    Just an update so we're testing the latest available version of Fedora.

commit 5f5bec5ed11472eb305e542f82fd6affdcf19dc3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 17 17:57:40 2017 +0100

    p2v: virt-p2v-make-disk: prevent daemons to run on Debian
    
    On Debian systems, usually daemons are run automatically after their
    installations; since we are upgrading the template, and installing
    packages such as openssh, network-manager, etc, this may cause few
    daemon to stay running during the virt-builder execution, causing it to
    fail when shutting down (since e.g. /sysroot/dev would be in use).
    
    As workaround, use a temporary policy-rc.d policy layer [1]: give an
    error code so no daemon is ever started at any point of package upgrades
    and installation.  The script is removed at the very end of the
    building, so the final image will spawn daemons just fine when booted.
    
    [1] https://people.debian.org/~hmh/invokerc.d-policyrc.d-specification.txt

commit 5a5cf66bf775273e2a1edb6010b4b515a064e72b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 17 17:51:54 2017 +0100

    p2v: virt-p2v-make-disk: fix systemd paths
    
    Usually systemd is configured with prefix=/, so units are in
    /lib/systemd.  On a system with UsrMove, such as Fedora/RHEL7, /lib is
    a symlink to /usr/lib, so both /lib/systemd and /usr/lib/systemd work;
    OTOH, on non-UsrMove systems, such as Debian, the two paths are
    different locations, and thus trying to edit system files as
    /usr/lib/systemd/etc will fail.
    
    As solution, just reference /lib/systemd for systemd files.

commit 1051ef1d5e2a379d92de3f8fee45702440d36c8c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 17 17:48:49 2017 +0100

    p2v: remove network-manager-applet Debian dependency
    
    On Debian, network-manager-gnome contains nm-applet, which is what
    launch-virt-p2v spawns.  network-manager-gnome is already in the list of
    packages for Debian, while network-manager-applet does not exist.

commit 0891af80212560936ccf306a764fdcf4e2b72cb4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 17 17:43:42 2017 +0100

    p2v: fix Gtk dependencies on Debian
    
    On Debian, the names of the packages containing the Gtk 2 and 3
    libraries have different patterns, and thus just the name will not work
    for Gtk 3.
    
    Apply a bit of m4 to use a different package name on Gtk 2 and other
    versions.  It can be easily adapted to new models in future Gtk 4+,
    should the naming pattern change from Gtk 3.

commit f48430c6cc9591d3c59b551ffddcc939590e41c9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 17 16:18:57 2017 +0100

    btrfs_filesystem_show: work with another old btrfs version
    
    An old version of btrfs-progs (3.17 in this case) has a different
    version string, so adapt our filtering to include this line as well.
    
    Related to/updates commit 839ae5bcd537b3dc4f13bbea6fe40091ebc2b7f0.

commit 51304a563572dd6b102cf03d41324c70288ce02c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 18 22:20:25 2017 +0000

    Version 1.37.5.

commit 1b56c2e2b36cad99b8c0d0daa92577342933cb78
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 18 18:31:10 2017 +0000

    tests: Add further valgrind suppressions for glib and gtk3.

commit 47ec0512d5a4a3b983efe1f39fc575cf6301b399
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 18 12:13:50 2017 +0000

    Version 1.37.4.

commit 6971f8e76e5361fb5fafebaaed021ec131a3aca2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 18 11:21:49 2017 +0000

    p2v: Duplicate CPU vendor and model strings when copying config struct.
    
    Fixes commit 963d6c3be7cd91c0373f67cfdd95c4f1dad1452f.

commit 659900af5631b6d9d6b02fcc3c082822601c274e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 18 11:17:13 2017 +0000

    v2v: -i ova: Fix tests.
    
    Fixes commit 7f940c3e3a8de21c27e517b4ccde02fa7e7b287f.

commit 216759accb5cc261f26239900995286bd1ee54cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 18 10:11:13 2017 +0000

    test-data: Use another name for boot and root MD devices.
    
    mdadm 4.0 no longer lets you create devices called literally "boot" or
    "root", giving a very obscure error message:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1433575
    
    Work around this by calling them something else.

commit aa441022e95d439a401bbd768e67e4bb4d3ec091
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 17 15:22:42 2017 +0000

    Version 1.37.3.

commit 135a7ae3b50ed9c72b2e4ebf0bd06974744bc038
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 17 15:20:57 2017 +0000

    v2v: Add new test-v2v-print-source.* files to EXTRA_DIST.
    
    Fixes commit 12a3b735f92727c15fd5bc5c492ad90a29002174.

commit 14c8396dbe8024451df762042021367f58f9e38f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 17 13:39:56 2017 +0100

    p2v: un-duplicate common dependencies
    
    Move all the dependencies with the same name in all the distributions to
    a single list at the end.
    
    There should be no change to the package list used to build the p2v ISO.

commit b2b3e7365d4e7dfd5d15d2630b6e970ab2a87e9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 16 19:12:39 2017 +0000

    v2v: -i libvirt: If <vcpu> is missing, calculate it from CPU topology.

commit 11505e4b84ce8d7eda4e2a275fdcecc5f2a3288d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 16 15:12:47 2017 +0000

    v2v: Pass CPU vendor, model and topology from source to target.
    
    Where supported, pass the source CPU vendor, model and topology to the
    target hypervisor.
    
    -i ova: We can get just cores per socket via a proprietary VMware
    extension to OVF.
    
    -i libvirt, virt-p2v: We can get all of these fields from the libvirt
    XML.
    
    -o libvirt, -o local: We can preserve all of the information in the
    target XML.
    
    -o rhv/vdsm: We can only pass through the topology, since neither
    oVirt Engine nor the OVF format supports CPU vendor or model.
    Topology uses an extension of OVF which is not part of the standard.
    
    -o qemu: We preserve the topology only because versions of qemu vary
    widely in their support for CPU models.
    
    -o glance: Only the topology is preserved since that is all that
    Glance currently supports.
    
    Thanks: Pino Toscano.

commit b20bfe90c6db59d526ba18245f89bb646f49210e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 17 11:11:45 2017 +0000

    v2v: -o glance: Build properties list imperatively.
    
    No change, just refactoring.

commit 923e5a6f2c69fbe38c9ee5a4b127fe37546e5f90
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 16 17:37:41 2017 +0000

    v2v: -o libvirt: Refactor creation of XML body.
    
    Just refactoring, no change in semantics.

commit f0fed9614a7153eeb36f42ed20a102fbcbcc8d16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 16 17:59:42 2017 +0000

    tests: v2v: Rearrange test-v2v-print-source.
    
    This rearranges the input files for the test of virt-v2v
    --print-source, but does not change its semantics.

commit 4d8a04447036e2ce2732694b5b00a44de2ebf170
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 16 14:03:41 2017 +0000

    p2v: Pass host CPU details to virt-v2v.
    
    In the fake <domain type='physical'> libvirt XML that we create to
    describe the physical host, we did not accurately pass any information
    about the host CPU except the number of cores (<vcpu/>).
    
    This commit extracts detailed information about the vendor, model and
    topology of the host CPU and adds that to the libvirt XML for
    virt-v2v.  Conveniently we can use libvirt capabilities to get this
    information without needing to parse /proc/cpuinfo or similar
    techniques.
    
    The libvirt XML looks like this:
    
      <domain type="physical">
      ...
        <cpu match="minimum">
          <vendor>Intel</vendor>
          <model fallback="allow">Broadwell</model>
          <topology sockets="1" cores="2" threads="2"/>
        </cpu>
      ...
        <features>
          <acpi/>
          <apic/>
          <pae/>
        </features>

commit e7b337bf9f5a4edb4ead81b25f12c65053f10d42
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 16 21:46:14 2017 +0000

    p2v: Enable check-valgrind in this directory.
    
    A couple of valgrind suppressions are required to work around memory
    leaks in Gtk.

commit fc8fe083da073ca9e5088ffcbe57a04b1936c041
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 16 21:55:54 2017 +0000

    p2v: Free config struct before exit.
    
    Memory leak found by valgrind.

commit 59d8d56e19b9cad3e629014eef6b3a5952e70d8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 16 12:10:21 2017 +0000

    p2v: Add awk as a dependency.
    
    The code to parse /proc/cpuinfo runs awk, but it was not included as a
    specific dependency so the parsing code might silently fail.

commit 26596616a343326ed0689adcbabec35109b1571f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 16 09:58:09 2017 +0000

    lib: direct: Don't ever use -no-kvm-pit-reinjection.
    
    On qemu 1.1.2:
    
      qemu-system-x86_64: -no-kvm-pit-reinjection: invalid option
    
    Thanks: John Sucaet.

commit 3505bbe3a4a7f0ac71299824871b63c2454226b7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 16 18:01:37 2017 +0100

    dib: avoid using Unix.O_CLOEXEC
    
    It looks like Unix.O_CLOEXEC does not exist in OCaml < 4, so resort to
    manually using Unix.set_close_on_exec on the filedesc after opening it.
    
    Thanks to: John Sucaet and Richard W.M. Jones.

commit 08f474ec33f6e72672c73613fe53b1372282a21e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 15 16:45:41 2017 +0100

    generator: open Common_utils where needed
    
    This makes it possible to use the operators from Common_utils that do
    not exist in older OCaml versions (e.g. < 4.00).
    
    Thanks to: John Sucaet.

commit 9fae692b924add71ea6c57a6cb844f230ec6a5c6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 15 11:07:43 2017 +0100

    v2v: linux: accept 'scd' devices in fstab
    
    Avoid warnings for another kind of SCSI CD-ROMs in fstab, like it is
    done already for other CD devices.

commit 92a05e8bdaf06f6cc89dd1ceae6e23b7442dfb33
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 14 14:43:53 2017 +0100

    v2v: bootloaders: look for device.map also in /boot/grub (Grub2)
    
    On Debian-based systems, Grub2 is in /boot/grub (as already known after
    commit 03b9f2b967c4c61a5acda6a3802317be109d213e), so make sure
    device.map is changed even in this situation.

commit 0c686ccb978881fca38fbb2aab95ffe3e7e1104d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 14 14:40:08 2017 +0100

    v2v: OVF: add Debian and Ubuntu osinfo variants
    
    Unfortunately, there are very few osinfo types available for Debian and
    Ubuntu, so make sure to use them only when the version is enough, and
    use the higher version available also for any following version.

commit 78a6e968ce4ddac3b119bcfcfb20e03442fb0d49
Author: Yann E. MORIN <yann.morin.1998@free.fr>
Date:   Mon Mar 13 23:42:37 2017 +0100

    configure: fix check for attribute cleanup
    
    In cross-compilation, it is not possible to run tests, so the configure
    aborts when checking for attribute cleanup.
    
    The comment above the test hints at why we would need to do an actual
    run test rather than a compile test: gcc only warns on unrecognised
    attributes.
    
    But warnings can be turned into error with -Werror.
    
    Change the AC_RUN_IFELSE into an AC_COMPILE_IFELSE test that runs with
    -Werror set. Save the CFLAGS before adding -Werror, and restore them
    after the test.
    
    Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>

commit d95544a9cab273030a2ef9f9516a2a0c4e65d787
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 13 18:11:28 2017 +0000

    Version 1.37.2.

commit 4a557b930117758d8f317399b9d742ac8452c662
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 10 13:13:10 2017 +0000

    v2v: Add a root test for access to root-only-readable OVAs (RHBZ#1430680).

commit 1d4e269b188ba7fecd329465565c688b00b0e691
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 10 13:02:54 2017 +0000

    tests: Add infrastructure for running certain tests as root.
    
    '[sudo] make check-root' is analogous to 'make check-slow'.

commit 76b1571cc8de4090b119cf33025a14ed2f0315d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 13 12:20:41 2017 +0000

    v2v: chmod original OVA file if running as root (RHBZ#1430680).
    
    In the case where we are going to read the disk directly from the OVA
    file (partial = true), we will create a qcow2 image backed by the OVA.
    If running as root, libvirt will run qemu as a non-root user (because
    of no qemu:///session support for root, which is a libvirt bug).  qemu
    will not be able to read the backing file and thus will fail.
    
    To work around this problem, chmod the backing (OVA) file.
    
    This isn't a complete fix since (eg) the OVA might be located in a
    directory which isn't accessible by root, but there's only so much we
    can do here until libvirt is fixed.
    
    Thanks: Kun Wei.

commit fdd5d67e4fabb4eaea6f77b69ed9496ab2206b97
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 13 14:21:56 2017 +0000

    v2v: -i ova: Use full path for backing file.
    
    Works around a libvirt bug:
    https://bugzilla.redhat.com/show_bug.cgi?id=1431652

commit bd2c98c582b664b4cf28720978f09b018974c613
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 12 19:47:38 2017 +0000

    v2v: -i ova: Factor out the OVF parsing into a separate module.
    
    Mixing the XML parsing with the other functions of this module made it
    very hard to understand.  Splitting the XML parsing into another
    module simplifies the flow considerably.
    
    This is just code refactoring and should not affect the semantics.

commit 912eb62258ca54995950e0544c04fd3c68834624
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 10 14:58:15 2017 +0000

    v2v: -i ova: Hoist utility functions to the top of the file.
    
    These functions obscure the true flow of the code, so hoist
    them out of the source () method to the top of the file.
    
    No change, just refactoring.

commit 9753859af627c07006faa81970c9ad26d2c44dda
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 13 09:46:36 2017 +0100

    v2v: support no socket for <listen type='socket'>
    
    Support also a "socket" listen type with no explicitly specified socket
    (which will be generated by libvirt).
    
    Updates commit a4adf48915c0e3e7f4e8b7bbdbb5ac622da1ac58.
    
    Related to: RHBZ#1378022

commit d783c60fc90f6cddc1f04679c3f8597f9e3315bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 10 16:51:36 2017 +0000

    mllib: Add a binding for realpath(3).
    
    This is a copy of the supermin binding:
    
    https://github.com/libguestfs/supermin/tree/master/src realpath*

commit 2f090ff432d8fcc43ef560f2ae45c97933d9af6a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 10 14:31:01 2017 +0100

    appliance: run systemd-tmpfiles also for /var/run
    
    Commit a6330e9d3af0f5286f1d53d909fd868387b67f69 enabled /run for
    systemd-tmpfiles: while this works fine in most of the cases, there are
    few tmpfiles configurations that still references /var/run instead of
    /run.  As result, include also /var/run in the systemd-tmpfiles
    execution.

commit ebae6b4bdc86b2e38b2458657fd97fa5595211a3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 10 13:54:30 2017 +0100

    daemon: fix memory leak in xfs implementation of vfs_minimum_size
    
    Use the proper cleanup handler for deleting the guestfs_int_xfsinfo
    struct (so the string fields are deleted too).
    
    Fixes commit f5caa421d1bb826559ec7a6d98c1a6b6b1f0a629.

commit 6c9af0f74c714a2e75f7da0546dcf6ee3b3cf347
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 10 13:50:24 2017 +0100

    daemon: generate cleanup handlers for structs
    
    This way it is possible to cleanup properly structs in the daemon, when
    using them within other daemon functions.

commit 74c3961fe737cd792bf52c93a4cbdc80f685aa3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 10 14:01:42 2017 +0000

    v2v: Refactor some command line error messages.
    
    This change (mostly) has no effect, except I changed the content of
    two error messages to make them consistent with the others.

commit e77368e7bf114f6c512e937d213857e9c9cb2048
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 10 13:47:13 2017 +0000

    v2v: -o null: Force output format to be raw sparse.
    
    When converting and throwing away the output (-o null), the input
    format should not really matter.  However it does currently matter for
    a couple of reasons:
    
    (1) If the input is not raw or qcow2, then you'll get the error below
    because virt-v2v wants to write the same output format as input format
    but only allows raw or qcow2 as output formats:
    
      virt-v2v: error: output format should be 'raw' or 'qcow2'.
    
    (2) If you use -o null -oa preallocated then a non-sparse temporary
    disk is created before being deleted, but that just wastes disk space
    for no reason.
    
    Therefore this change
    
    (i) prevents '-o null -oa preallocated' from being specified on the
    command line,
    
    (ii) prevents '-o null -of <anything>',
    
    (iii) forces the output (temporary file) to be raw sparse.

commit 2cca36f54e3a9a5c5df52bd38f36bcc4215efa89
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 10 14:13:28 2017 +0000

    v2v: -i ova: Avoid long line in file.
    
    Just a whitespace change.

commit 55b4fd1e08ba4e87b7bd6fd76a959ea254085738
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 8 13:13:36 2017 +0100

    v2v: fix skip check in test-v2v-o-libvirt.sh
    
    This test needs windows.img, not fedora.img.  This way, the test is
    properly skipped when NTFS support is not available.
    
    Fixes commit a1b3d8d04b65298dd13c44a057a4e2b650ebc59e.

commit 3d92c79937878e6b33f55f0a2a7a0838c799efd0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 8 09:45:08 2017 +0100

    dib: actually generate SHA256 checksums (RHBZ#1430184)
    
    diskimage-builder generates MD5, and SHA256 checksums when using
    --checksum, so stick to that list for compatibility reasons.

commit 1d49db0ffbd3df452b83353fa0d2ecad9d6b43ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 7 15:37:15 2017 +0000

    Version 1.37.1.

commit 72b783ff165857086c487d9c9b7136e4a75a5b73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 7 15:36:38 2017 +0000

    v2v: Add new OVA tests to EXTRA_DIST.
    
    Updates commit a1843b9d727d0eddb54b5e93b4c3aa0d6901e5f4.

commit 1c5cbdb539a72e723b512f7ccc08327c80ece563
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 7 14:47:01 2017 +0000

    appliance: Add libtirpc, optionally used by the daemon.
    
    Fixes commit 4bbb1f74901667be4aa8fe0a83662cf16c4c3b0a.

commit 952d3de535329b3f1a1683c11ab79eae0cc68bcf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 6 23:04:30 2017 +0000

    lib: Prefer tirpc for XDR, and rationalise how we search for alternatives.
    
    glibc in Fedora is currently configured with `--enable-obsolete-rpc',
    so I guess we can see which way the wind is blowing.
    
    (1) This changes our configure script to prefer libtirpc if it is
    available.
    
    If libtirpc is _not_ available then:
    
    (a) Headers must be located in <rpc/xdr.h>, or the user must supply
    the right CFLAGS.
    
    (b) XDR functions must be located in one of -lportablexdr, -lrpc,
    -lxdr, -lnsl or no library at all (ie. -lc), and the user must set
    LDFLAGS if needed.
    
    (2) We no longer add these paths automatically to $(CFLAGS)/$(LIBS).
    Any part of libguestfs which needs <rpc/*.h> or the xdr_* functions
    must use $(RPC_CFLAGS)/$(RPC_LIBS) explicitly.
    
    (3) Previously Mac OS X had a workaround for the broken 64 bit support
    in the supplied rpcgen.  This workaround "activates" all the time if
    you use tirpc, so breaking Linux after the above changes.  tirpc is
    supported on OS X, so I think it's just better to use that rather than
    the broken rpcgen.  For that reason I removed the workaround
    completely.
    
    Thanks: Roy Keene

commit 2a79665d8b1bd1bbe881193e04f4c817723abf35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 4 15:35:09 2017 +0000

    rescue: Move --suggest code to separate file.
    
    Just code motion.

commit c9b77295aeb4ff51a22fa8a05627b669dab1ee69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 4 11:47:59 2017 +0000

    rescue: Implement escape sequences.
    
    This implements a few useful escape sequences:
    
    ><rescue> ^]?
    virt-rescue escape sequences:
     ^] ? - print this message
     ^] h - print this message
     ^] q - quit virt-rescue
     ^] s - sync the filesystems
     ^] u - unmount filesystems
     ^] x - quit virt-rescue
     ^] z - suspend virt-rescue
    to pass the escape key through to the rescue shell, type it twice
    
    ^]i
    
    root device: /dev/sda3
      product name: Fedora 25 (Twenty Five)
      type: linux
      distro: fedora
    
    ^]z
    [3]+  Stopped                 ./run virt-rescue --scratch
    $ fg
    
    ><rescue> ^]u
    
    unmounting filesystems ...
    [   21.158558] XFS (sda3): Unmounting Filesystem

commit 5d4c0b4bdb5265e1d4b7920755d49c041d380eb4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 3 13:52:31 2017 +0000

    rescue: Implement -m and -i options.
    
    `virt-rescue -a disk -i' does the right thing.
    
    `-m' was previously an alternate form of `--memsize'.  By sniffing the
    parameter we can make `-m MB' continue to work, while also allowing
    `-m' to be used as a short form for the `--mount' option.
    
    This also removes most of the description of `--suggest' from the man
    page, since it is no longer needed.

commit ca0e808732f94619d851c551f5dd5d11d35d002b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 2 13:46:48 2017 +0000

    rescue: Modify virt-rescue so it doesn't use direct mode (RHBZ#1152819, RHBZ#1171654).
    
    Instead of using "direct mode" (which was basically a quick hack),
    virt-rescue now launches the appliance with a running daemon.
    
    The daemon doesn't do much -- there is still a bash shell which the
    user interacts with.  The daemon is there simply to provide the
    initial GUESTFS_LAUNCH_FLAG message and to handle shutdown a bit more
    gracefully.
    
    To interact with the shell, and replacing direct mode, virt-rescue now
    prints out log messages (the output of the shell), and sends input
    typed by the user directly to the console socket.  This uses the
    guestfs_internal_get_console_socket API added previously.  Most of the
    complexity behind this is hidden in virt-rescue.
    
    This fully fixes the handling of ^C (RHBZ#1152819).  Also there were
    earlier reports that full screen commands like 'vim' didn't work well,
    (RHBZ#1171654), but in this version vim appears to work fine, albeit
    only using 80x24 of the screen because of the serial console.

commit 6ab9633b6b525b5ac7901366347829cc998e1eb0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 3 10:14:20 2017 +0000

    lib: Return EPIPE for "appliance closed the connection unexpectedly".

commit b96c7ce3f07f53be83ea5e14b92b6e78a388c561
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 3 09:56:03 2017 +0000

    appliance: Fix job control in virt-rescue.
    
    See comment and link to busybox FAQ for explanation.

commit 02a4c7cb17e4d9a96cd058f0efaf90cc5470ef54
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 2 11:06:27 2017 +0000

    New API: internal-get-console-socket to support virt-rescue.
    
    This API intended for use by virt-rescue only gets the file descriptor
    of the console socket.

commit f9c3e1df929da130dad88c47bb7ee365577edc19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 2 12:42:46 2017 +0000

    generator: Deprecate direct mode (guestfs_set_direct, guestfs_get_direct).

commit 0a1153d71d6e888c2a2a96d2facbe05087f5f8de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 6 14:27:19 2017 +0000

    v2v: Add extra tests for malformed OVA files.
    
    Test:
     - Bad SHA1 sum
     - Bad SHA256 sum
     - Invalid lines in manifest (x2)
     - Good checksum and manifest
    
    These tests were originally written by Tomáš Golembiovský.  All I have
    done is to integrate them into the virt-v2v test suite.

commit 855800242c7a900f661db2d0124408bcbbbe86a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 7 10:50:25 2017 +0000

    docs: Document vulnerabilities in icoutils wrestool affecting libguestfs.

commit 0c7cd919791d757d31894dfcaf6a6be80ebc988a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 6 18:11:29 2017 +0000

    v2v: -o local: Check that UEFI firmware is installed before conversion (RHBZ#1429506).
    
    Avoids a lengthy conversion followed by failure if we discover at the
    end that OVMF is not installed.
    
    This also changes the order of the methods in -o libvirt and -o qemu
    so that it matches the order in the class interface, and also
    logically makes more sense.
    
    Thanks: Christopher Brown

commit af1b79bd5800f43adfacc00296562b7139e414f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 6 16:07:04 2017 +0000

    v2v: Fix typo in previous commit (RHBZ#1374232).
    
    Fixes commit 25772a8123a1a800caf3472fb79c8eb3b4a074f3.

commit b2416abff96c26013b91bb26260fa50fc3a12111
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 6 10:42:03 2017 +0000

    v2v: Fix invalid regexp in file_contexts file (RHBZ#1374232).
    
    Instead of just documenting this bug, fix it in the file_contexts
    file.
    
    Replaces commit ad3c8fe7f49c4991e1aa536856a1a408f55d5409.

commit 7febbc9d766a660b2e70f39d2d4ffe4201b4172e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 6 16:05:56 2017 +0100

    v2v, p2v: rename rhvm network to ovirtmgmt (RHBZ#1429491)
    
    Since RHV 3.6.10, the default network name is 'ovirtmgmt' instead of
    'rhvm'.
    
    This is just a documentation change.

commit 618b182d0ca5e17f6caa5697efef58fae089d42a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 6 14:53:36 2017 +0100

    p2v: fix possible close(-1) issue
    
    Make sure the error handler (i.e. the code after the 'cleanup' label)
    does not attempt to call close(-1), in case 'sockfd' is not initialized
    yet.

commit 99662985c7e2770e7d8889e8cdb057126fcc400a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 6 14:47:44 2017 +0100

    p2v: check more return values
    
    Check for the (rare) failures of open(/dev/null), and setsockopt.

commit cf819ae6549f84a295f614095686af904d983ed3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 6 14:23:55 2017 +0100

    lib: qemu: improve handling of FILE*
    
    Create own blocks for all the parts dealing with FILE*: this way there
    is no need to recycle the same FILE* variable for all the operations,
    and have each block its own variable automatically cleaned up.
    
    This also fixes a potential undefined behaviour on error: POSIX says
    that after a call fclose(), a FILE* cannot be used anymore, not even
    on fclose() failure. The previous behaviour for fclose == -1 was to jump
    to the error label, which would then try to call fclose() again (since
    the FILE* pointer was still non-null).

commit 7c60596ed9a4db80a7004d865e6c621cbbf45183
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 6 13:25:48 2017 +0100

    java: use cleanup handlers for structs (lists) as return values
    
    Filling some of their fields may cause the flow to skip to throw the
    "out of memory" exception, and return immediately.  To avoid leaking the
    struct, or struct list, from the C implementation, use a cleanup handler
    so there is no need to manually clean it up.

commit a89296f55d4a248ba292a8fa55e980d12254b0d3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 6 11:38:37 2017 +0100

    daemon: btrfs: check end_stringsbuf return values everywhere
    
    Make sure to check the return value of end_stringsbuf everywhere, as
    that would generate invalid string lists.

commit 04d39f7218bd1eddfc1dab38e9b20ae21ef13e37
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 6 10:59:00 2017 +0100

    tail: check the return value pf guestfs_set_pgroup
    
    It is done when creating the handle, so do it also when duplicating the
    handle.

commit 77d9b9de87369c1ac432fa5f2d1967647340d03d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 3 14:16:22 2017 +0000

    Use gnulib set_cloexec_flag in a few places.

commit 06b8a8a166b86cec2ef89626873a3eb7f693f5a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 3 14:08:36 2017 +0000

    Use gnulib set_nonblocking_flag function instead of fcntl.
    
    The previous code:
    
      fcntl (fd, F_SETFL, O_NONBLOCK)
    
    was technically incorrect, because it would have reset any
    other flags on the file descriptor.
    
    Thanks: Eric Blake

commit 727273e1bade361528e37a12c9eb520aee70ac93
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 3 13:50:46 2017 +0100

    java: do not try to malloc 0 elements in get_all_event_callbacks
    
    In case there are no event handlers registered with the handle,
    get_all_event_callbacks will count 0 elements, trying to malloc a buffer
    of that size.  POSIX says that this can result in either a null pointer,
    or an unusable pointer.
    
    Short-circuit get_all_event_callbacks to allocate nothing when there are
    no events, making sure to use its results only when there were events.

commit 277d90a8ab3e7abd1208072653cb050b9e4d7370
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 3 13:48:25 2017 +0100

    ruby: do not try to malloc 0 elements in get_all_event_callbacks
    
    In case there are no event handlers registered with the handle,
    get_all_event_callbacks will count 0 elements, trying to malloc a buffer
    of that size.  POSIX says that this can result in either a null pointer,
    or an unusable pointer.
    
    Short-circuit get_all_event_callbacks to allocate nothing when there are
    no events, making sure to use its results only when there were events.

commit 4c3d5fcd54ac3f51e0680093562e90d95a0807a1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 3 13:47:48 2017 +0100

    python: do not try to malloc 0 elements in get_all_event_callbacks
    
    In case there are no event handlers registered with the handle,
    get_all_event_callbacks will count 0 elements, trying to malloc a buffer
    of that size.  POSIX says that this can result in either a null pointer,
    or an unusable pointer.
    
    Short-circuit get_all_event_callbacks to allocate nothing when there are
    no events, making sure to use its results only when there were events.

commit 80ff0ac2808f412edafa0a843aae62fe9302c3f1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 3 13:40:17 2017 +0100

    ocaml: do not try to malloc 0 elements in get_all_event_callbacks
    
    In case there are no event handlers registered with the handle,
    get_all_event_callbacks will count 0 elements, trying to malloc a buffer
    of that size.  POSIX says that this can result in either a null pointer,
    or an unusable pointer.
    
    Short-circuit get_all_event_callbacks to allocate nothing when there are
    no events, making sure to use its results only when there were events.

commit 95e1e0139b51f10ac95e5ec6542db7a49ad2eae4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 3 08:44:15 2017 +0000

    generator: ocaml: Don't link to undocumented methods.
    
    As for the previous commit, don't link to a method if it's not
    exported by the OCaml bindings.

commit 942053b679f1007a5365b991223b7776c961011a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 3 08:44:15 2017 +0000

    generator: java: Don't link to undocumented methods.
    
    We aren't generating Java bindings for internal and other undocumented
    methods, and therefore providing {@link #...}  for deprecated methods
    replaced by internal methods doesn't work.  The easiest way is just to
    check for this and turn such links into plain text.

commit 92276e492660e893abec22bb518651c39601bad7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 3 16:49:41 2017 +0000

    generator: Add a function to find an action by name.
    
    Fairly simple refactoring.

commit e865b9b13764de97cd1a4e51a1271be7b14b117c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 2 12:39:57 2017 +0000

    generator: Allow actions to be deprecated with no replacement.
    
    There is precisely one such function at the moment
    (guestfs_wait_ready).

commit e3a0352639e0f5f7594854cc1b1542b070ecfdd3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 3 13:02:00 2017 +0100

    tail: pass the right path for Windows guests
    
    Call windows_path with the actual path to resolve, instead of a null
    pointer ('filename' is still null at that point), so Windows paths can
    be properly resolved.

commit 0472969dacad7f1bd9dbace7b9920816a6684154
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 3 11:00:37 2017 +0100

    fish: fully init the msghdr buffers
    
    This way no fields (msg_flags in particular) remain uninitialized.

commit 6e78016993d424abc725f1f39bf64643c50b58cd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 3 10:39:10 2017 +0100

    java: fix possible memory leak on error
    
    Use CLEANUP_FREE to properly dispose the temporary array used for
    StringList, DeviceList, FilenameList, and OStringList parameters: this
    way, an early return (jumping to the ret_error label) will not forget
    cleaning them up.

commit c56a477118c7af24e3f7a03f7d5adc63b8c05f5c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 2 18:00:47 2017 +0100

    edit: fix small memory leak on error
    
    If guestfs_int_random_string fails, make sure to free the buffer
    allocated as return string.

commit 10cff13aa86e0f01d7a85dfd2f60f519c77f5106
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 2 17:42:10 2017 +0100

    daemon: tsk: properly use GUESTFS_MAX_CHUNK_SIZE
    
    Pass to fread the size of the buffer allocated, so it can be filled
    completely. This is even faster than reading only 4/8 bytes each
    iteration.

commit 6af3fa6aa02042d6c3c018f9a04d7f22ff1900d3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 2 17:32:58 2017 +0100

    java: fix invalid memory access for FBuffer in struct lists
    
    When convering FBuffer fields of structs in each element of the return
    list, make sure to allocate enough buffer to hold also the trailing null
    character.

commit 8e66cf6f2eca8427b75b6309f775990a389a7665
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 2 17:30:16 2017 +0100

    java: link libguestfs_jni against libutils
    
    The JNI library uses CLEANUP_FREE macros, whose functions are built in
    the internal libutils.  Currently, trying to use functions that use
    CLEANUP_FREE variables will cause the java execution to stop with a
    symbol lookup error (for guestfs_int_cleanup_free).

commit c7aef65e18d0b5729f9530fa05252c77b12759e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 2 11:35:38 2017 +0000

    erlang: Rename 'message' to something less generic.
    
    It's not possible to define an action which takes a parameter called
    'message' because the Erlang bindings use that as the name of an
    internal variable.  Solve this by renaming the Erlang internal
    variable.
    
    Fixes commit 84763d7fca3668c62ee3fe53d0e00a5a672f687b.

commit 502a369d5d8c36a242fc142ecaca608577c5e129
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 2 09:07:08 2017 +0000

    generator: Move some deprecated functions to actions_core_deprecated.ml.
    
    Fixes commit 97773d2bbee8e28830fd689deef9e9f63ce0c18e.

commit 40c4a651605c0f33cc02060c68e5e50f2f7fad84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 1 11:36:26 2017 +0000

    Use AC_HEADER_MAJOR to find definitions of major, minor, makedev.
    
    Note this requires either the following fix in autoconf:
    
    http://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=e17a30e98
    
    OR gnulib sys_types module plus gnulib
    commit a512e041120e9012e69afa2f5c3adc196ec4999a (any gnulib more
    recent than Sep 2016) which corrects the AC_HEADER_MAJOR macro in a
    similar way.

commit 3b92efa18be665eb4772c17f4302efc55b0a1b37
Author: Dawid Zamirski <dzamirski@datto.com>
Date:   Thu Mar 2 17:44:40 2017 -0500

    parted: add more udev_settle calls.
    
    add udev_settle calls to print_partition_table and
    sgdisk_info_extract_field because the inspect-os calls
    guestfs_part_get_parttype and guestfs_part_get_gpt_guid for all
    parition devices found and this causes intermittent with opening block
    devices that are certainly present yet RESOLVE_DEVICE macro would fail
    wiht ENOENT.

commit 651f1b3240954396fff438cdc9dafee168306c71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 1 15:07:00 2017 +0000

    ruby: Simplify and fix regression test.
    
    This test failed on ppc64le with:
    
      Failure:
        </wrong argument type Fixnum \(expected Array\)/> was expected to be =~
        <"wrong argument type Integer (expected Array)">.
    
    In addition the test generated a warning:
    
      tc_800_rhbz507346.rb:29: warning: ambiguous first argument; put parentheses or a space even after `/' operator
    
    This commit fixes both of these and also makes it simpler and faster
    by not bothering to launch the appliance.
    
    Fixes commit 227b1eea90713d190a9cf5463af106af0b4eee2c.

commit 4d777131687e956c0cb28085e842d58811a22116
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 28 15:48:18 2017 +0000

    sysprep: Remove DHCP_HOSTNAME= from ifcfg-* files (RHBZ#1427529).

commit 50de4834a76ca209a9d33492764bec5ab1384ac8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 28 20:52:40 2017 +0000

    python: Fix python sdist.
    
    Fixes commit d45986d21b6f1709264f7e2ecfeb240c9c578090.

commit 37f63f63eebf81bcb9198865a6ad87e7dfa3611e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 28 09:53:42 2017 +0000

    Version 1.37.0.

commit be55d67bd370cf2fe2e402e07b6266d78f31f3b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 28 09:18:05 2017 +0000

    Version 1.36.0.

commit a100e2e0a125e6ca5274c44167dab9523edb956d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 27 23:02:56 2017 +0000

    docs: Finalize release notes for libguestfs 1.36 release.

commit 260c3d3377656fddc8a715984a674d8e2014afeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 27 12:16:07 2017 +0000

    lib: Require libmagic.
    
    If libmagic isn't installed then the guestfs_file_architecture API
    doesn't work.  This means that inspection will always return
    <arch>unknown</arch> for every guest.  This subtly breaks a few
    features.  In particular it was reported that the
    virt-builder/virt-customize --install option did not work because the
    "unknown" architecture of the guest was not compatible with the host.
    
    libmagic is a small, widely available C library, so the easiest fix is
    just to make it mandatory.
    
    Reported by: Solarix on IRC

commit 450e12f565ced6c236db56a55845c533ffd07e68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Feb 26 12:17:14 2017 +0000

    v2v: -o qemu: Refactor generation of the qemu shell script.
    
    This change refactors how the qemu shell script is generated, making
    it a bit less likely that we'll get the quoting wrong.  Parameters are
    now added to a list, unquoted, and all quoting is done when printing
    out the list.
    
    Checked by running virt-v2v -o qemu before and after the change and
    manually comparing the output (which is not identical, but still
    correct).

commit ae8b8e8fb90349191e45e29705ee9e72dcbf44f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 25 20:32:30 2017 +0000

    v2v: -o rhv: Remove unused exported function.
    
    In fact mount_and_check_storage_domain is not used by -o vdsm, and
    hasn't been used since commit 889e55516869d1eadcdeae15e38dd8d3bbca8d20.

commit dccb90be17d926a06555f906cc4d33efe0ae97f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 25 20:13:22 2017 +0000

    v2v: Various whitespace or other very minor cleanups.

commit 2a61a9b4eafc4c0b23e627f6545c958925e2f7c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 25 20:19:10 2017 +0000

    v2v: Move libvirt XML output code into a new module.
    
    Just code motion.
    
    Analogous to commit 512e5fd85836f03f661d13bc35b3bf685554de10.

commit c7da8262a4cdaba4b3485ff10a591874529feae3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 25 19:59:54 2017 +0000

    v2v: Fix comment so it refers to new parse_libvirt_xml.ml file.
    
    Fixes commit 512e5fd85836f03f661d13bc35b3bf685554de10.

commit f0707066b8a137cfdfbba82794456392ae3145bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 25 15:16:21 2017 +0000

    tests: regressions: Move another test to use $TEST_FUNCTIONS.
    
    Omitted from commit a1b3d8d04b65298dd13c44a057a4e2b650ebc59e.

commit 3ab78a6d129477a0d0efa7c00d51528aa55cd9af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 25 12:43:52 2017 +0000

    v2v: Move libvirt XML parsing code into a new module.
    
    Just code motion.

commit f5affc5919c187bbd1ef20eaf96f96e7aba02f13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 25 12:29:44 2017 +0000

    v2v: -i libvirtxml: Modify get_drive_slot calls.
    
    Just a small refactoring to make the function safer to use.

commit 67b26eb66bfe5ed9d3a5c1a7c389f65e19c29149
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 25 12:29:35 2017 +0000

    v2v: -i libvirt: Move comments.
    
    Just whitespace changes.

commit a0be853fd864d92531331f858da78f580e03b70c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 20:59:17 2017 +0000

    v2v: Fix incorrect skips in tests.
    
    Fixes commit a1b3d8d04b65298dd13c44a057a4e2b650ebc59e.

commit 7edc78080b9b5749a716f963ab30697a76ff056b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 20:43:41 2017 +0000

    mllib: Move VIRT_TOOLS_DATA_DIR calculation to common code.
    
    Share the computation of $VIRT_TOOLS_DATA_DIR in a single place.
    Use of 'lazy' ensures it is computed at most once.

commit cca9c4078e276d6d51df31e0f11cf844ff9a9963
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 17:37:55 2017 +0000

    docs: release notes: add-domain now supports libvirt secrets.
    
    Thanks: Pino Toscano

commit e99ed0d3d28782abe66b5ab263116e5247981016
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 15:08:27 2017 +0000

    docs: Update release notes for libguestfs 1.36 release.

commit 6b9a42a807d18aefa2e0fd2ebbdd14bfe3457939
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 15:06:45 2017 +0000

    docs: Test release on aarch64, ppc64 and ppc64le.
    
    Before a stable release, we will now test on aarch64, ppc64
    and ppc64le.

commit b09becbda1020c7be440ba71b111dc272ebd4e85
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 24 16:02:20 2017 +0100

    v2v: document Convert_linux as more generic
    
    Make the documentation in Convert_linux more generic than just
    Enterprise distros using RPM.  Also, rename the name of the module from
    "enterprise-linux" to simply "linux".

commit 975ac6a6523b815de3c68c1c444623dc30e71fbe
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 24 15:52:28 2017 +0100

    v2v: document Debian/Ubuntu support

commit 70aaa99c37f544b49022315b607178dbca7218ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 12:27:17 2017 +0000

    Version 1.35.28.

commit 1feb0513ccbc1f0983e68de30a63aa206e32d659
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 23 17:38:12 2017 +0000

    docs: Begin updating release notes for libguestfs 1.36.

commit 1f9aa97099568d0da7531356dcf2d31fd40cf771
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 23 18:44:51 2017 +0100

    inspect: read more fields for RPM packages
    
    In particular, read the URL, and both the summary and the description.

commit 2309f350b10f7bd05f2360ef98993a23f43b02ac
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 23 17:54:17 2017 +0100

    inspect: read more fields for Debian packages
    
    In particular, read the URL, the source name, and both the summary and
    the description.  For the long description, add a small system to read
    continuation lines.
    
    Adapt the expected result of virt-inspector for Debian and Ubuntu phony
    guests, so test-virt-inspector.sh still passes.

commit f7e802363785921c200f52b933d2ab36c4530d29
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 23 13:35:00 2017 +0100

    inspect: add source and summary to internal add_application
    
    This way source and summary can be specified for any package read from
    the guest.

commit 070943d67fec762fc014d8885d75e017b5eaaada
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 12:49:32 2017 +0000

    po-docs: Fix mistranslated message in Ukrainian file.
    
    A message was translated without the trailing \n.  As it was in a
    verbatim section of POD, I actually reverted the whole translation.
    
    The error was:
    
      ./uk.po:53533: 'msgid' and 'msgstr' entries do not both end with '\n'
      msgfmt: found 1 fatal error
    
    In fact po4a (or whatever calls msgfmt) seems to ignore the error and
    continues which is another problem.
    
    Fixes commit 794b6a1acfb3af96caf901d64c9658052b3d5438.

commit 0f8bdc54734f140e1d4cab83d845b844557e8bc6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 12:47:55 2017 +0000

    po-docs: Add cs to lingas_not_translated.
    
    Commit 794b6a1acfb3af96caf901d64c9658052b3d5438 added cs.po, but
    because this wasn't also added to lingas_not_translated the file was
    not included in EXTRA_DIST or processed properly.
    
    Fixes commit 794b6a1acfb3af96caf901d64c9658052b3d5438.

commit 393760a265727cb58cc4b9b5136ea29757f0da42
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 12:23:47 2017 +0000

    po-docs: ja: Fix internal link L</...> which was translated.
    
    Compiling po-docs/ja/guestfish.pod failed with:
    
      Pod input around line 277: L<> starts or ends with whitespace
      Pod input around line 362: L<> starts or ends with whitespace
    
    I reverted the part of the L</...> link which had been translated.
    
    The fix isn't quite correct -- headings *can* be translated, and the
    corresponding internal links should be translated too.  However
    pod2man has problems dealing with such links and in any case the
    partial translation was not correct, so revert to the English version
    of the link.
    
    Updates commit 794b6a1acfb3af96caf901d64c9658052b3d5438.

commit 1f8ea3fd620e40d5e3dd7713593270c4fcad7fd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 04:56:44 2017 -0500

    mllib: visit: Initialize CAMLlocal-allocated value.
    
    Somewhere between OCaml 4.01 and OCaml 4.04, <caml/memory.h> changed
    the way that CAMLlocalX() values on the stack are initialized.  In
    OCaml 4.01:
    
      #define CAMLlocal1(x) \
        value x = 0; \
        CAMLxparam1 (x)
    
    but in OCaml 4.04:
    
      #define CAMLlocal1(x) \
        value x = Val_unit; \
        CAMLxparam1 (x)
    
    The code in mllib/visit-c.c assumed that the value would be
    initialized to Val_unit, and used a check (exn != Val_unit) to see if
    the value had been updated.  This failed badly (with a segfault) on
    OCaml 4.01 in Debian 8.
    
    Resolve this by always initializing CAMLlocalX() values before use.

commit bd20bca6129db9ecb34cc47e8722b4936cf4863b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 09:04:24 2017 +0000

    v2v: Add a utility function for testing if the backend is libvirt.
    
    This also fixes one of the places where we checked this so it now
    recognizes both "libvirt" and "libvirt:...".

commit c90e99fc80801ccdf358e0ed7f3ab2af9a61e21d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 08:56:39 2017 +0000

    v2v: Rename Domainxml -> Libvirt_utils.
    
    The name 'Domainxml' made no sense.

commit b11b6384031942b0d51cad8464045dc0be0b55f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 24 08:50:22 2017 +0000

    v2v: ova: Move libvirt version test to input_ova.ml.
    
    Updates commit 90521da5d45aea60dc3f47f90b97151fd3b484f5.

commit e4e9783d39480f753d9fb6b6de27ba1988d999c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 23 15:09:02 2017 +0000

    v2v: -i libvirt: Fix test for "json:" backing file support.
    
    Thanks: Tomáš Golembiovský for pointing out the error and
    showing how to fix it.

commit 81911376981baf6c8a223b65fb00ac83a7028edb
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Feb 23 16:02:25 2017 +0100

    v2v: tests: restore disabled OVA test
    
    We are redy to restore the disabled test. The relevant libvirt fixes
    should be available in 3.1.0.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit e3ccbd84af01c30af8651568780691af26837d7c
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Feb 23 16:02:24 2017 +0100

    v2v: ova: check libvirt version before OVA import
    
    Libvirt < 3.1.0 lacks enough support for json: pseudo-URLs. Notably it
    does not allow use of "raw" driver that we need.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit a625a167613da1a116569ae4fef6e16bdb6ac3c2
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Feb 23 16:02:23 2017 +0100

    v2v: ova: fix generated JSON for libvirt support
    
    We have to be explicit about the drivers in backing file JSON in order
    for libvirt to work.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 76d9dd658ccfc0b6147fe22863fdac9a7d4c897f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 23 15:07:46 2017 +0000

    Update translations from Zanata.

commit e79501ff20441dfc5ad0d3ca65bf388c954af50e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 23 12:36:53 2017 +0000

    tests: Disable some tests so they don't break when ./configure --without-libvirt

commit 48eadd6c1c5756d3a13bb484c68d91ec128a1f83
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 23 13:33:48 2017 +0000

    tests: regressions: Ignore SIGPIPE in test.
    
    The test tests/regressions/rhbz914931.c works by causing the daemon to
    segfault while writing to it.
    
    For reasons unknown, when configured --without-libvirt, this causes
    the test to fail receiving SIGPIPE (exit code 141).  We can prevent
    this by installing a signal handler to ignore SIGPIPE, so the signal
    is converted to EPIPE which the code handles properly.

commit b73fc3bc01152563d524ae79454d941cd31c76fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 23 08:14:44 2017 -0500

    debian: Old qemu-img does not support -f raw -o preallocation=off
    
    The old version of qemu-img available in Debian 8 doesn't support the
    preallocation option for raw format.  However this doesn't matter
    because the default is preallocation=off (ie. sparse) for old and new
    versions of qemu-img so we can just omit this parameter.
    
    Fixes commit 53317e3f079863d9ea87725b73c7104b34a607e2
    and commit fa83b4787653aa296a09d149cfa3e30aaed4eea6
    and commit 74ded0dbc17b84638cc06c0b4d028484d114c00f.

commit bdafcbba58055e8e1a76ea8ed1c9bb59b05eb1de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 23 12:49:25 2017 +0000

    v2v: Fix incorrect test skip.
    
    The test should be skipped *if* uml, not unless uml.
    
    Fixes commit a1b3d8d04b65298dd13c44a057a4e2b650ebc59e.

commit 548b8201f2062ae8b1de4bca77ff2f272d67bdd9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 23 09:23:48 2017 +0000

    v2v: windows: Only warn on RHEV-APT if requested, install VMDP unconditionally.
    
    Slightly change the logic for installing RHEV-APT and VMDP:
    
    - Only warn on failure to install RHEV-APT if the output hypervisor
      requested it.  Otherwise the warning is pointless because RHEV-APT
      can't be used anyway.
    
    - Make the warning clearer and actionable.
    
    - Try to install VMDP unconditionally (rather than only if RHEV-APT
      failed).  It is always useful for SuSE hosts.  However don't warn if
      it's not available.

commit ac797f08d5838ebf5ca408e9f1e2d6d91253b8bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 23 09:13:15 2017 +0000

    v2v: windows: Simplify installing pnp_wait.exe.
    
    Updates commit 09eb831e8d4f209c2177111c8473b1b094bfc8cb.

commit 018a87aeb2e2a7af8e442febd743d761f443ae15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 23 09:10:15 2017 +0000

    v2v: Add fake test-data/fake-virt-tools/pnp_wait.exe for testing.
    
    Analogous to commit f5c9357c8ed96cf6be986ba7d7b4269a8566b3ab.

commit 44655eb90786a23bc65bc02f7de2f4ac9adffd87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 22 22:15:53 2017 +0000

    Version 1.35.27.

commit b6fb3dc9772a37a360682d2866d71d77aefa7c12
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 22 17:26:36 2017 +0000

    v2v: windows: Only try to install rhev-apt if the target is RHV (RHBZ#1161019).
    
    Thanks: Tingting Zheng

commit c61cc1baa4679718b734a98b74d602c5d3de7a6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 22 17:45:06 2017 +0000

    v2v: Add fake test-data/fake-virt-tools/vmdp.exe for testing.

commit 042479c81aab2c4d929212032c68c2103bb0fe31
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 22 17:14:06 2017 +0000

    v2v: windows: Simplify installing rhev-apt.exe or vmdp.exe.
    
    This just simplifies the code and should make no functional
    difference.
    
    Updates commit c466d4cb928fcfea37908cc66c90ac8430d6d4c6.

commit 658a9fbc52ba7c7075ab97b85c3d5fed9ca8c007
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 22 17:06:16 2017 +0000

    v2v: Pass output object into the conversion module.
    
    Previously the Convert_linux conversion module depended on one feature
    of the output module (#keep_serial_console).  This was extracted in an
    ad-hoc way from the output module and passed as an extra parameter to
    the conversion module.
    
    Instead of doing it this way, just pass the output module into the
    conversion module, so it can call output#keep_serial_console itself.
    
    This is just a simplification of the existing code, but otherwise adds
    no new features.

commit c03d365b635a592940252cd2f5cc0222c950dbf9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 22 18:33:03 2017 +0100

    inspect: ignore /dev/cdN devices in /etc/fstab
    
    Non-Linux Unix guests may have static devices for CDs, so make sure to
    skip them when reading /etc/fstab.  This is the same as done for
    /dev/fdN devices, i.e. floppy devices.

commit 1927fa9cef77a6e665752763ffbbf9c0e9c31aa5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 22 14:32:18 2017 +0000

    v2v: vCenter: Remove proxy environment variables (RHBZ#1354507).
    
    Currently imports from vCenter sometimes obey proxy environment
    variables (eg. $http_proxy) and sometimes don't.  The initial libvirt
    connection to fetch metadata never uses the proxy, but because the
    subsequent conversion and copying uses libcurl, it will pick up on
    proxy environment variables.
    
    This makes no sense, and in any case vCenter is really slow as it is
    without putting another device into the data path.  Therefore ensure
    that libcurl does not see any proxy environment variables by unsetting
    them.

commit 11c1b56da9a2f95a801e2e8048aa5ff26896d8ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 22 14:49:43 2017 +0000

    mllib: Add unsetenv(3) binding to Unix_utils.
    
    Missing from the OCaml stdlib.  This implementation is the same as the
    one in Jane St's Core, except we don't bother to throw an exception on
    error.

commit 9a9d17383513bcfffb39ecafd8f3e4a47f28097b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 22 14:05:32 2017 +0000

    mllib: Combine small Unix library call bindings into Unix_utils module.
    
    Concatenate six small modules containing Unix/POSIX library call
    bindings into a single module called Unix_utils.
    
    The previous modules and the library functions bound were:
    
     - Dev_t:   makedev(3), major(3), minor(3)
     - Exit:    _exit(2)
     - Fnmatch: fnmatch(3)
     - Fsync:   sync(2)
     - Mkdtemp: mkdtemp(3)
     - StatVFS: statvfs(2)

commit aac990d8e144068a602fe4bd76d0b693b276943c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 21 20:07:43 2017 +0000

    Version 1.35.26.

commit 67369c575e219c2b9460c4020decba858464d35a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 15:09:13 2017 +0000

    tests: Extend $TEST_FUNCTIONS with predefined functions for skipping tests etc.
    
    Apply this change across all the shell scripts containing tests.
    
    Additionally this defines the environment variables $abs_srcdir,
    $abs_builddir, $top_srcdir, $top_builddir, $abs_top_srcdir and
    $abs_top_builddir which can now be used throughout test scripts.

commit e9b3372f981b42997bdcf620f6ac2a03857a8246
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 14:49:43 2017 +0000

    tests: Add $TEST_FUNCTIONS.
    
    This macro(?) expands to some shell script to source the
    tests/test-functions.sh file from its correct location.  The intention
    is to use this in all tests, but in this commit only the existing
    tests which already include test-functions.sh are modified.

commit dfd0211e1e14d52310405bb19667b6fe56793881
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 14:43:37 2017 +0000

    tests: Rename test-data/test-utils.sh -> tests/test-functions.sh.
    
    This is pure code motion.

commit 8e1767ac807792b024c213fcaa55861f57f35f23
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 21 10:58:41 2017 +0000

    generator: Put all the daemon procedure numbers (proc_nr) into a single table.
    
    Daemon 'proc_nr's have to be assigned monotonically and uniquely to
    each daemon function.  However in practice it can be difficult to work
    out which is the next free proc_nr.  Placing all of them into a single
    table in a new file (proc_nr.ml) should make this easier.

commit 169b4cec16adfebf858a67d11226c229b1c31d6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 12:28:25 2017 +0000

    generator: Move guestfish commands to new module Fish_commands.

commit 5c5bc67ea2465324e73367abf92cc6d05fea45b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 10:32:33 2017 +0000

    generator: Group and move APIs from actions.ml into actions_*.ml.
    
    Group the APIs logically and move them into new modules:
    
    Actions_core:
      Core APIs and anything that doesn't fit into another group, eg. launch.
      (With some more effort this could be split further.)
    
    Actions_augeas:
      Augeas APIs, eg. aug-init.
    
    Actions_debug:
      Debug APIs.
    
    Actions_hivex:
      Hivex APIs, eg. hivex-open.
    
    Actions_inspection:
      Inspection APIs, eg. inspect-get-type.
    
    Actions_properties:
      Handle properties, eg. set-hv, get-hv.
    
    Actions_tsk:
      SleuthKit APIs, eg. filesystem-walk.
    
    *_deprecated:
      All of the above modules have deprecated variants, where we
      place the deprecated actions.

commit 6042a6ce7a64c43680acc49b5b6b5a4abbf213aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 09:46:14 2017 +0000

    generator: Move test APIs to new module.

commit 4db19addcb4c3a30fdb4a42125d7ac66461ab615
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 09:36:30 2017 +0000

    generator: Move defaults to Types module.
    
    Just code motion in preparation for the following commits.

commit 14f3ff499a067a164c36994b120475cf29c61e6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 11:06:49 2017 +0000

    generator: Stablise output of common/protocol/*, daemon/*, lib/* and tests/c-api/tests.c
    
    Sort the functions so the output is stable.
    
    This changes the order in which the C API tests run.  Previously we
    ran the newest tests first, which was useful when we were frequently
    adding new APIs.  Now we run them in sorted order.

commit 9c3813e3a429ddbe5e2e38c34ccbad39d8bc8756
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 10:08:34 2017 +0000

    generator: Generate stable UUID from contents of all action*.ml files.
    
    Also rename the function 'uuidgen ()' (conflicts with a same-named
    function in Common_utils) to 'stable_uuid'.  Notice that the UUID is
    now only computed once per run of the generator, whereas previously
    the same value was computed over and over again.

commit 3b1f983b1510412c993cb881141c8c416f1482b1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 20 15:18:02 2017 +0100

    dib: rename "aux" to "in_target.aux"
    
    Sadly, there are elements (hello "gentoo"!) that, during the cleanup.d
    phase, wipe out almost everything in the /tmp of the guest, including
    the /tmp/aux where virt-dib mounts the auxiliary data. Since that
    removal excludes things starting with "in_target" (mostly to avoid
    wiping the "in_target.d" that disk-image-create itself sets up, then
    rename our "aux" subdirectory to "in_target.aux" to work it around.
    
    Hopefully, the "gentoo" element will be fixed upstream:
    https://review.openstack.org/#/c/436101/

commit 70540d2638feed1a335eddb0ba406d02fc3bbcf0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 20 10:12:15 2017 +0100

    dib: handle lack of phases when reloading scripts list
    
    Commit 8ee51ee39603d8a1117c471e6660bf605c7d6b3a re-scans for the
    available scripts when running certain phases; OTOH, some of them may be
    missing, usually due to the lack of scripts for that phase in the
    selected set of elements.
    
    Indeed, if there is no directory for a phase, safely raise Not_found so
    the case is handled as if the phase was missing in the final_hooks
    Hashtbl.

commit 595d0fd1afd9adbaad9232ea19a9cf178da1c8e1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 20 09:44:34 2017 +0100

    dib: unset all temporary dirs envvars in fake-sudo
    
    The real sudo does it as well, and leaving them when preserving the
    environment (-E) maybe breaks the applications, as e.g. chroot will have
    a TMPDIR path pointing outside of it.

commit 9dc5ad5035b5095eeb736cfd1f6b4662c7c8c2e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 07:52:03 2017 +0000

    Use the new Windows software/system hive APIs in various places.

commit 06e9d3327d25723153f5476fb00e5c76ef3600d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 18 07:44:19 2017 +0000

    New APIs: guestfs_inspect_get_windows_software_hive and guestfs_inspect_get_windows_system_hive.
    
    The inspection code already computed the paths of the software hive
    (twice!) and the system hive, plus we also recompute the same paths
    elsewhere, in virt-v2v for example.  Therefore it makes sense to store
    the paths from the inspection code and make them available through two
    new APIs.

commit b91eefce6b342cd4eb472610ccb0d6240499da8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 17 22:41:42 2017 +0000

    v2v: Simplify and document gnarly set_reg_val_dword_1 function.

commit d7c5fa27a59dc3b7253e7a923d0d13d168bc46e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 17 22:30:19 2017 +0000

    mllib: registry: New function for creating paths in the registry.

commit 647dbe5c434c82ab83b1bc2fb0cf1d806a2e21cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 17 22:16:43 2017 +0000

    mllib: Add Registry.t = Guestfs.guestfs * Registry.node
    
    Add a convenient tuple Registry.t for the currently open hive.  It
    contains the guestfs handle and the root node of a registry.
    
    The functions with_hive_readonly and with_hive_write are modified to
    pass this tuple to their callbacks.

commit 023a92472e48f6b620e013a4cba477aebb6a5eed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 17 21:53:01 2017 +0000

    customize, v2v: Use %systemroot% and CurrentControlSet from inspection.
    
    For reasons unknown virt-v2v recomputed the CurrentControlSet from
    first principles, and passed %systemroot% around to all functions.
    However that data is available from the libguestfs inspection APIs.

commit d273d9811e14f09d6913b2b0bba5482640c4a715
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 17 20:07:08 2017 +0000

    customize: firstboot: Use Registry.with_hive_write instead of open coding.

commit 3557580c3b69d6af40dd2c6b596054b81d2289b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 17 19:58:50 2017 +0000

    mllib: Move Windows Registry functions from v2v to common code.
    
    Move the functions decode_utf16le, encode_utf16le, get_node,
    with_hive_readonly and with_hive_write to common code in a new module
    called Registry.
    
    This also defines types for nodes and values, instead of using int64
    directly.
    
    Just code motion.

commit 9eddeedc3c0077c3c1357931334b8802f1200238
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 21 12:05:42 2017 +0000

    tail: Fix mistake in the man page (RHBZ#1425306).
    
    Thanks: Xianghua Chen

commit 9d719f4fbfe73a026c9305613b13e5110ceb8d94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 20 20:09:30 2017 +0000

    p2v: Fix slow test to pass LIBGUESTFS_PATH & LIBGUESTFS_CACHEDIR to virt-v2v.
    
    Adding a new optional parameter to hivex_open in
    commit 1f99251223ccee252ee1259bc2bdb9b64e3df96b reveals a subtle bug
    in the virt-p2v slow test.
    
    Because we didn't pass LIBGUESTFS_PATH through to the instance of
    virt-v2v, it was running with the new binary and library code, but
    with the installed appliance (or would have failed if libguestfs
    wasn't installed on the host when running the test).  In particular
    this bug was revealed when the new virt-v2v binary passed the
    GUESTFS_HIVEX_OPEN_UNSAFE flag to the guestfs_hivex_open call, which
    the (old, installed) daemon did not recognize and rejected with an
    error.
    
    For the same reason we also have to pass in LIBGUESTFS_CACHEDIR to
    make sure that supermin doesn't reuse the cached appliance from
    /var/tmp.

commit fc8db2e0ba93fef9bdeda635d3e5965979c1c4e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 20 12:05:02 2017 +0000

    9p: Update test for virtio-pci on aarch64.
    
    Fixes commit 4a9af91e3632047579c3a7e011c1484c97bd959a.

commit 0d02031433642e2027bae566825b49157177bc66
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 17 14:41:33 2017 +0100

    dib: small documentation improvements
    
    Improve the grammar, and the wording, and make few details explicit.
    No change in the actual content.

commit c8c5b92bfe5a14c67f42218e6794835a76cbbdd9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 17 13:46:21 2017 +0100

    dib: preserve xattrs and SELinux attributes when exporting as tar
    
    When extracting the content of the guest as tar, save also the extended
    attributes and the SELinux attributes.  This makes sure guests exported
    as tar, tgz, and as docker image will work fine afterwards.
    
    This is what disk-image-create does as well.

commit 1eb3cd8a3c2c4c6d5e4fde4e2aebde689d898bc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 17 10:17:57 2017 +0000

    lib, tools, v2v: Use unsafe flag when reading (but NOT writing) hives.
    
    Pass the HIVEX_OPEN_UNSAFE flag when opening hives for reading.
    Do NOT pass it when opening hives for writing.
    
    This should make inspection, virt-win-reg and virt-v2v more tolerant
    about handling Windows Registry corruption, without increasing the
    risk of causing new corruption in hives.

commit 7dfdcd21d5543c4dfa4cde5a1895230fddf60f98
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 17 10:08:34 2017 +0000

    hivex: Map new HIVEX_OPEN_UNSAFE flag into the API.
    
    In hivex >= 1.3.14, there is a new HIVEX_OPEN_UNSAFE flag allowing
    heuristics to be used to deal with corrupted hives.  Map this flag
    into the libguestfs API.
    
    If the flag is not supported (because libguestfs was compiled with
    hivex < 1.3.14) then the flag is ignored.  This is safe behaviour:
    opening corrupted hives will give an error, as happened previously.

commit 68fad5ea285133ebd210119c1b2bb557a6f44999
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 16 14:06:18 2017 +0000

    v2v: Document conversion failure with RHEL 6.2 (RHBZ#1374232).

commit 6d365536dee1b2a7f78b3c9940d68701902d549e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 15 15:05:25 2017 +0000

    Version 1.35.25.

commit 8f55c606fcc659dd939d046c8f59362bf424ef37
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 15 14:26:26 2017 +0000

    docs/C_SOURCE_FILES, po/POTFILES, po/POTFILES-ml: Update these files.

commit 0f9d9850ebcfa79c68b7a2e63f3d4bc91f2e0f8c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 15 14:24:14 2017 +0000

    docs/C_SOURCE_FILES, po/POTFILES: Remove duplicate files.
    
    Because v2v/test-harness is a subdirectory of v2v, and because both
    paths are listed in $(DIST_SUBDIRS), using find $(DIST_SUBDIRS) will
    list files in v2v/test-harness twice.  (This probably happens in other
    directories too, but I noticed it here.)  The easiest fix for this is
    simply to use 'sort -u' to remove the duplicates.

commit e2321e606a1e1d73ff9d05b65ffc1480281b94e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 15 13:44:27 2017 +0000

    Update gnulib to latest.

commit 7b02e8b0dd3b1e33f5a8aaadac4b14a01389c75b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 13 14:26:46 2017 +0100

    dib: add squashfs output format
    
    Implement the "squash" output format, i.e. a squashfs compressed
    filesystem.
    
    This was implemented in diskimage-builder upstream as
    commit 9d13084c4183b63587e1f5e4b03395a8df6538f6.

commit 94e09bc8b4c60a9e3386c507e4f904313cb77a59
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 13 11:35:13 2017 +0100

    New API: mksquashfs
    
    Introduce a new API to create a new squashfs filesystem out of a path
    in the guest.  It can be configured to exclude paths based on patterns,
    and to select which compression use for the filesystem.
    
    The advantage of running mksquashfs directly in the appliance is that
    ownerships are properly saved, as opposed to tar_out + local untar.

commit e6f92729bc0ba4fef9ff2b3b6efe526198adb8cd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 13 14:20:59 2017 +0100

    daemon: move make_exclude_from_file as common helper
    
    It will be useful also for APIs different than tar-out, so move it to
    guestfsd.c, and add it a parameter to specify the function name that
    invoked it.
    
    This is mostly code motion.

commit 90eaee5dcb3140f1d6e0ba398faffb42dcbdec78
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 13 13:17:08 2017 +0100

    dib: add appliance check hook in Output_format
    
    Add a new hook for Output_format's to check for prerequisites on the
    appliance (which can be done only when the appliance is run).

commit 85e3e15286d0b7d00f544dc5512c355f2ba7e1f3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 10 16:10:10 2017 +0100

    dib: cleanup logs at end of build
    
    Recently, diskimage-builder moved the log cleanup from the 'base'
    element to disk-image-create proper; the cleanup done is:
    - truncate any file in /var/log
    - remove *.log files in /root
    
    This was implemented in diskimage-builder upstream as
    commit 022d93ee822e71245af52c4cf8f8a8e82f599af3.

commit 110cc91c3d0db6b9259a4a217240c14680cd9a2b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 10 14:47:26 2017 +0100

    dib: re-read list of scripts when running in-chroot hooks
    
    Scripts (especially root.d and extra-data.d) may add new scripts to the
    existing set during their execution: in this case, re-read the list of
    available scripts, so we do not miss any new addition.

commit 1ab90888b2443d12a9bedefe54484aa89805a0b3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 10 14:32:52 2017 +0100

    dib: change hooks path when running extra-data.d scripts
    
    It looks like scripts (in particular in the extra-data.d phase) may
    in-flight add new scripts to the existing ones.  As first step to
    handle this situation, change the path of hooks passed for extra-data.d
    scripts: instead of the local temporary directory, use the in-guest
    location that is visible as result of the local fuse-based mount of the
    guest.

commit a75206fd13c03899688f0bb419da65c0f65969ba
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 8 13:32:12 2017 +0100

    dib: source dib "die" script in some phases
    
    Source the "die" script, part of the diskimage-builder library, when
    running hooks that run outside the guest chroot.  This is what
    disk-image-create does, and scripts expect to use the "die" function
    without sourcing the "die" script containing it.

commit 244c5a28520ddb30a83c7f5417ab23bb3be5498b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 6 16:17:21 2017 +0100

    dib: fix listing envvars in fake-sudo
    
    Query awk for the list of environment variables, instead of trying to
    extract the list from the output of `env`: the old approach breaks when
    any of the environment variable contains more than one line.

commit a1730b0b3e43d52ff7f2e8c50b7a5b5a430187fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 14 14:52:53 2017 +0000

    GCC 7: Allocate sufficient space for sprintf output.
    
    GCC 7.0.1 can determine if there is likely to be sufficient space in
    the output buffer when using sprintf/snprintf, based on the format
    string.
    
    The errors were all either of this form:
    
    bindtests.c:717:29: error: '%zu' directive output may be truncated writing between 1 and 19 bytes into a region of size 16 [-Werror=format-truncation=]
         snprintf (strs[i], 16, "%zu", i);
                                 ^~~
    bindtests.c:717:28: note: directive argument in the range [0, 2305843009213693951]
         snprintf (strs[i], 16, "%zu", i);
                                 ^~~~~
    
    or this form:
    
    sync.c: In function 'fsync_devices':
    sync.c:108:50: error: '%s' directive output may be truncated writing up to 255 bytes into a region of size 251 [-Werror=format-truncation=]
           snprintf (dev_path, sizeof dev_path, "/dev/%s", d->d_name);
                                                      ^~
    
    Fixed by converting these into dynamic allocation, or making the
    output buffer larger, whichever was easier.
    
    There is a gnulib macro we can use to make this simpler for integers.
    It requires a new gnulib module (intprops), but it turns out that we
    were already pulling that in through dependencies, so the change to
    bootstrap is a no-op.  (thanks: Dan Berrange)

commit 8728f676da6c0889dc315eae98d8f1257b801286
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 14 14:51:39 2017 +0000

    GCC 7: Add __attribute__((noreturn)) to some usage functions which call exit.
    
    This happens with GCC 7.0.1.  The errors were all of the form:
    
    qemu-speed-test.c: In function 'main':
    qemu-speed-test.c:153:7: error: this statement may fall through [-Werror=implicit-fallthrough=]
           usage (EXIT_SUCCESS);
           ^~~~~~~~~~~~~~~~~~~~
    qemu-speed-test.c:155:5: note: here
         default:
         ^~~~~~~

commit eb0bc30ed7d1aa8cd82183177ce4d7a61755c2fa
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Fri Feb 10 16:05:58 2017 +0100

    mllib: add Xml.parse_file helper
    
    Provide a helper function rather than having callers read the
    file and then parse the string.

commit fb8a3935d7c3f7682f8a862174b73d14f5892af4
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Fri Feb 10 16:05:57 2017 +0100

    Move xml and xpath_helpers OCAML code to mllib
    
    To allow other pieces of code to process XML files easily, move the
    xml.ml* and xpath_helpers.ml* from v2v to mllib.

commit c6af07cc2c7c7888dc38e69be3123b8838ea31dc
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Fri Feb 10 16:05:56 2017 +0100

    mllib: factorize code to add Checksum.get_checksum function
    
    Getting checksum involves the same code than verifying them. Create
    a get_checksum function and use it in verify_checksum.

commit 391821f295c890f789f6e8358dc3fae50e5351d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 31 08:44:21 2017 +0000

    fish: Link to libtinfo (RHBZ#1417549).
    
    Fixes commit a8c5739fd2637038b753669e5a9469d6addd3e15.
    
    Reported by: Jean-Christophe Manciot

commit b18716d10e6dcb079ea8c3b5ee9e4b2fe20c0c9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 11 09:15:25 2017 +0000

    Version 1.35.24.

commit 00967cd0796d4c4d7236a56f4783fa9338847519
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 11 09:07:09 2017 +0000

    test-data: Use qemu-img instead of guestfish to create blank disks.
    
    Since this step runs during make (not make check), guestfish
    hasn't been built yet.
    
    Fixes commit fa83b4787653aa296a09d149cfa3e30aaed4eea6
    and commit 74ded0dbc17b84638cc06c0b4d028484d114c00f.

commit b9124babe1eaa9da2fe45ba0036da4b6572eac0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 22:54:04 2017 +0000

    Version 1.35.23.

commit f9902024b2b483e1c0ca23d9f0f66d7a08cf5d00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 22:41:55 2017 +0000

    test-data: Use ./run script to run 'guestfish disk-create'.
    
    Commit 74ded0dbc17b84638cc06c0b4d028484d114c00f changes existing calls
    to truncate to run 'guestfisk disk-create' instead.  However this
    fails if guestfish has not been installed.  By using the ./run script,
    we can use the just-built guestfish instead.
    
    Fixes commit 74ded0dbc17b84638cc06c0b4d028484d114c00f.

commit 94cbbde5473f16e18ad7522fa7b00da3d4295620
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 13:15:44 2017 +0000

    Version 1.35.22.

commit 25158dbb7e35420965613cfe5d7d66602f254190
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 13:29:38 2017 +0000

    v2v: Add result of qemu-img offset/size test to debug output.
    
    Updates commit 3fc95200696f5f572749008b6ce81af71e18a334.

commit c8e5efafc562369c59bf64f25f96954b34c59bf2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 13:29:15 2017 +0000

    v2v: Fix quoting in external qemu-img command.
    
    Fixes commit 3fc95200696f5f572749008b6ce81af71e18a334.

commit f796cf61084022e4306b04329ccc1512a47fe8d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 13:05:00 2017 +0000

    contrib: Sort patches into alphabetical order and add to EXTRA_DIST.
    
    We also have to use AM_INIT_AUTOMAKE(tar-pax), since otherwise
    automake uses some ancient tar format that doesn't support a filename
    this long.  (See: https://noiselabs.io/2010/02/27/tar-file-name-is-too-long-max-99/
    for a clear explanation)
    
    Fixes commit b702ec19e859f6f3333b129a8b0a7fc278ed400f.

commit e1da8dca29ef02afa988813ef9865de9344ce41d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 12:54:56 2017 +0000

    v2v: ova: Further fix test cases.
    
    Updates commit 7461a8fab14829086f723cba44d07d008994bd5c.
    Fixes and partly reverts commit 8f91d3a9b0356a701c1904e0a2efa5d272d08ac2.

commit 57c4bc2f018774a019611efb623eae30ecdd936b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 10:14:15 2017 +0000

    daemon: selinux: Document cases where setfiles takes a long time to run.
    
    Just adding a comment pointed back to the bug.

commit e9cc58f5219ed416fcaadf777c2737de24859156
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 17:00:57 2017 +0000

    contrib: p2v: Add scripts to build and test virt-p2v ISOs with RHEL 5, 6.
    
    This adds a contrib script which can be used to build the virt-p2v ISO
    on top of RHEL 5 or RHEL 6, i686 (32 bit) or x86-64 (64 bit) base.
    
    There is also a script for testing the ISOs produced this way.

commit 30ea91ab833c1842d7eee433d4acfe4846dcfee9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 9 17:49:49 2017 +0000

    builder: templates: Call sync after running virt-install.
    
    I don't think this will really make any difference.  However there is
    some puzzling disk corruption in the recently built RHEL 5 & 6 i686
    images, and I want to make absolutely sure they are not caused by an
    unsynchronized disk image.

commit f672c0fbe1c0853b2a0f496ceec50828b0d396ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 9 13:23:37 2017 +0000

    builder: templates: Add 32 bit (i386) templates for RHEL 5 and 6.

commit 5028e3ca31b205b73a74c6a8ba6b58c9bd7f1aa5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 18:37:46 2017 +0000

    p2v: Fix RHEL URLs in kickstart.
    
    Also make the repo directives use the --proxy flag if specified and
    supported.

commit b5bba7350a91e2e4fa2a1798f30f652cee998d03
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 17:38:54 2017 +0000

    p2v: Fix virt-p2v-make-kickstart when run from local directory.
    
    It was looking for the binary in p2v/virt-p2v/virt-p2v.xz.  This fix
    makes it look for the correct path p2v/virt-p2v.xz.

commit 8aaccbc20cc44e2270a09cf9a11a09f7253a8c0f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 6 15:38:35 2017 +0000

    v2v: ova: Don't rely on qemu-img version, test "offset" and "size" features.
    
    See:
    
    https://www.redhat.com/archives/libguestfs/2017-February/msg00064.html

commit 4d0bbdc661e12b840f53ace3c482025650ac209c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 4 10:28:41 2017 +0000

    p2v: Document sources of ssh/session timeout problems.

commit ddc95d329abe66efd59f61efca24849622bca93b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 4 14:30:29 2017 +0000

    p2v: Send ping packets every 5 minutes to sshd.
    
    Also drop the connection if no response at all has been received after
    30 minutes.
    
    This action should prevent firewall timeouts from causing virt-p2v to
    fail (see this thread:
    https://www.redhat.com/archives/libguestfs/2017-February/msg00010.html).
    
    Thanks: Tomáš Golembiovský

commit b0ac971b93feed281ba69ed695d80d65baccaad9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 4 14:26:10 2017 +0000

    p2v: Use the ADD_ARG macro to simplify ssh/scp parameters.
    
    No functional change.

commit e9bd5a8da6f7b09057cf327a11654fa886a57366
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 4 14:25:14 2017 +0000

    daemon: Allow ADD_ARG macro to be used everywhere.
    
    This is a simple macro with no dependencies.  Allow it to be used from
    any program.

commit 402706cac2b261a5f5a46a97469edee9ff1bfa39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 12:04:23 2017 +0000

    resize: tests: Remove comment.
    
    Doesn't look like we'll handle extended partitions any time
    soon, so remove comment.

commit b8e47919c511078d5f8ab90e67a64468bb782b1f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 11:58:34 2017 +0000

    builder: tests: Disable valgrind for test with multi-line parameters.
    
    Breaks libtool, see:
    https://bugzilla.redhat.com/show_bug.cgi?id=1420301
    
    This updates commit 736a8465a6c80700c76078ba581f2cd30374eb03.

commit fc7a33131707c9c2a1571d796d4068a41c80650b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 10:30:58 2017 +0000

    valgrind: Add libtool to the @VG@ macro.
    
    There were still a few places where we were testing bash rather than
    the intended program.  Add `libtool --mode=execute' to the beginning
    of the @VG@ macro to try to get around this.

commit 86002c045744963bfb1f6e4df911db58dcb65697
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 7 18:51:39 2017 +0000

    Version 1.35.21.

commit 04ddabed83ec9915f301af4c7c945d4de78366d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 7 21:53:22 2017 +0000

    v2v: ova: Add various test data files to EXTRA_DIST.
    
    Fixes commit 8f91d3a9b0356a701c1904e0a2efa5d272d08ac2.

commit 84b7789433c81e384d53aa7c4920d2aed0c6602b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 7 21:08:38 2017 +0000

    v2v: Skip one test because virt-v2v -i ova can break with libvirt backend.
    
    See:
    https://www.redhat.com/archives/libguestfs/2017-February/msg00101.html

commit 2d9ca08089c94087541d4142510c3ef38be1863a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 7 17:34:14 2017 +0000

    RHEL 5: tests: Don't use 'truncate' command.
    
    The coreutils 'truncate' command does not exist in RHEL 5.  Replace
    use of this command in tests with the guestfish 'disk-create' command.

commit 68d0b6811fc80cc5ba364364068129c35f819319
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 7 18:50:52 2017 +0000

    v2v: ova: Normalize the output in test case.
    
    Fixes commit 8f91d3a9b0356a701c1904e0a2efa5d272d08ac2.

commit c8c0eeebf2eab423d6641faf32f1a59bd7136167
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 2 17:59:26 2017 +0000

    p2v: Use socket activation with qemu-nbd and nbdkit.
    
    If supported, use socket activation to pass a pre-opened listening
    socket to the NBD server.  This means we can guarantee to choose an
    unused port even if there are multiple instances of virt-p2v running
    (ie. when testing) or if there are unexpected services running on the
    same machine.
    
    This change applies to both NBD servers, since both now (or will
    shortly) support this feature.

commit 9d51931153bcf1eef1e5bdf116d14183881ae734
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 3 13:39:48 2017 +0000

    p2v: Don't hard code "localhost" (NBD listening address) everywhere.
    
    No functional change.

commit 2494b408b91fabc4ed49fb75e2ef794b08f60dcc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 2 17:38:18 2017 +0000

    p2v: Move nbd_local_port to nbd.c.
    
    In preparation for using socket activation, move the nbd_local_port
    global inside nbd.c and make it private.
    
    This is largely code motion.  However I rearranged the order in which
    the ssh data connection and the NBD server are started up.  Previously
    the ssh connection was made first, and the NBD server was then
    started.  Now the NBD server starts first.  This happens so that nbd.c
    can choose the local port, and when we implement socket activation it
    will allow nbd.c to open the socket and choose a free port too.

commit df94c61c50c9867a67c2a9dd7a8429525accb990
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 2 16:39:56 2017 +0000

    p2v: Clean up ugly implementation of --nbd option.
    
    The previous implementation was pretty ugly.  This reimplements things
    a bit more cleanly.

commit c46b44400e13e685b8c75f4019a053182a979c26
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 2 15:44:48 2017 +0000

    p2v: Move NBD-related functions into a separate file.
    
    This is almost pure code motion, but I changed the name and prototype
    of the function 'wait_nbd' to make its purpose clearer, and to remove
    the unnecessary timeout setting (which is hard-coded).

commit f20471a9fd647256031d1339b57f3a324fd63f8a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 12 11:28:28 2017 +0100

    resize: support non-local output disks (RHBZ#1404182)
    
    Parse the output disk as URI, and use all its attributes just like
    it is done for the input disk.  The only change is that the fsync of the
    output disk is limited now for local URIs only, since it will not work
    with remote protocols.

commit 3f6643124ee2b79bab987c6f2105a10b89589c85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 3 15:08:52 2017 +0000

    lib: g->program is now never the empty string.
    
    The getprogname module either sets g->program to a string derived from
    argv[0] or fails at compile time.
    
    Fixes commit eea210dbf7d781bc253f927977868dbc6776f20d.

commit 2b73f92335a336bcc9cc8fa42abd4de80ca16b66
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 2 13:34:13 2017 +0100

    dib: add tgz output format
    
    Implement the "tgz" output format, i.e. "tar" compressed as gzip.
    
    This was implemented in diskimage-builder upstream as
    commit da41ee6012b064aa6901c871a1104a3a3933117e.

commit 5b158e7867eae2d24c18d40c4d90c617ba1fb1d8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 2 11:58:06 2017 +0100

    dib: clarify "output:" lines in --machine-readable documentation

commit bfa2ef164a6e3b8cee375166d08e2566f1033897
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 2 11:53:53 2017 +0100

    dib: refactor output formats handling
    
    Implement a system similar to the operations in virt-sysprep, so each
    output format has its own file and attributes (such as command line
    arguments).
    
    The result is that there is no more need to spread everywhere the job
    required by each output format, such as checking for tools, or hooking
    at the right point.

commit 78b35f09d9eec65ee117dd17c2d6cf2fe5e32dea
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 18 14:38:59 2017 +0100

    dib: pass custom mkfs options after the filesystem type
    
    Make sure they are handled as options for the actual mkfs driver,
    instead of mkfs itself.  Also, improve the documentation of
    --mkfs-options accordingly.
    
    This was fixed in diskimage-builder upstream as
    commit 5e2330d89c6c0e55b270464abea7e99a4d3246ad.

commit b93fb76ecdd02a2c40b6a9b3e0ca98e39e866a66
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 18 13:50:04 2017 +0100

    dib: add --checksum
    
    Add a new option to create files with the MD5 and SHA512 checksums of
    all the disk image types produced.
    
    This was implemented in diskimage-builder upstream as
    commit 2ea5feca5c4b64867ac327736edfb20408f8840e and
    commit 22952b7ea0543bb4f446752976d1d8ba232b021a.

commit 1d946223d4cdfe756917028d051089306a3b40ac
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 17 15:57:47 2017 +0100

    dib: clear up "already provided" message
    
    Improve the error message that is shown when trying to selecting an
    element, and another element provides it.
    
    This was implemented in diskimage-builder upstream as
    commit 452f7b8d5aaa6e85e3b01b970cd9cbc842b34b86.

commit a3ed25d09b2310a6a19a9e5e20b058d56b91c38b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 5 13:26:48 2017 +0100

    fuse: use the configured program name
    
    When initializing FUSE, use the program name as set (either
    automatically or manually) in the guestfs handle.

commit 4c083d1fad4aadc7067230f84afe98022cc65459
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 4 15:49:26 2017 +0000

    v2v: Use failwithf instead of failwith (sprintf ...)

commit 1f2643282d7bb54ef8ad11a24c59d026a4780025
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 4 15:46:58 2017 +0000

    v2v: Use failwith/failwithf instead of raise (Failure ...)
    
    Minor refactoring of ommit d3c93e332030891426db3800ce137050590ba4f6.

commit a4ea8ddad33b1ded23670cd973e330fc1e82290e
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Sat Feb 4 15:10:46 2017 +0100

    v2v: ova: don't extract files from OVA if it's not needed
    
    We don't have to always extract all files from the OVA archive. The OVA,
    as defined in the standard, is plain tar. We can work directly over the
    tar archive if we use correct 'offset' and 'size' options when defining
    the backing file for QEMU. This puts much lower requirement on available
    disk space.
    
    Since the virt-v2v behaviour for OVA input now depends on QEMU version
    available this affects some of the tests. Expected result of the
    affected also has to depend on the QEMU used thus such tests will have
    two *.expected files.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit e54721728d5616a574b773433fcb9bb7a2db01bb
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Sat Feb 4 15:10:45 2017 +0100

    v2v: add function find_file_in_tar to utils
    
    The function looks up file in tar archive and returns a tuple containing
    which at byte it starts and how long the file is.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit e69bc343d0bf35ae030ddd896d3a88a421ba9e1d
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Sat Feb 4 15:10:44 2017 +0100

    v2v: add function qemu_img_version to utils
    
    The function returns version of qemu-img as a tuple (major, minor), or
    the value (0,9) in case there was an error detecting the version.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit edd6cfcf81910b6c187cf25aa54175b017fb3406
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Sat Feb 4 15:10:43 2017 +0100

    mllib: add subdirectory function to common_utils
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 93f7861239cc36849ab615615938956e7653c567
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 4 15:11:39 2017 +0000

    generator: Move failwithf to mllib.
    
    A useful function.  This is just code motion.

commit 590699809deecfa76be880fa3409a078ac30efa7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 1 13:36:07 2017 +0000

    v2v: Further increase memory allocated to the appliance (RHBZ#1418283).
    
    In commit 08f82f2e3d6975b72340dd59f438862e152a15ef we increased the
    memory size to 800MB (on x86) so that the semodule command would work.
    
    However it has been discovered that another SELinux command takes
    large amounts of RAM (setfiles during the SELinux relabel step).
    Therefore increase the memory size again, this time to 2000MB.

commit c560e8575714a4d632fb9ec446b89e3943ca4083
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 1 12:22:11 2017 +0000

    docs: Document that virt-p2v can use qemu-nbd or nbdkit.
    
    Fixes commit 4af9081e0d8e9e16fccad0150ac1cb1c2cae4c4d.

commit 7a4fb7e03072e0e269f1b328c0e779f6a1b4e052
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 31 19:25:25 2017 +0000

    uefi: Remove references to kraxel's old edk2 builds.
    
    As noted in the source code, these were due to be removed at
    the end of 2016.

commit 61646d782ca56c61a16ff3a65cc05a110f4ea0b0
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Mon Jan 30 22:43:14 2017 +0100

    v2v: ova: don't detect compressed disks, read the OVF instead
    
    The information whether the disk is gzip compressed or not is stored
    in the OVF. There is no reason to do the detection.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit e94d041a2c2cd591ffa3d60814cdcbaf4472c90c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 31 11:00:51 2017 +0000

    configure: Fix release date of 1.35.20.
    
    Fixes commit 7b6b9d9bea648a88c7c6519c2780f2291771c28d.

commit 00de3ee2b440d685c3e4b7dcfba9e79a9124be34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 29 17:54:06 2017 +0000

    common/miniexpect: Add README and miniexpect.pod from upstream.

commit ca447fbe79deb2aa2526c45507e2981950b08470
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 29 17:25:41 2017 +0000

    generator: Make 'main.ml' clearer.
    
    - Make module name explicit, so it's more obvious which module a
      function is defined in.
    
    - Group lines of code by feature.
    
    - Capitalize some module names properly.
    
    Just code motion, no functional change.

commit cf633a3fa1309ab84ec71d39afe465c65e16098a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 29 13:33:16 2017 +0000

    po: Really ignore perl/lib/Sys/Guestfs.c (RHBZ#1417444).
    
    Incorrect grep expression meant this file was not being ignored
    before.
    
    Thanks: Marius Cirsta

commit e6e68e11a569d283f1246db24d51d3377f1e52e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 28 13:23:40 2017 +0000

    fish: Handle changed type of 'len' parameter in gperf 3.1 (RHBZ#1416941).
    
    Commit 004de6cf45cfe66ca166cbdcb1c3125a2a81eb31 was not sufficient to
    solve this problem.  We are also using gperf in guestfish.  Rewrite
    the code in the same way to avoid having to prototype the hash
    function.

commit 416f7ec9f9e02a8ceee0531a20f01e03ce347055
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 27 13:02:36 2017 +0000

    Version 1.35.20.

commit c1899f6ea06e1bb16e7896594b7174bf498ff614
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 14:32:23 2017 +0000

    p2v: Add a test for virt-p2v with nbdkit.

commit f779410807764083e21e8e70b1baf61a8faf9e6a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 14:30:42 2017 +0000

    p2v: Allow nbdkit as an alternative NBD server to qemu-nbd.
    
    Add code in virt-p2v so that it can use nbdkit (with the file plugin)
    as an alternative to qemu-nbd.
    
    This is controlled through the virt-p2v --nbd command line option,
    allowing you to select which server (out of qemu-nbd or nbdkit) you
    prefer (with a fallback).  The default is: --nbd=qemu-nbd,nbdkit so
    qemu-nbd will be used preferentially.

commit 5cf624ba6cb13418c430388f0fb0f23a8ea605a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 14:51:41 2017 +0000

    p2v: In non-ISO environment, don't use hard-coded port 50123.
    
    When testing virt-p2v (eg. on the host machine) this prevents us from
    testing two instances of virt-p2v at the same time because both will
    try to use the same port.

commit 5d538f40f296ad3bcaddfd25b6285c357cde9517
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 15:49:35 2017 +0000

    tests/mount-local, tests/parallel: Use srandom (time (NULL) + getpid ()).
    
    If two instances of the test start at exactly the same time, they
    would have the same random number seed.

commit 296cd387832ad3d81cd2933c7a42f32789897f65
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 19:23:46 2017 +0000

    common/edit: Don't use random() function.
    
    Generate the random filename using our utility function
    guestfs_int_random_string.  This also means that we will not need to
    call srandom() in guestfish or virt-edit.

commit 278d4e2625966b5789ca404a5ace4c899a425ac8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 21:22:48 2017 +0000

    errnostring: Handle changed type of 'len' parameter in gperf 3.1 (RHBZ#1416941).
    
    The prototype of the hash function changed in gperf 3.1:
    
    * The 'len' parameter of the hash function and of the lookup function is now
      of type 'size_t' instead of 'unsigned int'. This makes it safe to call these
      functions with strings of length > 4 GB, on 64-bit machines.
    
    This commit moves the guestfs_int_string_to_errno function into the
    third (functions) section of the gperf file so it is able to use the
    lookup function without needing a prototype.
    
    Thanks: Marius Cirsta

commit cd473a650c841d6ab93d462516fcd04d444d9c65
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 27 09:31:40 2017 +0000

    Revert "errnostring: Handle changed type of 'len' parameter in gperf 3.1 (RHBZ#1416941)."
    
    This reverts commit 3a2b89a09ea12db7c55b07cb9e95cdf09b5b845b.

commit 376bfe7030ef66245a64a20276a093d8c93363a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 21:22:48 2017 +0000

    errnostring: Handle changed type of 'len' parameter in gperf 3.1 (RHBZ#1416941).
    
    The prototype of the hash function changed in gperf 3.1:
    
    * The 'len' parameter of the hash function and of the lookup function is now
      of type 'size_t' instead of 'unsigned int'. This makes it safe to call these
      functions with strings of length > 4 GB, on 64-bit machines.
    
    This change tries to detect the required type in ./configure
    
    Thanks: Marius Cirsta

commit 9a74797502e7264a9362f13546855c1cdb3d3536
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 25 17:59:45 2017 +0000

    p2v: Move miniexpect library to common/miniexpect.
    
    No change, just code motion.

commit 5715af4ee24f2553ce1014d03ac8d49f875ac891
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 25 13:21:03 2017 +0000

    df: Move framework for processing domains in parallel to common/parallel.
    
    Just code motion.

commit d93eb2e0401fa3d10fffcde48e9e3dc44ce87325
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 25 12:03:40 2017 +0000

    fish: Move edit, progress, windows under common/
    
    Three more pieces of common code are moved under the common/
    subdirectory.  This is just code motion.
    
    Note that windows.[ch] wasn't even being used by guestfish.  That code
    was only used in other virt tools.

commit 91081834ba1601f1e9240f2ea0bd164d95492b09
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 20 11:24:49 2017 +0000

    fish: Move fishcommon library to common/options.
    
    This is mostly code motion but:
    
    (1) I had to remove the compile-time COMPILING_GUESTFISH and
    COMPILING_VIRT_RESCUE macros and replace them with runtime constants
    and checks.
    
    (2) I moved the fish/config.c file into this library.

commit e02eb1b163e29726b4aa82c4e233c16a6f775407
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 19:34:21 2017 +0000

    cat: Move visit library to new directory common/visit.
    
    Just code motion.

commit 7f7bc8cd8be33dc31667bf1c3be3131dc169eef3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 18:19:07 2017 +0000

    Rename src/ to lib/

commit 2ca9b7396a5cb87ea759f1afde4e09ef7a692cc1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 15:53:19 2017 +0000

    lib: Move utilities to new directory common/utils.
    
    Just code motion.
    
    This commit makes it clearer what is a utility and what is part of the
    library.  It also makes it clear that we should rename:
    
      guestfs-internal-frontend.h -> utils.h
      guestfs-internal-frontend-cleanups.h -> cleanups.h (?)
    
    but this commit does not make that change.

commit cfe04ffd1396f74c9153cc4865bfaf42951a8399
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 15:02:17 2017 +0000

    lib: Share common protocol and errnostring libraries with the library and daemon.
    
    This commit, which is just code motion, moves the common XDR protocol
    code (libprotocol) and the common errno handling (liberrnostring) into
    libraries which are each built once and shared between the library and
    daemon.

commit a62c96a8f35da3d26754c14c82a25b771b08d4e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 25 18:00:31 2017 +0000

    gobject: Avoid multiply defined CLEANFILES.
    
    The error is:
    
    gobject/docs/gtk-doc.make:52: warning: CLEANFILES multiply defined in condition TRUE ...
    gobject/docs/Makefile.am:95:   'gobject/docs/gtk-doc.make' included from here
    common-rules.mk:28: ... 'CLEANFILES' previously defined here
    gobject/docs/Makefile.am:18:   'subdir-rules.mk' included from here
    subdir-rules.mk:20:   'common-rules.mk' included from here

commit a72ba13ed3aa72cab718c82f8a89f2dba5039516
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 14:37:49 2017 +0000

    p2v: Don't inhibit D-Bus support for modern systems.
    
    Fixes commit c526afbe95cdc613fc24a948e5323c73eafc69f0.

commit 359a4c6acef268e307ce899cd985c958962b6e72
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 25 12:25:08 2017 +0000

    p2v: gtk: Update docs/C_SOURCE_FILES.
    
    Updates commit 17cc502d9b14e36854f1fa26ab551665f9b6ba91.

commit dc1f5281a0ff5fe3a8db2da45136bc73aa474e8b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 20 14:47:51 2017 +0100

    p2v: log also environment on conversion server
    
    Save the content of the environment on the conversion server, so it is
    one additional help when debugging failed conversions.

commit 698d2f47d703d7656afff13572e642aaed3b131a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 21 13:54:02 2017 +0000

    RHEL 5: p2v: Ignore garbage when decoding base64 sections in kickstart.
    
    RHEL 5 base64 utility requires this flag to ignore newlines in input.

commit a2ef7509d2ba799d49bc89301ca0a31ef0957462
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 21 05:22:36 2017 -0500

    RHEL 5: p2v: Workarounds for limited partial match support in ancient PCRE.
    
    In the ancient version of PCRE in RHEL 5, partial match support does
    not support /.*/, returning PCRE_ERROR_BADPARTIAL.  However the
    equivalent regular expression /(?:.)*/ works fine, so use that
    instead.

commit 500e460c0144b2c65248912c7a82dfb1bbd320ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 21 09:51:52 2017 +0000

    p2v: gtk: Move Gtk compat macros into separate files.
    
    Just code motion.

commit 4a67c18f6daa932573635ef135e7c7fe14717b03
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 21 04:41:05 2017 -0500

    p2v: Include file and line number in internal errors.

commit 8decbfeb911dec9a38d378e9e8a7a99b49321078
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 21 04:34:17 2017 -0500

    RHEL 5: p2v: Compile GUI for ancient Gtk 2.10.
    
    RHEL 5 has ancient Gtk 2.10 which lacks several functions and whole
    features we need (eg the spinner).  Add various macros and function
    definitions to work around this.

commit 856268365477afced5eb9f05f6ed7bc9b6ded17f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 21 04:33:08 2017 -0500

    RHEL 5: p2v: Don't compile inhibit support if dbus doesn't support FD passing.
    
    Since RHEL 5 doesn't have systemd, inhibit isn't supported anyway, so
    compiling it out is no problem.

commit 50ff9733a063912baaee1607b574f925b86317fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 21 04:29:05 2017 -0500

    RHEL 5: p2v: Skip partial match checking when PCRE_INFO_OKPARTIAL is not defined.
    
    This test is only a sanity check, so skip it when pcre doesn't define
    this symbol.

commit 17d02ecf4f8049daa2a1fcabb86c7cd994451d83
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 20 13:47:35 2017 +0000

    p2v: Document lscpu, lspci, lsscsi, lsusb files.
    
    Updates commit 5f0bcc3057ec22dba37a8cb8468892e85023998e.

commit 8c81bc945fff1a49753eef0bbcfd8ef72e946d5a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 20 09:09:49 2017 +0000

    p2v: Add more debugging information: lscpu, lspci, lsscsi, lsusb.
    
    Dump extra information from the source physical machine to help with
    debugging.

commit 65c0ad95243b922dafd236e9a7dfdbd34493b34c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 12:06:25 2017 +0000

    daemon: Add comment explaining why we remove 'p' character.
    
    No code change, just a comment.
    
    Updates commit 6fd2ddb35068b114b8f4bf1ac0ad30fde0ab0eba.

commit 30168355f53b02ad1a6f2bdcea4128ed3d939e68
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 19 11:22:17 2017 +0000

    daemon: Return MD partitions in guestfs_list_partitions (RHBZ#1414510).

commit 470b3298b018c08f97c20c124a8d25b6ca83824b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 19 11:00:21 2017 +0000

    daemon: Fix part-to-dev when the partition name includes p<N>.
    
    If the device name ends with a number, Linux uses partition names of
    the form <device>p<N>.  Handle this case by knocking off the 'p'
    character.

commit 8e21508fe91b8231d7eb73674047ea161e313ffe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 09:16:52 2017 +0000

    tests: Add unit tests for guestfs_canonical_device_name.

commit 5125a92cf758665dd67b2d52417bce8eeb18d63e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 09:15:16 2017 +0000

    canonical_device_name: Don't rewrite /dev/mdX as /dev/sdX (RHBZ#1414682).
    
    The guestfs_canonical_device_name API was rewriting /dev/mdX as
    /dev/sdX.  This is wrong since (eg) /dev/sd0 is not a device name, so
    if you pass the canonicalized name back to the API it will fail.
    virt-v2v was one tool doing this.

commit 39c779a4fd8f84e4b6addac815109dbad7a8348b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 17 10:18:48 2017 +0000

    aarch64: launch: direct: Use virtio-pci devices.
    
    qemu-system-aarch64 -M virt now supports virtio-pci devices.  These
    are considerably faster than virtio-mmio so use them by default.

commit af4e41f5a431a5ad8186b68ea4ce049180aea238
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 18 12:19:01 2017 +0000

    lib: uefi: Don't call access(NULL) if no UEFI debug file exists.
    
    Bug found by valgrind on aarch64:
    
    ==21350== Syscall param faccessat(pathname) points to unaddressable byte(s)
    ==21350==    at 0x4F05274: access (access.c:29)
    ==21350==    by 0x4954DC3: guestfs_int_get_uefi (appliance-uefi.c:90)
    ==21350==    by 0x49752D7: launch_libvirt (launch-libvirt.c:413)
    ==21350==    by 0x496FD83: guestfs_impl_launch (launch.c:98)
    ==21350==    by 0x4902003: guestfs_launch (actions-3.c:145)
    [...]
    ==21350==  Address 0x0 is not stack'd, malloc'd or (recently) free'd

commit f526c24a1f2e8a06c56301a8f85e16bee9c8e7fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 24 16:25:36 2016 +0000

    lib: Use a common function to validate strings.

commit f08823a91bf8c8a91374c5f69a1e60de7ede055f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 18 10:23:10 2017 +0000

    mllib: Avoid OCaml local roots corruption.
    
    Because we used 'return' directly, the effect of the CAMLparam0()
    macro was not undone, resulting in local roots corruption when the
    visit callback throws an exception.
    
    The visit_tests unit test picked this up, but the corruption was only
    seen on aarch64.
    
    Fixes commit 4a62e521116cd6b464718a5a54dba6230c639f28.

commit 0a886c803fe21f5314e1f1a7c318026b821e8041
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 17 08:57:25 2017 +0000

    lib: Add missing <unistd.h> to appliance-uefi.c.
    
    appliance-uefi.c: In function 'guestfs_int_get_uefi':
    appliance-uefi.c:67:9: error: implicit declaration of function 'access' [-Werror=implicit-function-declaration]
         if (access (codefile, R_OK) == 0 && access (varsfile, R_OK) == 0) {
             ^~~~~~
    appliance-uefi.c:67:5: error: nested extern declaration of 'access' [-Werror=nested-externs]
         if (access (codefile, R_OK) == 0 && access (varsfile, R_OK) == 0) {
         ^~
    appliance-uefi.c:67:27: error: 'R_OK' undeclared (first use in this function)
         if (access (codefile, R_OK) == 0 && access (varsfile, R_OK) == 0) {
                               ^~~~
    appliance-uefi.c:67:27: note: each undeclared identifier is reported only once for each function it appears in
    cc1: all warnings being treated as errors
    
    Fixes commit dd519e8a8ea2be89862f3cec99aff9e19c458afa.

commit f81fd04d37ce65d448f42af4c32d5974c7317908
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Jan 3 11:18:52 2017 +0100

    builder: extract Yajl helper functions to yajl.ml
    
    Extract the yajl object_get_* helpers in the Yajl module since this
    could be useful for any Yajl user code.

commit 25ba77d9698c854f60865317b73db6a270436dbb
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Sun Dec 18 23:16:32 2016 +0100

    tests: rename guestfs-hashsums.sh to test-utils.sh
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 7f87a134025fe8fa41fbb719d31db62769bea5a3
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Sun Dec 18 23:16:30 2016 +0100

    v2v: ova: move the untar function
    
    Move the untar function so it can be used later in the code.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 5feb3a906d80dbd73816ea3ac03fe86c64776231
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Sun Dec 18 23:16:28 2016 +0100

    mllib: compute checksum of file inside tar
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 6ac11bc049eec9690930d77a0a808b000510865c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 3 17:41:16 2017 +0100

    appliance: add ldmtools/libldm packages on more distros (RHBZ#1409023)
    
    Add them also for Debian and Mageia, where libldm is shipped, and
    adjust the comment on the RedHat line.

commit 1a32e681d7bc5eb531df1f742930fd9ea2aa7cf4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 3 16:48:21 2017 +0100

    Update copyright dates for 2017
    
    Run the following command over the source:
    
      perl -pi.bak -e 's/(20[01][0-9])-2016/$1-2017/g' `git ls-files`
    
    (Thanks Rich for the perl snippet, as used in past years.)

commit 111e3c7c711cf2394b608af941a06979e560646e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 24 15:58:36 2016 +0000

    lib: Move some appliance functions around.
    
    Move some appliance functions out of src/appliance.c and src/launch.c
    into separate files.
    
    No functional change, just code movement.

commit 5cc91eecf94988461e7891c56522ac2781f4e748
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 23 22:56:15 2016 +0000

    Version 1.35.19.

commit 08766ea3661c687d8ac2872e062a74eb4eaf381c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 18 20:08:32 2016 +0000

    launch: Validate $TERM before passing it through to the kernel command line.
    
    Make sure it is reasonable before we pass it through to the kernel
    command line.  I don't believe this is exploitable, but it might cause
    obscure bugs.

commit 2d415a4a573604a5cfef19f9364091d0d54f172a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 18 20:04:05 2016 +0000

    launch: Rationalize how we construct the Linux kernel command line.
    
    This is just code refactoring.

commit 791fa40737fd65b285b9df88f6e801c8b9cd57c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 18 19:27:20 2016 +0000

    appliance: Disable EDD (edd=off) (RHBZ#1404287).
    
    EDD (https://en.wikipedia.org/wiki/Enhanced_Disk_Drive) is a BIOS INT 13h
    subcall for communicating the extended size of the boot disk over 8GB
    to the OS.  Since libguestfs doesn't use a boot disk, and the
    appliance disk is limited to 4GB, and we use virtio-scsi, this is all
    useless.
    
    EDD is also broken currently on RHEL 7.3, see:
    https://bugzilla.redhat.com/show_bug.cgi?id=1404287
    
    Also the EDD probing takes significant extra time (about 80ms on my
    laptop), and using edd=off reduces this time although doesn't entirely
    eliminate it.

commit 047de82cb18d387a101ed8d59524bf83a63ec13e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 15 09:37:01 2016 +0100

    sysprep: remove anaconda's /root/original-ks.cfg
    
    Remove one more leftover file from anaconda.
    
    Related to: RHBZ#1401320.
    Thanks to: Marko Myllynen.

commit 8cc8668e792e022730aaf69ef072999a63867116
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 18:16:16 2016 +0000

    Version 1.35.18.

commit c307f8ed3fb13874aa1ba3ddd49c83a8f90c6431
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 18:14:26 2016 +0000

    sysprep: Add new test to EXTRA_DIST.
    
    Fixes commit 3cb43460d38d357ff7482f7d4c4cebc110e28a0b.

commit 256972ae0e55b0f1eb75b5d6a5fcff2760b3d272
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 17:13:30 2016 +0000

    sysprep: Add common pod_of_list function to new module 'Utils'.

commit 9740c3fcf708441e6c647dcbb3048a4f98a86119
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 10:21:36 2016 +0000

    sysprep: Add new operation for removing /etc/passwd- and other backup files (RHBZ#1401320).

commit 66df717d65726e82fc535c3341211c17063f5ce6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 09:59:52 2016 +0000

    sysprep: Add a new operation to remove editor backup files (RHBZ#1401320).
    
    Remove editor backup files such as *~ and *.bak wherever
    they occur within the guest filesystem.
    
    This also includes a test.

commit 56270f009dc961a4b5357c651eddbd09d9d6f4cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 16:49:14 2016 +0000

    mllib: Add a function to test if a guest is "unix-like".
    
    This is not a precise replacement, since we now allow SSH key
    injection into Minix, but that is probably correct anyway.

commit a289a176ef3fe1e930dcbca5e7ca3339632397ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 09:50:10 2016 +0000

    mllib: Add a binding for fnmatch(3) in glibc or gnulib.
    
    This is taken from supermin.

commit 103bd65a60c3f70dd329cf31497e062742b24ea0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 13 22:03:26 2016 +0000

    mllib: Add a binding for visit function in cat/visit.c.

commit 01a8e019a66026c97dc23ba2785dab7e90ae7807
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 16:35:44 2016 +0000

    v2v: Add a comment about why virt-v2v needs the network.
    
    Only to run unconfigure_vmware ().

commit 972e511ca75da24fde88515fa958134f71ea0677
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Dec 14 17:09:32 2016 +0100

    tests: drop expected-failing btrfs_subvolume_show test
    
    One of the tests for btrfs_subvolume_show tries to invoke it on the
    toplevel subvolume, expecting its failure (since btrfs-progs used to not
    be able to list that).  However, since v4.8.3 btrfs-progs can do that
    (even if the data returned for that subvolume is limited/incomplete),
    and thus this test fails because the API does not fail anymore.
    
    Since we can consider that functionality working (for some kind of it),
    then drop this test.

commit 4172383d80efd8e2314d680ed24e8ede4eb82604
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Dec 14 11:09:37 2016 +0100

    libvirt: fix reading secret by usage type
    
    Use the right variable to determine the usage type of a secret.
    
    Fixes commit a94d5513456d7255d6e562953ac163f2d7a816fb.

commit d62d24be3db96b21024be766c60ca3774f981427
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Sun Dec 11 20:02:23 2016 +0200

    lib: use guestfs_int_make_temp_path to generate temporary files
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 4101028c4135c8dc3bdb84744266d46055659aee
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Sun Dec 11 20:02:22 2016 +0200

    lib: generic function for temporary path generation
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 0ae3f8579f13a3c5ddd13a8db2598fe736862f3f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 12 18:18:37 2016 +0100

    v2v: tests: avoid '..' in member names for tar
    
    Very recent versions of tar (most probably as a consequence of
    CVE-2016-6321) may refuse archive members with '..', like the relative
    paths to upper level directories.
    
    Since these are just tests, simply copy the files in the temporary
    directories where tar (or zip as well) is run, so all the files are in
    the same directory.

commit 529775786f187c204a0d2781f6901ee91f4adfe8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 12 14:02:35 2016 +0100

    perl: fix memory leak in RStruct actions
    
    The return value struct was freed using a simple free() instead of the
    own cleanup function of each struct: this meant dynamically allocated
    values (such as strings) were leaked.
    
    Use the proper cleanup functions instead.

commit 681402abd840200dc19b0e474af738ace4d0d5cf
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 12 13:57:46 2016 +0100

    java: fix memory leak in RStruct actions
    
    The return value struct was freed using a simple free() instead of the
    own cleanup function of each struct: this meant dynamically allocated
    values (such as strings) were leaked.
    
    Use the proper cleanup functions instead.

commit 7d6d1e3341314e575a43edfbe4e9e3e116d1c531
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 12 22:13:00 2016 +0000

    builder: Fixed CentOS 7.3 image.
    
    The previous one had apparent filesystem corruption.
    
    Fixes commit b16627d679d4ff53daba168e125e92db04579efb.

commit 29698ce8fd9bf6c2978d2e125b6c8387bfb7404b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 12 20:12:11 2016 +0000

    builder: Add CentOS 7.3 template.
    
    Release notice:
    https://lists.centos.org/pipermail/centos-announce/2016-December/022172.html

commit c4d6db643e325810870895dca7ef80d6b564290c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 11 18:30:46 2016 +0000

    Version 1.35.17.

commit 637c0b352b0954e2a547b85d3b5da4949fad7bb0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 11 18:23:11 2016 +0000

    builder: Fix copying of virt-builder index.asc etc to website.
    
    The definition of BUILDFILES was accidentally removed, resulting
    in the error:
    
      cp  /home/rjones/d/websites/libguestfs/download/builder/
      cp: missing destination file operand after '/home/rjones/d/websites/libguestfs/download/builder/'
    
    Fixes commit 65a05703858341476b9b2ceea2ef43e6f1447c43.

commit 5bc9b5c43255be2ad229106d1e17220cc52b11f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 10 16:31:17 2016 +0000

    Version 1.35.16.

commit fab526e25dc1662fd9064dfeea19ff183eb91ff2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 10 16:20:34 2016 +0000

    builder: Don't try to translate make-template.ml.
    
    It fails with:
    
      File "../builder/templates/make-template.ml", line 1, characters 0-1:
      Parse error: [a_LIDENT] expected after "#" (in [implem])
      End_of_file
      An error occurs while processing.
    
    In any case this doesn't matter because this file should not be
    translated.
    
    Fixes commit a1ea9a2599f7039a8b69ffe359ab05a155145589.

commit e64fcb9a9a9c6c92463b1574c5fca102ddf2926a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 10 15:37:13 2016 +0000

    Version 1.35.15.

commit 7fbd56c627d6e4a385d1fe68ea8c8988ec82647e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 10 15:36:46 2016 +0000

    v2v: Fix POTFILES-ml.
    
    Fixes commit 222535fa1252cfe127c5eac0b70f5e37c8add396.

commit 5abb0bfcf5c5e79d583db78ebf8796189266a2c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 10 15:36:09 2016 +0000

    builder: Add website/download/builder/* files to EXTRA_DIST.
    
    Fixes commit 65a05703858341476b9b2ceea2ef43e6f1447c43.

commit 6220529257161457f9e5470463e412310ce278e3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 9 13:52:00 2016 +0100

    inspect: improve canonical_mountpoint implementation
    
    Use a simplier version using a loop, skipping multiple '/' at once,
    reducing the amount of memmove and strlen needed.
    
    Updates commit 865d070ddcbb071a919614f45c8eef8fcb4497ff.

commit 9d7d21eed47f94db6606db647ff952c04832b990
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 8 13:24:11 2016 +0000

    v2v: Fix ambiguous and probably incorrect pattern match (warning 57).
    
    See:
    http://caml.inria.fr/pub/docs/manual-ocaml/comp.html#ss%3Awarn57
    
    I believe the code as written previously was incorrect.  However we
    are lucky because if neither clause matches then it will fall through
    to displaying an error message, allowing the user to correct the
    problem.

commit 17c4ce780e5d061ebdfe44c1d70cb64840a8b5b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 8 13:17:22 2016 +0000

    Remove most instances of OCaml warning 52.
    
    See:
    http://caml.inria.fr/pub/docs/manual-ocaml/comp.html#s:comp-warnings

commit d4c56296cad6b045e90609fbc2a0451722fa054d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 8 12:58:51 2016 +0000

    customize: Remove Customize_utils module.
    
    After the previous commit this module is empty, so remove it.

commit 8f981fe9a88a4bd7e559fc7abbd59bac4e3ad85c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 8 12:49:38 2016 +0000

    mllib: Add quote function to Common_utils module.
    
    Remove multiple places where we let quote = Filename.quote

commit d8f92210dec52f5b75886a10ccc8dce7382f4b68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 8 09:53:50 2016 +0000

    generator: Share Common_utils code.
    
    For a very long time we have maintained two sets of utility functions,
    in mllib/common_utils.ml and generator/utils.ml.  This changes things
    so that the same set of utility functions can be shared with both
    directories.
    
    It's not possible to use common_utils.ml directly in the generator
    because it provides several functions that use modules outside the
    OCaml stdlib.  Therefore we add some lightweight post-processing which
    extracts the functions using only the stdlib:
    
      (*<stdlib>*)
      ...
      (*</stdlib>*)
    
    and creates generator/common_utils.ml and generator/common_utils.mli
    from that.  The effect is we only need to write utility functions
    once.
    
    As with other tools, we still have generator-specific utility
    functions in generator/utils.ml.
    
    Also in this change:
    
     - Use String.uppercase_ascii and String.lowercase_ascii in place
       of deprecated String.uppercase/String.lowercase.
    
     - Implement String.capitalize_ascii to replace deprecated
       String.capitalize.
    
     - Move isspace, isdigit, isxdigit functions to Char module.

commit 3de8b6212557ee15dd8dd8cfb18bf5b0efa0583c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 6 09:40:42 2016 +0000

    inspect: fstab: Canonicalize paths appearing in fstab.
    
    For example, converts "///usr//local//" -> "/usr/local".

commit 94301d425de521acc213cfe93b02ede2d4061bc4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 1 13:00:51 2016 +0000

    v2v: Rename RHEV to RHV throughout.
    
    You can now use -o rhv (-o rhev is supported for compatibility).

commit d0f0147a776c81616acd87af01a9ca10021a789c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 30 16:52:42 2016 +0000

    v2v: -o vdsm: Add --vdsm-compat flag. -o rhev: Drop support for RHV < 4.1 (RHBZ#1400205).
    
    Support for RHEV with RHEL 6 nodes required us to output the old style
    qcow2 compat=0.10 images.  Since RHEV 3.6 GA, RHEL 6 has not been
    supported as a RHEV node type.  Since RHV 4.1, compat=1.1 is
    supported.  (Support for compat=1.1 is uncertain in RHV 4.0 even on
    RHEL 7 nodes.)
    
    There are significant downsides to using qcow2 compat=0.10 instead of
    the modern default (compat=1.1).
    
    Therefore this patch does two things:
    
    For -o rhev, it drops support for compat=0.10 completely.  You must
    use RHV 4.1.
    
    For -o vdsm, it adds an interim flag (--vdsm-compat=0.10 or
    --vdsm-compat=1.1) which controls the compat level of the qcow2 output
    file.  VDSM should use --vdsm-compat=1.1 when it is known that modern
    qemu is available.  We can make this the default later when all RHV
    instances have moved to 4.1.
    
    It also adds:
    
      vdsm-compat-option
    
    to the `virt-v2v --machine-readable' output to indicate that this flag
    can be used.
    
    Thanks: Yaniv Kaul, Michal Skrivanek.

commit 7d3ebcd3ef0432303dcfbd8412d12214909b8c5b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 6 16:08:12 2016 +0100

    inspect: gather info from /usr filesystems as well (RHBZ#1401474)
    
    Flag the filesystems for Linux /usr properly as USR role, and detect
    some data out of it, like the distro information from an os-release
    (if present), and the architecture (since the binaries used for our
    architecture check will be available there only).
    
    Later on, collect the results in a way similar to what is done for
    CoreOS: for each non-CoreOS root, try to find its /usr filesystem, and
    if found then merge what is missing from root; in the last case, also
    override the distro inspection data (version, product name) if available
    in /usr.

commit 1adcfbd2e346b1f411c5dea1ad487af227d3b91a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 6 15:18:34 2016 +0100

    inspect: fix existance check of /dev/mapper devices
    
    When checking for the existance of /dev/mapper devices found in the
    fstab of a filesystem, using guestfs_exists means they are checked as
    files in the guest, while they really appear as devices on the
    appliance. Instead, try the lvm name resolution anyway, and ignore them
    when they are reported as missing.
    
    Thanks to: Richard W.M. Jones.
    
    Fixes commit 96b6504b09461aeb6850bb2e7b870a0a4c2f5edf.

commit a2950700a9a7d8ab922b59fad8fd78e97e31ae96
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 25 11:18:41 2016 +0100

    resize: shrink/expand swap partitions
    
    Handle the swap partition on their own, rebuilding them using the
    existing UUID and label.

commit 36930525dbe96338a99a201adf6af92d28698fb6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 25 10:49:16 2016 +0100

    daemon: allow to change the labels of swap partitions

commit c39671cfbc25bab99d97e88b4c98cdefce6f74ec
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 16 11:47:51 2016 +0100

    libvirt: read secrets of disks (RHBZ#1392798)
    
    Read also the secrets associated to disks (<secret> tag within <auth>),
    so qemu can properly open them later on.

commit 647a3b9fc925b4d5b2361d57d79f357339256c8b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 15 15:03:45 2016 +0100

    libvirt: un-duplicate XPath code
    
    Move the checks for empty xmlXPathObjectPtr, and for extracting the
    result string out of it, to a new helper functions.
    
    This is just code motion, there should be no behaviour changes.

commit da3e8f01b8b3842a781b5b675a726b47f6b964ec
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 5 17:20:58 2016 +0100

    inspect: mark CoreOS /usr partitions with own USR role
    
    Add a new inspect role for "/usr" partitions, and use that to mark the
    /usr partition in CoreOS: this additional role allows to ease its lookup
    later on, when merging its results into those of the root.

commit 45bbe41ffba03da5d2634c22013b756741316491
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 5 16:10:20 2016 +0100

    inspect: change is_root flag into enum
    
    Introduce a new enum to classify the role of a filesystem, if available.
    This will help later on when doing operations on non-root filesystems,
    like detecting particular mountpoints such as /usr.
    
    The new enum has only "root" as known role, which replaces the is_root
    flag.

commit 2a43474f5e743fa47c67d36ffddfef1b93604228
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 6 18:04:38 2016 +0100

    appliance: mount also /dev/pts
    
    Tools could require the use of pseudo-terminals, so make sure we have
    /dev/pts available in the appliance.  The "command" API already
    bind-mounts it when running commands, so this is the only bit needed.

commit 67d56100cc38f0fa4290043204ce581c937c4bfc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 1 16:16:56 2016 +0000

    builder: Refactor command line parsing in make-template script.
    
    This refactors command line parsing into a parse_cmdline function.
    The function uses the Arg module to parse the command line instead of
    ad hoc parsing.
    
    This also enforces use of the ./run script to run the program, since
    otherwise you can end up with mixed versions of the OCaml bindings and
    the C library.
    
    This updates commit 65a05703858341476b9b2ceea2ef43e6f1447c43.

commit 743dd9070965d805831b9ae491a2eb352c6118b1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 1 15:58:10 2016 +0100

    environment: fix error message for LIBGUESTFS_DEBUG failure
    
    Properly mention LIBGUESTFS_DEBUG as environment variable when it
    cannot be parsed as boolean.

commit 1a8f908cc3a3f778b273750898db805a8f20567b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 1 12:48:49 2016 +0000

    v2v: Remove bogus backslash in test.

commit 3c3fcca1a5d71532f533e7768cf23950a0485f66
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed Nov 30 17:49:20 2016 +0100

    packagelist: add initviocons package on SUSE
    
    initviocons package provides tools to resize the terminal. Having it
    in the appliance will allow SUSE users to have proper line wrapping
    in their terminal when using virt-rescue.

commit a38ad7938475d1884b5a962b771a631ea63b6014
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 19:08:17 2016 +0000

    builder: Update Fedora 25 and RHEL 7.3 ppc64 and ppc64le images.
    
    Rebuild these images with the new make-template.ml script.  This fixes
    the lack of virtio-scsi driver and broken initramfs.
    
    These images all use LVM because without that both Fedora and RHEL put
    the root filesystem on an extended partition (/dev/sda5) which
    virt-resize cannot handle.
    
    (Note the RHEL images are not public.)

commit 8ae7a7c72345b8042464bb054255d58ca5e3ef2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 28 11:18:47 2016 +0000

    builder: ppc64: Enable virtio-scsi in templates.
    
    Workaround for dracut bug RHBZ#1396217.

commit 345d195720cd42cba23b0d86da2b80ca8e6e7a80
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 25 12:18:01 2016 +0000

    builder: Rearrange how template-building scripts work.
    
    Create a new directory (builder/template).  Integrate all of the
    scripts into a single program, so that templates are generated more
    consistently.
    
    This also changes how the index file is generated.  The script now
    generates the index file fragment and saves it under version control,
    and then generates the final index file by concatenating these.
    (Previously the index was written by hand which was tedious and
    error-prone.)
    
    The new script also saves the generated kickstart under version
    control so it can be referenced later.

commit b5c64f377189eb4d20d838cc260ed4efe97c5fd1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 18:45:11 2016 +0000

    Revert "builder: ppc64, ppc64le: Force add virtio-scsi driver."
    
    It turns out that adding the virtio-scsi driver does not help
    to fix the dracut problem.
    
    This partially reverts commit f766c84c39aae5d4b03ad4d935700455a7c0ef9e,
    keeping the change to index.

commit 99ddcdbc1bf7a68a75358de1179ad3519fe20dda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 15:27:56 2016 +0000

    builder: ppc64, ppc64le: Force add virtio-scsi driver.
    
    Works around dracut bug RHBZ#1396217.
    
    Also update new Fedora ppc64 & ppc64le images.

commit 17d73277621e8275005056c6c07dee33bcc85647
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 10:35:45 2016 +0000

    builder: Add Fedora 25 templates.

commit 34a5b534d3c80f225f2f2d6e17d7536053a1e78b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 09:53:10 2016 +0000

    fish: Fix small typos in virt-copy-in and virt-copy-out man pages (RHBZ#1398070).
    
    Thanks: Xianghua Chen

commit 1a7e76387ee5eb4adcf38febddd8ca4eefc45c1b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 09:51:33 2016 +0000

    builder: fedora-armv7l: Increase RAM for installation.
    
    In Fedora 25 the guest runs out of RAM when loading the
    Anaconda initramfs.

commit 2fa077c7dd77930afc10a5bed67e4b9a40685c98
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 23 22:01:31 2016 +0000

    builder: fedora-ppc64le: Require POWER8 CPU.
    
    This is the same as commit 4919f4f7409066c4565832a83a4252abdcf0b934
    for Fedora.

commit 3b1d6ce51fd60d10eb41818a7b133a1a20e6f1f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 23 21:57:02 2016 +0000

    builder: fedora-aarch64: Add --arch flag.
    
    This is the same thing as
    commit 4a5605e7be4d96b2461d64852961c7bdd9f94b8e, but for Fedora.

commit 41a2745589628d9160d4aea1916185c4d0b0ef6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 17 14:50:42 2016 +0000

    builder: ppc64le: Require POWER8 CPU.
    
    RHEL 7.3 requires POWER8 instructions.

commit e9805a58e556f05351f74e6002583b109da20926
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 17 14:50:20 2016 +0000

    builder: aarch64: Add --arch flag.
    
    This allows us to cross-build the image from x86_64 which is
    more convenient than doing it on aarch64 host.

commit 933d0574ca9f19453c2fc52919e1b4c68cba3bce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 9 11:42:54 2016 +0000

    filearch: Add s390 and s390x detection and tests.
    
    Unfortunately I was unable to build s390 binaries since multilib was
    dropped in Fedora 24 on s390x.  Going from the source of the 'file'
    command it seems as if it prints "32-bit" (the architecture is really
    31 bit).

commit 9b669e9593234945cf68436dcec73eeca8114ee4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 13 18:31:52 2016 +0000

    docs: Fix man pages references to incorrect section numbers.

commit d6d63109a7cd9a060ae6dea697a5be739e022a05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 13 18:27:45 2016 +0000

    Fix HACKING file in top level directory.

commit b12c4f21e4bc2f3dc5e6b514ca7c188c662db77d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 10 11:39:04 2016 +0000

    installcheck: p2v: Make virt-p2v binary executable after uncompressing it.
    
    Fixes commit 415238853010a7b88f796c65ea77532845724dd0
    and commit face52f62e5731cc33183d5995a13b04f7f6a4c2.

commit 229d4b0096690a4dafba2f62501fb892003d8381
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Wed Nov 9 22:52:25 2016 +0200

    upload: improve file write callback
    
    As noted by Pino in another patch, the logic passes the first member of
    the struct which happens to be the right address to the callback
    function.
    
    This will break the callback if order of the members of the struct will
    change.
    
    As the callback is using the entire struct, better to pass the pointer
    to the struct itself.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit d907d9e052f9ad3241452b4c3954cb5f5a3b53b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 9 17:53:48 2016 +0000

    installcheck: p2v: Fix tests of virt-p2v.
    
    Fixes commit face52f62e5731cc33183d5995a13b04f7f6a4c2.

commit c45618f1c9e255944dc37c7bf25b51fa46fe6deb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 2 09:41:20 2016 +0100

    v2v: add "colours-option" to machine readable sample output (RHBZ#1390876)

commit 434207125038fa259aaf809ca06348414af1a797
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 2 11:00:03 2016 +0100

    builder: distribute fedora-s390x.sh
    
    Followup of commit c25a8987108664a43beb00de1c3010a6355880dd.

commit 269982e055e4337b0655464c2745a50fc53eeb33
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 1 13:58:40 2016 +0000

    v2v: glance: Set hw_video_model property to qxl|cirrus (RHBZ#1374651).
    
    Thanks: Vladik Romanovsky, Ming Xie.

commit 76494f3efa5ff6c8d8261c4abddd7ee4ecd8236c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 1 18:15:25 2016 +0100

    v2v: update again URL with glance metadata
    
    Finally got the (hopefully stable) right URL for them.

commit 8dfa7aee163dcbde726c22644d75b440c085eb9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 1 11:50:22 2016 +0000

    builder: Add script for starting Fedora/s390x.
    
    However it does not currently work because of a bug in libvirt:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1376547

commit 7ec197e71e8a493c3fe33290dda581cc61b60d02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 31 08:47:15 2016 +0000

    handle: Improve error messaging if XDG_RUNTIME_DIR path does not exist.
    
    If an environment variable such as XDG_RUNTIME_DIR or one of the
    tmpdirs or cachedir is set to a non-existent directory, improve the
    error message that the user will see so that (where possible) it
    includes the environment variable or API call.
    
    This is still not bullet-proof because it's hard to display the
    environment variable if it is LIBGUESTFS_TMPDIR or
    LIBGUESTFS_CACHEDIR, but the main problem is with XDG_RUNTIME_DIR
    (because of systemd bugs).
    
    Thanks: Hilko Bengen for identifying the bug.

commit 5f88e046495dd98eb5d02ecfdb82a3618537fd99
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 31 13:08:40 2016 +0100

    docs: fix link to guestfs-golang(3)

commit a1364015cb9efba7fa0908543d170eb4ada7496f
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Oct 27 18:46:01 2016 +0200

    run.in: Quote contents of @VAR@ substitutions

commit 3b011ddf1b3da6054689d40810ca25ba4fc67bd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 22:06:32 2016 +0100

    Version 1.35.14.

commit 2f2a0ba6855ac75573a5b27237550788fad83725
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 22:22:59 2016 +0100

    docs: Ignore ruby/ext/guestfs/extconf.h
    
    Updates commit bd21993d77bd2d38557ba2c74476e619732a543a.

commit 7cb7eb7607b549520ee91ed9e48773789f77e28e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 21:59:19 2016 +0100

    docs: Ignore php/extension/config.h.
    
    Updates commit bd21993d77bd2d38557ba2c74476e619732a543a.

commit fee59f30f4279b21003e1d694d405eb6cc3cca0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 21:43:32 2016 +0100

    Version 1.35.13.

commit f39601b8a131b8ff7ebf6e0bbd46c854595bae6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 21:37:30 2016 +0100

    docs: Ignore java/com_redhat_et_libguestfs_GuestFS.h
    
    Updates commit bd21993d77bd2d38557ba2c74476e619732a543a.

commit ddc54c120387f4673e8dfdb8ef2c1beb719aae01
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 21:19:18 2016 +0100

    Version 1.35.12.

commit 5a4f58f1aef8bd3e197b8b11f72738ea090ee45b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 21:12:56 2016 +0100

    docs: Ignore more generated headers.
    
    Updates commit bd21993d77bd2d38557ba2c74476e619732a543a.

commit cafba21976266717c986b40f66cd9ea0d6f7b9a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 20:49:21 2016 +0100

    Version 1.35.11.

commit af7bba645d83110d76f6543fccb87dc664fd71c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 20:42:40 2016 +0100

    docs: Ignore errnostring.h files too.
    
    Updates commit bd21993d77bd2d38557ba2c74476e619732a543a.

commit 9b9bbaed304a5c9b726bfaf3e3d068cde535a546
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 20:02:59 2016 +0100

    Version 1.35.10.

commit fc2afe4be9060ce0c8e780f102adff73b32f7c4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 19:14:06 2016 +0100

    docs: Remove builder/index-parse.h from documented files.
    
    Breaks things when building from clean.

commit 341bd0cf79445f1a86337f4fab6af8aee60c169f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 19:05:15 2016 +0100

    p2v: Add dbus dependency to dependencies.m4.
    
    Probably not necessary since dbus is part of most base distros, but
    added for completeness.
    
    Fixes commit 54979e88421e08987cc2361707863d51d35138d2.

commit bf62d9c88892a20a25607a26dfd6d0b828115792
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 15:47:39 2016 +0100

    docs: Document some more internal library structs.

commit 2a6ee5f5ce67af3e5e75d37fe233c77d08c19c61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 12:49:15 2016 +0100

    docs: internal: Allow headers and structs to be documented.
    
    This makes a number of small changes to how the internal documentation
    is generated and what can be documented.
    
    Header files are now permitted to contain internal documentation.
    This works in the same wasy as .c files.
    
    Also documentation can be added for structs as well as functions.
    
    This commit also adds documentation to some header files and structs,
    and fixes a few places which contained broken header documentation.

commit 30193bd4a23c8f28ffa55c991dd872d2ef196b69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 11:57:47 2016 +0100

    docs: building: Document additional deps needed to build from git.
    
    Also document the gettext (C library) dependency which was missing.

commit 6857a11b83486b26b6388a04f8895e898ca716c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 24 16:58:18 2016 +0100

    p2v: Inhibit power saving during the conversion.
    
    We do this by sending an Inhibit() message to logind and receiving a
    file descriptor back, which we hold open until the conversion
    completes (or fails).  This is described here:
    https://www.freedesktop.org/wiki/Software/systemd/inhibit/
    
    This adds an additional optional dependency on DBus since we use DBus
    to call the Inhibit() method.
    
    Reported-by: Chris Cowley.

commit 067170092741c749872815206ebaeca51514f9e2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 24 18:14:59 2016 +0200

    builder: consolidate handling of temporary files/dirs
    
    Create a single temporary directory for all the files created during the
    virt-builder run (except big disk images, which already use the
    libguestfs cache directory).  A single directory means there is no need
    to manually schedule all the temporary files and directories for removal
    when the application quits.

commit b121976944c7dd93735f5092c950ac3750c747c1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 24 18:12:04 2016 +0200

    mllib: curl: add optional tmpdir parameter
    
    Add a new optional parameter for the Curl ADT, so temporary files can be
    created in a specified directory (which is supposed to be temporary, and
    disposed only when the application quits).

commit 3af193e66b4de6dcad0d7abdc91572e4b820fd7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 24 15:56:57 2016 +0100

    customize: Check SLOW flag is set before running password tests.
    
    Fixes commit 2f57eb181f5083c131c59da9c71dc354cc6070fe.
    
    Thanks: Pino Toscano for finding the bug and suggesting the fix.

commit d9fcfab29ef86d6bad23ae6f35ed6ddba5506dca
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 21 16:53:12 2016 +0200

    inspect: map "sled" in /etc/os-release as "sles" distro
    
    Map SLED as "sles" when parsing /etc/os-release, just like it is done
    already when using /etc/SuSE-release.
    
    Thanks to Cédric Bosdonnat for testing.

commit ed6178e3cc9eac2fcb2ae0ba0dd13510c97248be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 21 12:30:07 2016 +0100

    FAQ: Document how to switch kernel and qemu.

commit 683c4f322220f04de96af380aa7e049240301b90
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 20 18:27:02 2016 +0100

    Version 1.35.9.

commit 991e7220498c185405aaacc86ff4903a69f25579
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 20 13:14:36 2016 +0100

    customize: Test that the --root-password parameter works.
    
    Add a slow test to ensure that the --root-password option
    doesn't regress.

commit d91861269edfa526734e340b62979c3dd779f8d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 19 09:54:43 2016 +0100

    builder: Add test that a serial console is set up for guest templates we supply.

commit 023d2a00c0c4e102df1b630555797d28bc70cdac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 19 14:50:01 2016 +0100

    builder: Add virt-builder --notes for enabling serial console.
    
    On debian-8 and ubuntu-16.04.

commit 409f21074fcbd7b05c419a99a9700d38bc071951
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 19 11:38:14 2016 +0100

    builder: Allow test-virt-builder-planner to be skipped.

commit 375c9f5e2955573652bf65e8188035ed78ba34c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 19 11:41:45 2016 +0100

    customize, v2v: Use script name instead of $0 in test-*-<guestname>.sh scripts.
    
    $0 is set to the name of the test script, eg. test-settings.sh, and in
    bash there is no way to change that.
    
    Create a new environment variable, $script, which is set to the name
    of the wrapper script (eg. test-settings-fedora-24.sh).
    
    This should give more accurate error messages.

commit 62f7f2dbe24f143662a8218b65580014af3847a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 3 11:27:53 2016 +0100

    Add a test for virt-tail.

commit e6509001b86a47c08b57deea70463eeba32c8f2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 1 13:32:22 2016 +0100

    New tool: virt-tail.
    
    This follows (tails) a log file within a guest, rather like
    the regular 'tail -f' command.  For example:
    
      virt-tail -d guest /var/log/messages

commit c87b28ff95f66f28169881f005ac2bc489277a78
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 12 13:46:37 2016 +0100

    p2v: Fix virt-p2v-make-kickstart for new location of virt-p2v.xz.
    
    Fixes commit face52f62e5731cc33183d5995a13b04f7f6a4c2.

commit b558954266338332befac959e8c9b1e994044021
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 11 19:05:22 2016 +0100

    Version 1.35.8.

commit 578c64a138b321fb67002bf0e8cbb7fa027caddd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 11 18:02:16 2016 +0100

    valgrind: Don't use "nested" run scripts.
    
    When TESTS_ENVIRONMENT already uses 'run', the VG variable
    doesn't also need to use 'run'.
    
    The specific problem is that if the command contains newlines
    then double invocations of the 'run' script fails (in libtool).
    ie the following command failed causing errors in check-valgrind:
    
      $VG virt-builder phony-fedora \
          -v --no-cache --no-check-signature $no_network \
      ...
          --write '/etc/append4:line1
      ' \
      ...

commit cee7dbd7ff102db1f1ec0848576f04eb61c76b0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 11 14:19:08 2016 +0100

    Version 1.35.7.

commit 6b04b893b87d835e7be05448d643a7f398148747
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 11 14:17:06 2016 +0100

    p2v: Fix EXTRA_DIST.
    
    Fixes commit face52f62e5731cc33183d5995a13b04f7f6a4c2.

commit a03f421d5b0c14065a09d857820abb1505c5678f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 10 19:40:38 2016 +0100

    p2v: Compress virt-p2v binary and store it in $libdir/virt-p2v (RHBZ#1382275).
    
    Currently 'make install' installs the virt-p2v binary in
    /usr/libexec/virt-p2v on the host.  It is never supposed to be run
    from there, even by another program, so use of /usr/libexec is
    incorrect.  It is only supposed to be copied into USB keys / ISOs /
    etc created by virt-p2v-make-* scripts.
    
    The other problem with shipping a "naked" binary on the host is that
    packages built from that get all the dependencies of virt-p2v, for
    example Gtk.  This is unnecessary just for running the command line
    scripts mentioned above.
    
    This changes the Makefile and scripts so that the binary is stored
    compressed in $libdir/virt-p2v/virt-p2v.xz.  It is compressed to avoid
    exposing the dependencies.  It is stored under $libdir since the
    binary is still architecture-dependent.
    
    A further change is that when we copy the binary into the virt-p2v
    ISO, it is now installed in /usr/bin instead of /usr/libexec.  (And
    note that we always use /usr/bin, not $bindir, since this path should
    not need to be affected by the configuration of libguestfs).

commit c04e54fd5d7f0c5b9207eb1d8d0e183c6bff62ea
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Oct 6 16:54:33 2016 +0200

    appliance: add/remove some packages for Arch Linux
    
    Added:
    - cdrtools: added as alternative to cdrkit
    - multipath-tools: contains kpartx (in AUR)
    
    Removed:
    - ntfsprogs: the package is no longer available, it has been completely
      replaced by ntfs-3g (already in packagelist.in)
    - zfs-fuse: no longer in AUR
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 3aebe27ea00397ba00aecf781dfeb0ecaefad725
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 12 11:52:38 2016 +0100

    v2v: ova: Make OVA directory public readable to work around libvirt bug (RHBZ#1375157).
    
    Only do this if running as root and if the backend is set
    to libvirt.

commit dfc746fc07a580d4f412da51e2264c97c5a629f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 6 16:17:30 2016 +0100

    launch: libvirt: Remove unused USB and memballoon devices.
    
    Thanks: Laine Stump.
    
    See also:
    https://www.redhat.com/archives/libvir-list/2016-October/msg00246.html

commit 76bb6399eb98096d6eee3b48bb37b1abbf48b7c5
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Fri Oct 7 15:42:36 2016 +0200

    v2v: test Debian/Ubuntu conversion
    
    Enable testing of Debian and Ubuntu guest conversion.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 7ca09fada8b9f302370cd283efccbffb18e183de
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 7 14:55:51 2016 +0200

    v2v: linux: enable conversion of Debian guests
    
    A basic conversion of Debian-based guests works now; it needs more
    thorough testing for all the operations done with different sources.

commit 9dc718e7b92e2c399fa48f60c85aeba3c1893fa7
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Fri Oct 7 14:12:22 2016 +0200

    v2v: ova: support SHA256 hashes in manifest
    
    The OVF standard allows the use of SHA256 hashes in the manifest file.
    Adding support for this.
    
    One of the tests was updated to put SHA256 into manifest file.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit a60a897a182c9d6d7bbe325801e711c3870398b1
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Fri Oct 7 14:12:21 2016 +0200

    v2v: ova: fix checking of the manifest file
    
    The regular expression for parsing the manifest line was wrong. There is
    a mandatory space between '=' and the hash.
    
    Another problem was that only the first line of the manifest file was
    actually processed.
    
    Also added some debugging info and warning to catch problems with
    parsing.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 8701d180a4332966b12dcc94c6d6040ec72a7802
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 6 09:22:51 2016 +0200

    po: manually update POTFILES-ml
    
    Followup/fix of commit 5681db5ed85823ca171560782fdc5e9e9112148d and
    commit 7a09db5e485672748018a3b0cdba953225a0eb9b.

commit 46921e5ba1ecbb4091b2689c4033b5a9f0f5b485
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Oct 4 14:45:18 2016 +0200

    v2v: linux: try to fix removal of VMware tools
    
    Try to improve the way packages of VMware tools are removed from
    YUM-based guests:
    
    - when filtering the package itself from its providers, do a stricter
      check so either the provide is the unversioned package, or it is
      exactly its own name
    
    - if the package has no other providers, then going further will cause
      the invocation of 'yum install' with no packages, and thus the package
      itself will not be added to the list of packages to be removed; to
      overcome this issue, just mark the package as "to be removed" in that
      case
    
    Related to: RHBZ#1155150

commit 06ca7ba031022213686c9bb67daad2b120a67e24
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Oct 4 09:40:54 2016 +0200

    v2v: linux kernels: remove unused parameter
    
    Remove an unused paramter of the internal check_config function.
    
    Followup of commit 7eb219d1938968c4d6bffda038aaace936f7efbf.

commit 21672beaa61c712e5d641af2a18ba088254da106
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 2 20:07:01 2016 +0100

    appliance: Add ExFAT packages.
    
    Thanks: Miles Wolbe

commit 5a92f8a6259b15d77e0ed8e12f081e946f72c227
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 3 11:24:36 2016 +0200

    v2v: linux: check also kernel config for modules
    
    When checking whether a kernel supports virtio or it is Xen-based, it is
    assumed that the feature has the kernel module for it; this will fail if
    the feature is built-in in the kernel, misrepresenting it.
    
    The solution is to check the kernel configuration whether the feature
    is built-in, in case there is no module available.
    
    This fixes the virtio detection on Ubuntu kernels, where virtio is
    built in and not as module.

commit 09c1dd1e67749199539e3e67e7c86c9ecdadfc12
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 3 11:18:33 2016 +0200

    v2v: linux kernels: detect config file
    
    Add a simple detection for the config file of each kernel, so that can
    be used later to get more information on what a kernel provides.

commit 4d34c1dab537c62205a924eace3aafabbb2e8037
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 27 17:48:23 2016 +0200

    v2v: bootloaders: improve detection of Grub2 default method
    
    Detect only once which method must be used to get and set the default
    Grub2 kernel in the guest: this avoids the same checks in list_kernels
    and set_default_kernel.
    
    Also, add a "no method" option as well: Debian/Ubuntu guests do not have
    neither grubby nor Perl's Bootloader::Tools, so there is no way to know
    what is the default kernel, nor to change it.  In this case, add a
    warning about this situation.

commit 51ebe94612d85af9264c7b5bcfb4c2896b47d96b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 27 17:24:57 2016 +0200

    v2v: linux kernels: set type of 'g'
    
    Make sure the type checker can detect the real type of 'g', even when
    adding more code using it in detect_kernels.

commit 220ee5c86ad0b30a5925c0e5456aa6e76e708296
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 30 11:24:30 2016 +0200

    v2v: -i ova: use Checksums
    
    Make use of the Checksums module to ease the verification of the SHA1
    checksums in manifests.

commit 4769b8b80de78bf686b85dc32134a2fd54e02942
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 30 11:09:13 2016 +0200

    mllib: add SHA1 support in Checksums
    
    This way Checksums can be used in v2v.

commit ca1db10f8bfa15db8fc38a7d7a9d6c53ff489261
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 30 11:04:27 2016 +0200

    mllib, builder: add and use Checksums.of_string
    
    Add a simple way to turn a combination of checksum type and value into a
    csum_t.  Use it in builder, even if still constrained.

commit dfa029717ac0291dd8e7a73145558b01ec33e499
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 30 10:30:24 2016 +0200

    mllib: move Checksums from builder
    
    Move the Checksums module from virt-builder mostly as it is; the only
    change is that on checksum mismatch an exception is raised rather than
    invoking "error" directly: this way users of verify_checksum &
    verify_checksums can do their own handling of the situation.

commit e2f2d5210c27717922f3fb5b57e2a22f285cbc86
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 30 14:47:48 2016 +0100

    customize: Add --append-line.
    
    This appends a single line to a file, with some cleverness
    involving guessing the right line endings to use.
    
    Also adds a test.

commit b48aafc78a59b6243dfa8940b9233295ac79b026
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 28 11:06:09 2016 +0100

    daemon: Choose /usr/sbin first for the daemon (debian bug 838995).
    
    Debian is also doing a UsrMove/UsrMerge:
    https://wiki.debian.org/UsrMerge
    
    However it is not finalized that Debian will actually make this
    change.
    
    Since some Debian systems have /sbin as a symlink and other have /sbin
    as a real directory, and we should avoid choosing a symlinked
    directory for the daemon, the easiest fix is simply to probe /usr/sbin
    before /sbin since under all scenarios (and Fedora too) /usr/sbin is a
    real directory.
    
    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=838995

commit c5ac56f4d8b34b10e6a190b88bbe1339765c1732
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 26 16:04:10 2016 +0200

    p2v: add mnemonics to labels and buttons (RHBZ#1379289)
    
    Set mnemonics for all the labels with a text entry or combo box next to
    them, and for all the buttons, and check boxes.

commit 5595092512d5a117dcee2b43a5541d7b2bf3878b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 26 14:16:44 2016 +0200

    tools: build common fish sources in a static library
    
    Create a new libfishcommon convenience static library to build just once
    (instead of 12 times!) the majority of the guestfish sources used in the
    rest of the C tools (mostly for command line stuff, inspection, and
    mount).
    
    The notable exceptions not using libfishcommon are guestfish itself, and
    virt-rescue: both need to build at least one of the common sources using
    additional CPPFLAGS.

commit 1b129d4986e47498d065be5de49b8018dc1c3032
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 26 11:45:07 2016 +0200

    fish, inspector: get rid of COMPILING_VIRT_INSPECTOR
    
    All the define was doing in options.h was masking the declaration of
    inspect_mount_root, which was always built-in in inspect.c (because of
    the unconditional #define there) anyway.
    
    Since this is common code used by all the C tools, try to avoid extra
    knobs which add different code paths for no benefit.

commit df2efc287668ef332a8d53738d67e309f166c8ea
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 26 11:13:17 2016 +0200

    build: remove extra libconfig linkage
    
    Some of the C tools were building also config.c as part of the shared
    sources from guestfish, and thus bringing a dependency on libconfig.
    Since none of them actually read the libguestfs configuration at all,
    then exclude fish/config.c from their build, and stop linking to
    libconfig.

commit 6b34c55309814322dcfbe845800dd4dd1eb97a03
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 23 17:43:07 2016 +0200

    dib: use remove_duplicates instead of own code
    
    Use a common function to remove duplicates in an unsorted list.
    
    Just refactoring, with no behaviour change.

commit 995b75cf3317daed74a1f8886fa604467bb5bd74
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 23 17:40:09 2016 +0200

    mllib: move remove_duplicates from v2v
    
    Simple code motion.

commit ce34cee98cbd7d5560b5e47a33d71a512fd4dd62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 23 10:33:20 2016 +0100

    Version 1.35.6.

commit 0f95401f1faae3b7857e41d4fc03717871b292b9
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Sep 20 12:55:42 2016 +0200

    v2v: linux: correctly reconfigure the initrd on Debian
    
    Using update-initramfs is the native way of updating initrd on Debian
    based systems.
    
    To add some modules to the image we can list them in file
    /etc/initramfs-tools/modules.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit b2814b98c58da5a32aabdeb23346bd30cd43d314
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 22 17:35:20 2016 +0200

    libvirt: read disk paths from pools (RHBZ#1366049)
    
    A disk of type 'volume' is stored as
      <source pool='pool_name' volume='volume_name'/>
    and its real location is inside the 'volume_name', as 'pool_name': in
    this case, query libvirt for the actual path of the specified volume in
    the specified pool.
    
    Adjust the code so that:
    - for_each_disk gets the virConnectPtr, needed to do operations with
      libvirt
    - when extracting the disk filename depending on the type, the code
      snippet doing it can directly set 'filename', without setting an XPath
      result variable
    
    Only file-based volumes are supported for now; more types can be added
    (with proper testing) later on.

commit a4e0b597d40ba5a544020a8545463c163ff615db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 21 13:56:55 2016 +0100

    v2v: Support <listen type='socket'> and <listen type='none'> (RHBZ#1378022).
    
    Since libvirt 2.0.0, these two new <listen/> types have been
    supported: https://libvirt.org/formatdomain.html#elementsGraphics
    
    This change just copies that configuration over from the source to the
    destination if the destination is also libvirt.
    
    Since we previously used 'LNone' to mean "no parseable <listen/>
    element" I also had to change previous uses of 'LNone' to 'LNoListen',
    so we can use 'LNone' to mean "<listen type='none'>".
    
    Thanks: Ming Xie.

commit 1996bfb1f492cfe7ead1eaf2f31587f0baafa181
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Mon Sep 19 19:42:52 2016 +0300

    find_inode: added API tests
    
    NTFS file system always has the MFT file at inode 0. This reliable
    information helps testing the API.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit ac7ae2f1a2cb94046b3abc5187daa5d81070354b
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Mon Sep 19 19:42:51 2016 +0300

    New API: find_inode
    
    Library's counterpart of the daemon's internal_find_inode command.
    
    It writes the daemon's command output on a temporary file and parses it,
    deserialising the XDR formatted tsk_dirent structs.
    
    It returns to the caller the list of tsk_dirent structs generated by the
    internal_find_inode command.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 06d942be3889d5833bf98dda589edebf84552424
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Mon Sep 19 19:42:50 2016 +0300

    New API: internal_find_inode
    
    The internal_find_inode command searches all entries referring to the
    given inode and returns a tsk_dirent structure for each of them.
    
    The command is able to retrieve information regarding deleted
    or unaccessible files where other commands such as stat or find
    would fail.
    
    The gathered list of tsk_dirent structs is serialised into XDR format
    and written to a file by the appliance.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit abf125c6fbf2b7eaa7ff2595416598e3d10205a0
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Mon Sep 19 19:42:49 2016 +0300

    lib: logic refactoring
    
    Code changes in preparation for new APIs.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 80ebc48d7d70a73840fce6de77f260fe6f6b7a5a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 19 18:45:09 2016 +0200

    OCaml tools: add crypto support (RHBZ#1362649)
    
    Make use of the additional command line arguments, and API needed to
    decrypt LUKS partitions.
    
    This affects only virt-customize, virt-get-kernel, virt-sparsify, and
    virt-sysprep, as they are the main OCaml tools interacting with
    user-provided images.

commit ce44100d066c11c2bc21db7623769197c39c7c1b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 19 18:39:14 2016 +0200

    mllib: expose disk decrypt functionalities
    
    Expose via Common_utils the C functions & variables (part of guestfish)
    that handle decryption of LUKS partitions, and the additional command
    line arguments to tune the way they work.  This way it will be easy to
    provide (basic) crypto support also in OCaml-based tools.
    
    Related to: RHBZ#1362649

commit 1f10bc4292809064e5ff6628fc66cd1e28cda136
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 19 14:48:19 2016 +0200

    fish: move disk decryption helpers in own file
    
    This way it is easier to use them outside the rest of the code in
    guestfish for inspection & mount.
    
    Just code motion, no behaviour changes.

commit 7e517fc4e312eb90973e1d8f9e20d2b47bba64ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 19 12:53:35 2016 +0100

    p2v: Add C<...> around XTerm button string.
    
    Thanks: Pino Toscano.
    
    Fixes commit 2e9d0588818a1b24ca617057a6a51f198fe6505d.

commit 3c7e6401486f687a45f96b92cded3ad91e678fc9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 19 12:31:47 2016 +0100

    p2v: Update virt-p2v docs to describe XTerm button (RHBZ#1377081).
    
    Thanks: Tingting Zheng.
    
    Fixes commit bf434bdb3523b7629d50144f35a6bccc05bf94e6.

commit de5214fbfa944d30d12dc770c16fe3d3cebe1368
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Sat Sep 17 00:04:24 2016 +0300

    daemon: refactor tsk code
    
    Refactor logic in preparation for new APIs.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit a1f15c8dbe3742728a8d23e58bbca33c38c22663
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Sat Sep 17 00:04:23 2016 +0300

    filesystem_walk: fixed root inode listing
    
    With the current implementation, the root inode of the given partition
    is ignored.
    
    The root inode is now reported. Its name will be a single dot '.'
    reproducing the TSK API.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 783910fc6dfe46bc8ee7fb96bbccc6b361a55e8c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 15 16:03:58 2016 +0100

    filearch: Return 'i386' instead of 'i486' (as documented).
    
    And some incidental code refactoring.

commit 61e1858bf4a582aa514465f337cacc97c30b180f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 15 16:02:47 2016 +0100

    filearch: Add architectures missing from the documentation.
    
    Updates commit 68d9b04735f45e10e807353b00238ac7603f0e4d
    and commit 33d2b4a7341830efeddb1f258ac77f67a8004d30.

commit 10a6f15b17bd873ee46c93314897630bbb5ca2a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 15 15:57:48 2016 +0100

    filearch: Sort architectures into alphabetical order in documentation.

commit ccc40ad58c2aac93e8fb94d81ba2c76d90d24df5
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Sep 13 15:51:31 2016 +0200

    v2v: linux: detect name of grub2-mkconfig
    
    On Debian family of OSes Grub2 tools are prefixed with 'grub-', not with
    'grub2-'. We have to detect the correct name of the tool to use it.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 65aea5c33521aa721ae9c14937682cdc0d55888a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 14 11:55:25 2016 +0100

    Add riscv64 test binaries, and new tests of guestfs_file_architecture.

commit 7d023853852c356b3a8043f36297915cecd2cba5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 14 15:38:43 2016 +0100

    filearch: Add RISC-V architecture.

commit cc3fb0cd058d1679995019a89e0863da84ef6e57
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 15 13:46:25 2016 +0200

    v2v: -o libvirt: always write pool names (RHBZ#1141631)
    
    When creating the XML for the new guest, always put the name of the pool
    containing the disks, even when -os specified a pool UUID: libvirt does
    not handle pool UUIDs for storage, but only names.

commit b6c2afe3d45f3d65947a8b519235dd7c1eeb3411
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 14 09:59:12 2016 +0200

    v2v: -o glance: log glance client version in verbose mode
    
    When running in verbose mode for debugging, run `glance --version` to
    print the version of the glance client.  This helps when dealing with
    failures, or making its output actionable.

commit 5479382ba83937ed8504c3fed26d2bf563665b11
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 14 09:56:04 2016 +0200

    v2v: -i libvirtxml: tweak warning message
    
    Use a placeholder for the type of disk, so the message becomes exactly
    like another warning message used already in this function.

commit 43d0b9e0e7635881c624a71c5be094db547846b9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 13 15:30:52 2016 +0200

    v2v: -o glance: set all properties during creation (RHBZ#1374405)
    
    The glance client v1.0.0 defaults to the Image v2 API: this means that
    an image can be referenced only by its UUID, and not anymore by the name
    as well (which does not need to be unique).  This caused our glance
    invocation to set the properties for the newly created image to fail,
    since we are using the name as identifier.
    
    Instead of first creating the image and then setting all the properties
    for it, set all the properties when creating the image: other than being
    simpler, it also avoid parsing the output of the 'glance image-create'
    command for the UUID ('id') of the image.

commit cf9336cbb6a532fe190bbdbf9078fde340dcc9e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 12 14:55:43 2016 +0100

    perl: Guestfs.c file is not translatable, don't include it in po/POTFILES.
    
    Reported by Nikos Skalkotos
    https://aur.archlinux.org/packages/libguestfs/

commit 8ce67824da365438ef1a7941117abfa7f234e95b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 17:46:23 2016 +0100

    Version 1.35.5.

commit 5e46975b752ed0bfcbf104245c03cf0faa151874
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 16:37:24 2016 +0100

    v2v: linux: Use /etc/modprobe.conf.local if it exists.
    
    On SUSE (only) there is /etc/modprobe.conf which is generated from a
    /usr/share file.  Local changes are meant to be added to
    /etc/modprobe.conf.local.

commit e817e13a66d237f60a492c405b0b656164eac8e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 16:29:52 2016 +0100

    v2v: linux: Avoid recursive functions.
    
    Just code motion.

commit 7b398e4a211b2eed4ad19c0080459542c1733efd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 17:06:33 2016 +0100

    v2v: linux: Don't use duck typing in interface of Linux_kernels.
    
    On reflection we want the precise bootloaders type, not some other
    object that happens to implement a #list_kernels method.
    
    Fixes commit 2d7fa1db6a21ac5a3ea3e166af8c20b40c16427a.

commit b81c913a8c98503d03041ee492759156501b62f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 15:53:27 2016 +0100

    v2v: linux: Move kernel detection to a separate module.
    
    Create a new module [Linux_kernels] which does all kernel detection,
    and also provides a place to define the kernel_info data structure.
    
    This is essentially just code motion.

commit c4f038efe689ed8a6bb3758d248c0ff6d2744b0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 15:36:45 2016 +0100

    v2v: utils: Move external functions together.
    
    Just a small code movement.

commit fca72e19701406e3741f805ecd531bc270c6ebff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 15:20:20 2016 +0100

    v2v: Move xpath* functions to new module Xpath_helpers.
    
    Just code motion.

commit 420d2480bcbf0ce25b1b2ec320d0bc4c4cdcfc45
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 15:13:24 2016 +0100

    v2v: Split up 'amend_source' function.
    
    Just code motion.

commit 244a2dd424b79d5622990bfe49afbdae1686bb70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 14:56:11 2016 +0100

    v2v: -i ova: Derive the name from the OVA filename.
    
    If the guest has no <Name> element in the OVF, previously we chose
    "default" as the name.  This changes that so it uses a name derived
    from the basename of the OVA file instead.
    
    For example:
    
      virt-v2v -i ova /path/to/myguest.ova [...]
    
    would use "myguest" as the name (assuming no <Name> was present).
    
    Modifies the behaviour of
    commit 1ae4252c93c685cb8561b55c1231502b37212b5a.

commit bec8a512189afa28d966bc2fc43b456c802d49bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 14:45:05 2016 +0100

    v2v: -i disk: Move code that creates name from disk to separate module.
    
    Simple code motion.

commit 53f4e059cca46f43b779819f872a90c671688316
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 9 14:42:05 2016 +0200

    tests: do not assume '.' is in Perl's @INC
    
    Upstream Perl is going to remove '.' from @INC (the include path for
    modules) by default for the next major release (= 5.26) [1], as measure
    to fix security issues.  Debian already started backporting the fixes
    for this [2], thus behaving this way in current Sid installations.
    
    Since the affected Perl sources are only the local daemon testing
    scripts, a simple fix is to force the 'requires' for the local
    captive-daemon.pm module to start from the current directory: this way
    there is no need to manually augment @INC, and only our local module is
    loaded automatically.
    
    [1] https://rt.perl.org/Public/Bug/Display.html?id=127810
    [2] https://lists.debian.org/debian-devel-announce/2016/08/msg00013.html

commit 19f1ec3656c978bd5e166c103cfaae3198d7f63e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 9 08:59:46 2016 +0100

    daemon: Use reply_with_error instead of *_perror for setfiles command.
    
    Fixes commit 9d205f1c284a69390907120ca44f5c723fecc244.

commit 820d447afea8a2fe358c3421b70a6b01d3c92fae
Author: Shahar Havivi <shaharh@redhat.com>
Date:   Thu Sep 8 09:53:37 2016 +0300

    virt-v2v: Support for ova exported from AWS (RHBZ#1371843).
    
    1. AWS the name tag is not mandatory - using default as a name
    2. AWD doesn't prefix 'ovf:' as prefix to disk path
    
    There is an open bug for oVirt:
    https://bugzilla.redhat.com/show_bug.cgi?id=1371843
    
    Signed-off-by: Shahar Havivi <shaharh@redhat.com>

commit bc688033048cea142a29ee772cbb727d35f6739b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 7 19:21:09 2016 +0200

    daemon: drop program_name definition
    
    It was previously needed by the 'error' module of gnulib; recent
    versions are able to get the name of the current program on their own.

commit a75e923a3d3b2f89ed558b9fb403c54e53f8b2bd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 7 19:20:21 2016 +0200

    Use the getprogname gnulib module
    
    Make use of the recently added 'getprogname' module in gnulib: replace
    our guestfs_int_program_name with the getprogname() provided by the
    module, since it does the same thing, and in a portable way.
    As consequence of the above, use gnulib in a couple of tests that use
    getprogname().
    
    Since guestfs_int_program_name is gone, drop the configure checks
    associated with it.

commit c51931541615491da8e2996b2e00369bd61ce717
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 7 17:21:27 2016 +0200

    Update gnulib to latest

commit 34a8e39f5ec9e86d2bed79d0561b5ccccd23bf84
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 7 19:06:55 2016 +0200

    tests: make test-noexec-stack.pl work in non-English locales
    
    Set C as language when running the script, as the output of readelf is
    parsed: this way the parsing works also when the system locale is not
    English.

commit bbbc00b99db60d63bd87756eb968ed3eb940ac17
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 23:32:01 2016 +0100

    Version 1.35.4.

commit 6fdfef39815bf039148c8a5894056d13493ae2c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 22:25:50 2016 +0100

    erlang: Split up large Erlang extension into smaller C files.
    
    Reduce build times in this directory from about 10s to about 2s.

commit b240f7d4f6e39a285622b00cf53adbdeba6f8fca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 22:25:50 2016 +0100

    java: Split up large Java extension into smaller C files.

commit 52cffcb6a2cb29d679dbd3ba50cbd12e563e0605
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 20:51:04 2016 +0100

    python: Split up large Python extension into smaller C files.
    
    Reduces build time in this directory from 11s to 3s.

commit fd77ed2dbb3e386061f0d2aba9a58bdd74e6f3da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 18:48:16 2016 +0100

    build: Check generated files are included in the tarball.
    
    When running 'make maintainer-check-extra-dist', check also that all
    generated files are included in the tarball.  This is done so that end
    users will not need OCaml to compile from tarball releases.

commit 70ac22ddea1c92dd4d6cb22215bbcf97578e5f2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 16:42:05 2016 +0100

    ruby: Split up large Ruby extension into smaller C files.

commit e49ded88dfeec7e2639f0efa1e92879b7a752798
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 16:00:37 2016 +0100

    daemon: Split up very large daemon/stubs.c file.

commit 1ae0d4d8b7097e3c5070c42a8c4a870d9815f624
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 15:05:44 2016 +0100

    fish: Split up the very large fish/cmds.c file.
    
    Make parallel compiles faster in this directory (about 8s down to 3s).

commit aa8e432aa2a5c6447933c406edf3044db26658fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 13:44:46 2016 +0100

    generator: Generalize the code used to split actions across files.
    
    Previously we used an awkward hack to split up the large src/actions.c
    into smaller files (which can benefit from being compiled in
    parallel).  This commit generalizes that code, so that we pass a
    subsetted actions list to certain generator functions.
    
    The output of the generator is identical after this commit and the
    previous commit, except for the UUID encoded into tests/c-api/tests.c
    since that is derived from the MD5 hash of generator/actions.ml.

commit fe4cec3c929ce761b2803d7efc9477a728117d7d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 13:40:25 2016 +0100

    generator: Move all actions into a single list and add filter functions.
    
    This mostly mechanical change moves all of the libguestfs API
    lists of functions into a struct in the Actions module.
    
    It also adds filter functions to be used elsewhere to get
    subsets of these functions.
    
    Original code         Replacement
    
    all_functions         actions
    
    daemon_functions      actions |> daemon_functions
    non_daemon_functions  actions |> non_daemon_functions
    external_functions    actions |> external_functions
    internal_functions    actions |> internal_functions
    documented_functions  actions |> documented_functions
    fish_functions        actions |> fish_functions
    
    *_functions_sorted    ... replacement as above ... |> sort

commit 807e856b73b7636192483508201e60d82ef9f97c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 14:38:02 2016 +0100

    generator: Add |> (revapply) operator for compat with OCaml < 4.01.

commit f43440e63b449770757e209802ed243f2d3cd24d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 1 12:14:27 2016 +0100

    customize: Add a slow test of --hostname and --timezone settings.
    
    Run these in real guests to ensure they really work.

commit 8e92dc2218ca4260c1d01544e48f689e0b6b7ae0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 1 13:27:48 2016 +0100

    customize: Update "unassigned-hostname" etc in Debian/Ubuntu /etc/hosts (RHBZ#1372269).
    
    Commit ab2df2e6598d421067d600f89a3d225162424d9b attempted to rewrite
    /etc/hosts if it contained the old hostname.
    
    However this wasn't done reliably for a couple of reasons:
    
    (1) Certain Debian/Ubuntu /etc/hostname contains
    "localhost.localdomain" but still has "unassigned-hostname" or
    "unassigned-hostname.unassigned-domain" in /etc/hosts.
    
    (2) Even if (1) doesn't apply, you still need to split out the
    hostname and domainname parts and deal with them separately.

commit 9539de389723e311ecc77d94208ec31034ddc1b2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 31 18:04:39 2016 +0200

    build: improve distro check
    
    Use /etc/os-release as first option, translating the distro name to the
    current identifier used.  The other options (the release files) are left
    as following checks, avoiding them if any matches.

commit 6c9d05207d4ab2215060826276118e4614900e13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 12:20:03 2016 +0100

    v2v: Don't remove Processor and Intelppm nodes (RHBZ#1372668).
    
    Don't remove the Processor and Intelppm nodes since that just breaks
    the device driver.
    
    The only remaining node being removed by the original code was
    "rhelscsi" (the xenpv-win driver).  I changed this so that instead of
    deleting the whole node, it simply disables that driver.  If you look
    at RHBZ#737600, it's not even clear that deleting nodes was the right
    fix for anything.  I also renamed the function.
    
    Reviewed-by: Roman Kagan <rkagan@virtuozzo.com>
    Signed-off-by: Richard W.M. Jones <rjones@redhat.com>

commit c2edcb5c934c4265745fd94a5f696e5ffea5ad61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 2 10:30:20 2016 +0100

    build: In silent rules, differentiate between .cmi and ocamlc.
    
    Although we happen to use 'ocamlc' to compile .mli files to .cmi,
    it is used in a different mode from bytecode compilation.

commit 2b5b2edd7d3b4349d066970c4d91f96a1f8a1fc9
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Aug 9 16:13:36 2016 +0300

    v2v:windows: prevent conflicts with PnP on firstboot
    
    When put on new virtual hardware Windows will start driver installation
    for newly discovered devices.
    
    The problem is that it happens asynchronously and concurrently with
    other activities, in particular, the firstboot scripts.  This may result
    in conflicts (because a firstboot script may want to install or
    uninstall a driver, etc.) and eventually in the system left in
    inconsistent state.
    
    In order to prevent it, add another firstboot script which calls a
    special utility, pnp_wait, whose sole purpose is to wait until all
    PnP-related activities are finished.  (It does so via a WinAPI call
    which isn't available from a script so it has to be a compiled .exe.
    The source code for it can be found in the corresponding directory in
    https://github.com/rwmjones/rhsrvany).  This firstboot script is put
    first, so that other firstboot scripts do not have to worry about
    interactions with PnP manager any more.
    
    One caveat is that on Windows XP and Windows 2003 the PnP manager always
    fires the "Found New Hardware" wizard, which doesn't allow PnP to make
    any progress until the user closes it.  As a result, this firstboot
    script would never finish.
    
    To work it around, follow the Microsoft KB
    (https://support.microsoft.com/en-us/kb/938596) and set up a registry
    key to make the the PnP manager not fire the wizard; the key is restored
    to its initial state upon PnP completion.  Unfortunately this only works
    on systems having the mentioned update installed; otherwise the user
    will have to interact with the UI.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Reviewed-by: "Richard W.M. Jones" <rjones@redhat.com>

commit 6e04abf3232c5427bd2338fd46acb6bf14572ec4
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Aug 9 16:11:10 2016 +0300

    v2v:windows: factor out getting CurrentControlSet
    
    It will be used in new code in a followup patch.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Reviewed-by: "Richard W.M. Jones" <rjones@redhat.com>

commit 4375d60717f425e314cda8b7db2649adb6b5ae12
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 1 08:51:06 2016 +0100

    Version 1.35.3.

commit c42baf30b9f029a99c55501f6b0b58f7dc521559
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 1 08:41:06 2016 +0100

    v2v: Use a random pool name in the test to avoid conflicts.
    
    If multiple tests (eg. from different branches) are running in
    parallel, they will attempt to use and delete the same temporary pool.
    Use a random pool name to avoid this.

commit f3f8c838faac0c821a1e64c5547f0be707629a40
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 31 23:09:10 2016 +0100

    valgrind: Add suppression for another --run-libc-freeres=no non-leak.

commit 4d17df6d1cff62f1fdec4c0ad7e1f593d553ab3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 31 19:35:12 2016 +0100

    lib: Fix incorrect example in comment.

commit 773994c9ce095bacd28ab412b878d0f5b59dc805
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 31 11:24:44 2016 +0100

    v2v: xml: Fix misleading error message.
    
    Other functions, such as ``-i ova'', also call Xml.parse_memory.
    Therefore the error is not always from XML generated by libvirt, the
    XML might be generated from other sources too.
    
    Thanks: Ming Xie.

commit 0f5e2595a8a7265b412c1cc9110aa2dae09a3df0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 30 23:04:57 2016 +0100

    Version 1.35.2.

commit f121460eb50b4cd9b6a9b3c6f0bd70a12fc9dd10
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 29 18:13:57 2016 +0200

    Include <sys/sysmacros.h> for major()/minor()
    
    GNU libc pulls them implicitly from <sys/types.h>, but it will not do
    that at some point in the future.  Hence, include <sys/sysmacros.h>
    explicitly.

commit 942334462a998929031214b70e2cf8d65803e9b7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 29 10:18:00 2016 +0200

    tests: add rhbz1370424.xml to EXTRA_DIST
    
    Fixes commit 98aa78f288e44868bcccf56b777d57d9fd4ec6a6.

commit 824244ff8ac48cb119dc7ef3c0f64452c7531198
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 27 13:51:14 2016 +0100

    v2v: Use separate scripts for the slow tests of real guests.
    
    Following the same style used for the firstboot tests in the
    customize/ subdirectory, use a separate test script for each real
    guest that we test.  This has two advantages: (a) the tests run in
    parallel (and are thus faster) and (b) automake "knows" about each
    test and reports the results separately.

commit 6de7bdc76ed9ef530e7247d5c06ce4c2f5286fa2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 13:40:20 2016 +0100

    customize: Add a slow test that firstboot works on a variety of real guests.

commit 6649b2dfb6d4bc2d75d974dcf8bcdaee512056e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 18:23:58 2016 +0100

    customize: Fix firstboot scripts on Debian 6 & 7 (RHBZ#1019388).

commit 35ebdf6e45ef22d59e0d9ce919ae63140c1737af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 27 09:09:16 2016 +0100

    lib: Remove some unnecessary translation of debugging messages.

commit 1b4b2dd8610901f9e7c087a040c9f4fa45d6b0bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 27 07:32:49 2016 +0100

    tests: Add a regression test for RHBZ#1370424.
    
    Regression test for previous commit which just tests that
    guestfs_add_domain doesn't assert-fail on guests with no port
    attribute.

commit ae11d9b8f706d5dd0ab0b4a18c6f15f791b27180
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 27 08:51:29 2016 +0100

    lib: Don't assert fail if port is missing in XML (RHBZ#1370424).
    
    Thanks: Xiaodai Wang

commit 334c24cbe15b0884020387acbd90ce5b8b41be04
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 13:58:07 2016 +0100

    v2v: Use unitless methods for methods which don't change the internal state.
    
    Methods in OCaml which don't take any parameters don't require the
    dummy unit arg, ie writing:
    
      method foo = ...
    
    is fine.  The reason you might need the unit arg is if you need to
    create a closure from the method without calling it, for example if
    you need to use the method in a callback.
    
    In lablgtk2 the convention is to use unitless methods if either: the
    method shouldn't be used as a callback; or: (conceptually) the method
    doesn't change the object's internal state.  Let's do that here.

commit 74d1d292e351048cdff3eb013e19cd515cddcde6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 26 15:22:54 2016 +0200

    v2v: linux: adapt initrd name for Debian
    
    The name of the initrd image on Debian-based systems is different from
    what used on Fedora/RHEL/SUSE and derived; set a different regexp to
    avoid making the current regexp even more complex.

commit 797d924e5d16a45c9d0b93ab6b0585078ac6be25
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 8 18:19:27 2016 +0200

    v2v: linux: check the kernel package name for Debian
    
    On Debian-based systems, the kernel packages are named like
    "linux-image-$kver", so check for them.

commit 05b13d760f8fa405e7469e1beaafe4aa00d6acc6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 8 18:06:22 2016 +0200

    v2v: add /boot/grub/grub.cfg as Grub2 config
    
    This is the location of the Grub2 configuration in Debian-based systems.

commit 4b1b4c234eda309dac7d4e2407b932941d0e59d2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 8 18:04:40 2016 +0200

    v2v: linux: identify Debian-based distros as `Debian_family
    
    Identify these distributions, so it is possible to add specific code
    for them.
    
    This does not allow them as supported distributions, yet.

commit 1c195e03b69d8af7bef482aaf7c0eed0db77be89
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 8 18:01:56 2016 +0200

    v2v: add basic support for the "deb" package manager
    
    Implement the 'remove', 'file_list_of_package', and 'file_owner' methods
    of the Linux module for the "deb" package manager (dpkg basically, on
    Debian and derived distributions).
    
    Also allow it for the main conversion code.

commit 061a7a28a92ee59d9d9ce233ebbf520e63d109fc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 8 17:55:30 2016 +0200

    v2v: refactor Linux.remove
    
    Move the actual job in an helper function, so the common bits (like the
    check of the size of 'packages' and the reload of Augeas) can be done
    for all the package manager implementations.
    
    This should be code motion with no behaviour change.

commit bd9d90a208c685444130fa1f496bd9f39f76df30
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 07:39:56 2016 -0400

    v2v: Use our definitions of iteri and mapi.
    
    OCaml 3.12 (in Debian Wheezy) did not have these functions.

commit 8ec943e8abfb37aad9442d01ad5efb59b55b21d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 07:36:10 2016 -0400

    v2v: Small fix to POD documentation for old perl/POD.
    
    Old perl/POD from Debian Wheezy has a bug where <name>NAME</name>
    gives the error:
    
     Unknown E content in E</name>
    
    even though this is in a verbatim section.  Fudge the documentation to
    avoid this.

commit e8b38c7ced1b62f285d9c4b787355ea688901106
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 07:34:02 2016 -0400

    builder: Rename cmdline 'ops' field.
    
    In OCaml 3.12, type inference was not as smart and could not use local
    information to disambiguate same-named fields in different structures.
    The easiest fix for this is just to rename the field so it doesn't
    have the same name as a field in the Customize_cmdline.ops struct.

commit 26128cbca069f155bfd4372414ba96b3cce9578f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 07:09:43 2016 -0400

    build: Check for minimum version of libvirt in the configure script.
    
    In Debian Wheezy with libvirt 0.9.12.3, HAVE_LIBVIRT was defined, but
    HAVE_LIBVIRT_BACKEND was undefined, so src/libvirt-auth.c failed to
    compile.
    
    It's easy, and better, to check the minimum version in the configure
    script.

commit 0ca330c77095379b32e88ba0b53139a8178532ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 10:00:21 2016 +0100

    docs: Fix release notes, Citrix Xen -> SUSE Xen.
    
    I got the wrong end of the stick.  Cédric tested SUSE Xen,
    not Citrix (upstream) Xen.

commit 376350143f4cb8423f7e6c56b8e35133121c2cd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 09:59:56 2016 +0100

    Revert "v2v: Citrix Xen has been tested, adapt the documentation"
    
    This reverts commit 68ba0609c70d09afe5555524873662aa67ebe149.

commit 778016842f129e4d99413ecccc67705aa846d4e8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 26 10:13:33 2016 +0200

    v2v: factor out bootloader handling
    
    Create an object hierarchy to represent different bootloaders for Linux
    guests, moving the separate handling of grub1 and grub2 in different
    classes: this isolates the code for each type of bootloader together,
    instead of scattering it all around.
    
    This is mostly code refactoring, with no actual behaviour change.

commit 13c3584a64481795d085ef6f301119216559819e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 22:44:15 2016 +0100

    mllib: Add String.map function for OCaml < 4.00.0.
    
    String.map was added in OCaml 4.00.0.  However we use this function
    to implement String.lowercase_ascii etc.
    
    Therefore include a definition of the function for older versions of
    OCaml.  (Debian Wheezy has OCaml 3.12.1.)

commit 4c96555f5142f72c71d99e8b8d07c1e72835ebbe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 15:13:41 2016 +0100

    build: Add common CLEANFILES and DISTCLEANFILES to common-rules.mk.
    
    By adding common CLEANFILES and DISTCLEANFILES variables to
    common-rules.mk, we can remove these from most other Makefiles, and
    also clean files more consistently.
    
    Note that bin_PROGRAMS are already cleaned by 'make clean', so I
    removed cases where these were unnecessarily added to CLEANFILES.

commit a769150107414b24104b505b0340d20844bfe0a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 14:12:42 2016 +0100

    java: Don't try to set -source 1.5 in options.
    
    There was some code in configure.ac dating back to 2009
    (commit b9014d6a0da8b2b3a76c4ab51fab2773fe7480b2) which attempted to
    add the javac option `-source 1.5'.  I don't think this code ever
    worked.
    
    However, if -source 1.5 is added, then you get this warning:
    
    warning: [options] bootstrap class path not set in conjunction with -source 1.5
    warning: [options] source value 1.5 is obsolete and will be removed in a future release
    warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
    
    and that's very hard to reliably fix because you have to know somehow
    a magic path.  For more details, see:
    
    https://blogs.oracle.com/darcy/entry/bootclasspath_older_source
    https://blogs.oracle.com/darcy/entry/how_to_cross_compile_for
    
    Anyway, remove the voodoo from configure.ac.
    
    As a side effect, this allows you to set the EXTRA_JAVAC_FLAGS
    environment variable before ./configure with any extra javac flags
    that you want.

commit 0f2d9b2193617f59ab893bb5c4e9e6fffc7dd9d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 14:57:26 2016 +0100

    bash completion: Add a simple test that the 'complete' command is not missing.

commit 8ed9922c5d2870a8feeca6f3951da883acbfc2b1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 19 16:21:12 2016 +0200

    v2v: linux: handle UEFI path for Grub1 (RHBZ#1152369)
    
    Add also /boot/efi/EFI/redhat/grub.conf as configuration of Grub 1;
    since the "grub" lens of Augeas does not handle this path, add a
    transformation so Augeas can parse it.

commit 1d38909d998d0d6886ea9b9f50b58f1056af7db5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 19 16:19:34 2016 +0200

    New API: aug_transform
    
    Expose the aug_transform API through the library, so it's possible to
    add/remove Augeas transformations to handle files in custom places using
    existing lenses.

commit e2184040346d9378cc7fc22a5593a0697f50e345
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 11:36:51 2016 +0100

    bash completion: Add missing bash completion scripts (RHBZ#1367738).
    
    Add new scripts for:
    
    - guestunmount
    - virt-copy-in
    - virt-copy-out
    - virt-customize
    - virt-dib
    - virt-diff
    - virt-get-kernel
    - virt-p2v-make-disk
    - virt-p2v-make-kickstart
    - virt-p2v-make-kiwi
    - virt-tar-in
    - virt-tar-out
    
    Also combine the separate virt-resize script into the general script
    virt-alignment-scan.  There wasn't really any reason to have separate
    scripts.

commit 5bc7cc00f1df66cf98060a58957c047ca412e7d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 11:36:22 2016 +0100

    bash completions: Add tip for how to run bash completions locally to README.

commit db452aff6dd3ed8c08e38015c59fd8705adcbe6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 13:08:25 2016 +0100

    p2v: Implement --short-options and --long-options in virt-p2v-make-* scripts.

commit dbc9947b43d8c552fd3b173541dc4c78d8d740f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 12:43:21 2016 +0100

    fuse: Implement --long-options and --short-options in guestunmount.

commit 1cc879d41dd2b498311e4b2fdd77717d18a1cf92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 12:41:58 2016 +0100

    fish: Move display_*_options functions to a separate file.
    
    By moving these two functions out of the common options parsing code,
    it means we don't need to depend on all the other machinery of options
    parsing, such as the global variables ("verbose"), libconfig, etc.

commit 82bcf706c08dc8d4265d6d2fbf9c550793f1cd61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 11:08:15 2016 +0100

    inspection: Fix parsing of btrfs subvolumes in /etc/fstab.
    
    The code to parse btrfs subvol entries in /etc/fstab failed if the
    entry had more than one comma-separated option, for example:
    
    /dev/sda4 /home btrfs rw,user,subvol=foo 0 0
    
    This commit fixes that code to use Augeas correctly.
    
    Fixes commit 7ba0e10501f23358c38939930d613bf2393d744d.
    
    Reported by: Zhongfu Li
    https://bugs.launchpad.net/ubuntu/+source/libguestfs/+bug/1615337

commit 4c795c5a53e2d55b70c5b1620b57dfc09884cea8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 24 14:52:25 2016 +0100

    v2v: Allow libvirt >= 2.1.0 to be used for Xen and vCenter conversions.
    
    Libvirt >= 2.1.0 now allows you to open files which have a "json:"
    QEMU pseudo-URL as backingfile, whereas previously it would fail hard
    in this case (RHBZ#1134878).
    
    When virt-v2v performs conversions from Xen (over SSH) or vCenter
    (over HTTPS) it uses these pseudo-URLs as backingfiles.  We had to
    tell people to use LIBGUESTFS_BACKEND=direct to avoid libvirt in this
    situation.
    
    This commit narrows the check so it will now only print the error if
    libvirt < 2.1.0 and LIBGUESTFS_BACKEND=direct is not set.  Also the
    error is modified to tell users they can either upgrade libvirt or set
    LIBGUESTFS_BACKEND=direct to work around the problem.
    
    Note there is not an easy way apart from checking the version number
    of libvirt to tell if the json pseudo-URL is supported.
    
    As a side-effect, this commit also prints the libvirt version number
    in debugging output when virt-v2v starts up, which is sometimes useful
    information for narrowing down bugs (it is in fact already printed by
    libguestfs, so this is duplicate information, but it's a bit easier to
    find when it's at the top of the debug).
    
    Thanks: Peter Krempa.

commit e7e90207272f024001b4e11645bb6a2f28a05821
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 22 14:26:27 2016 +0100

    v2v: Separate out machine="q35" and <smm> properties.
    
    This is a simple refactoring of
    commit 913dd8a087597f4d9fc658fb75813148107ff72e.

commit 9a0bee37b3d02ccf20e395eab612eb46deb0b2db
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 23 15:51:47 2016 +0200

    mllib: do not assume $PATH is set
    
    Make 'which' gracefully handle the case where $PATH is not set
    (it will raise Executable_not_found, but that is the expected thing to
    do).
    
    Related to RHBZ#1367839.

commit 81113ad5734390049a4a9c1b2992063b55be22ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 18 16:13:12 2016 +0100

    aarch64: uefi: Fix the build on aarch64.
    
    Fixes commit 0c396650b0018dc3fcd7ca809202ad46ae2c327d.

commit 4a519afd92d7f25cf5d196e06e468de5ee18f96b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 17 14:27:24 2016 +0100

    v2v: Use OVMF secure boot file (RHBZ#1367615).
    
    From RHEL 7.3, Red Hat have decided to only compile the secure boot
    version of OVMF on x86-64, with flags -D SECURE_BOOT_ENABLE -D SMM_REQUIRE.
    
    The filename has also changed to reflect this - it is now
    /usr/share/OVMF/OVMF_CODE.secboot.fd.  The old file
    /usr/share/OVMF/OVMF_CODE.fd is no longer shipped.
    
    However switching to using this variant of OVMF for UEFI guests is not
    just a matter of changing the filename.  The new OVMF variant won't
    run unless we also change:
    
     - The qemu machine model, from the default ("pc" ==
       "pc-i440fx-rhel7.3.0" or later) to Q35 ("q35" == "pc-q35-rhel7.3.0"
       or later).
    
     - Add <smm> under <features>.
    
     - Set <loader ... secure="yes">.
    
    NB: On RHEL the changes requires qemu-kvm-rhev.  It is no longer
    possible to convert UEFI guests using the basic qemu-kvm.
    
    Thanks: Laszlo Ersek, Ming Xie.

commit 48c042e4c8aab4225bc3ebec5eb8066df6136489
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 18 12:35:16 2016 +0100

    Generate the lists of UEFI firmware paths.
    
    Previously we had a list of UEFI paths in src/uefi.c, which was
    accessed in virt-v2v using a private (guestfs_int_*) API and some C
    binding code.  This was clumsy and required the paths to be replicated
    in the virt-v2v unit tests.
    
    Instead just generate the list of paths from the generator, creating
    src/uefi.c and v2v/uefi.ml with the same content.
    
    Remove the C bindings and the virt-v2v unit tests associated with UEFI
    paths.

commit 9899ffe0f8e732fb3ddd53cc306d9aac8e402dbf
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 18 14:00:43 2016 +0200

    v2v: linux: simplify RPM database cleaning
    
    Iterate on the array directly, instead of converting it to a list to do
    the same; also, avoid a temporary variable for it.

commit 206aa754798e6adfc06cdef31767a1d5eb91885b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 18 12:54:11 2016 +0200

    build: add silent rules for jar

commit aa52baa07c43b8ccf65466f3f2ce8f9b6feaef68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 17 17:10:29 2016 +0100

    v2v: test-harness: Print the full path of the virt-v2v binary under test.

commit 1a44d9d3754f32121047b1805b5e28d257bb0869
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 17 14:36:44 2016 +0100

    v2v: OVMF is now fully open source, fix the man page.

commit c72d02d39512cb523346c175bf5cbafa70a7ea31
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 16 15:06:17 2016 +0100

    Version 1.35.1.

commit 5463644cf713927059c79a07dc40961a8967e137
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 12 10:34:54 2016 +0100

    v2v: Add -o discard option when fstrimming.
    
    This *may* be required by some filesystems in order for fstrim to
    work.  I'm not actually sure if this is true, but it's what
    virt-sparsify --in-place does, and that utility has been tested a lot
    more in regards to trimming.

commit a97c7f75dcfb10e8af869bbd0acf246e9bd02176
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 12 10:32:26 2016 +0100

    v2v: Make fstrim warning clearer (RHBZ#1366456).
    
    This reverts the change made for RHBZ#1168144.  The warning is now
    always displayed.
    
    It would be nice to make the warning actionable, but there is not a
    lot that end users can do since fstrim is such a complex topic
    interacting with all filesystem and storage layers.

commit e3eccb0b562d78c5ed02545ec3ba5164bb30d3b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 12 10:43:44 2016 +0100

    p2v: Fix s/is/are/ in GUI message.
    
    I reordered the 'and' clause to make it sound a bit more natural.
    
    Thanks: Junqin Zhou.

commit e3da1832fe70459d76b530a9967c12f925dd3071
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Aug 11 00:25:53 2016 +0200

    v2v: linux: accept 'sr' devices in fstab
    
    Do not print warning for 'sr' devices when converting fstab. Not all
    systems create the /dev/cdrom symlink for SCSI CD-ROM devices. Moreover,
    on systems with multiple CD-ROMs, having entries for /dev/sr* devices
    may be inevitable.
    
    RWMJ: Use String.is_prefix instead of String.find, to more accurately
    match on the device name.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>
    Signed-off-by: Richard W.M. Jones <rjones@redhat.com>

commit 8b7e1d9fa252893868a3ecc270bbb8d4e6def627
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Thu Aug 11 00:26:38 2016 +0200

    v2v: Citrix Xen has been tested, adapt the documentation
    
    Conversion from Citrix Xen has now been tested and should work. Remove
    the comment about it from the documentation.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit d9c24f9f21b3f3fc9fe184e7c91573fb974adcb9
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Mon Aug 8 23:28:56 2016 +0300

    sleuthkit code cleanup
    
    Small cosmetic changes.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 59146589dd19ec1a3b1ebc4af0c18a2f1529da30
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 8 17:25:40 2016 +0200

    sparsify, v2v: use Common_utils.absolute_path
    
    Use the common function for ensuring a path is absolute; it should not
    change the behaviour at all.

commit 2e90eca15222b7236d283d9a1b9eb901da86272b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 8 17:21:03 2016 +0200

    v2v: disk: strip only common extension (RHBZ#1365005)
    
    In disk input mode, to determine the guest name strip the extension from
    the filename only if it's a very well extension for disk images.

commit 90d31175a65798fe6ab6d93ed754a8b925a60a2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 8 13:57:17 2016 +0100

    website: Get rid of some quite old branches.
    
    RHEL 7.3 will have 1.32.6, so we should encourage people to move to at
    least that version for recent features.
    
    Fixes commit f4e4a668aeec69c69d96168dc0cfbd0abe3716da.

commit e73defcd7d4e2254c340e59460f0a0b052a3953d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 8 13:46:24 2016 +0100

    Version 1.35.0.

commit b13f495d46f7941618c639dc95f02ed4c4491dc3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 8 12:49:58 2016 +0100

    Version 1.34.0.

commit ddf42bf81637434e08f2f4a69f64a3757a53be73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 8 12:37:25 2016 +0100

    Update website for 1.34 release.

commit 06666f0d88486f09622845f1913a04a0771326e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 8 10:53:48 2016 +0100

    Update release notes.
    
    Also remove "draft" logo since these are close to being finalized
    for the 1.34 release.

commit 9ba0df5826f9ba555738ad8007e6695196400f8e
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Sat Aug 6 20:04:53 2016 +0200

    v2v: fix regex replacement in grub2_update_console
    
    The replacement string was wrong. There are only two match groups in the
    regular expression, not three.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 21ccc3c8cd627e6e2c22aa0b96cbd9de42228bee
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Fri Aug 5 11:32:27 2016 +0200

    v2v: do not hide the error, rather report it
    
    The Invalid_argument exception is there to catch unexpected situation
    when rpm returns no output. Such situation should be reported rather
    then hidden.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 0a16b7bcf052c84edaf3a6d6fddcd191dbd9e4eb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 5 18:04:25 2016 +0200

    ruby: ignore -Wshift-overflow warnings
    
    There seems to be a -Wshift-overflow bug in a Ruby 2.3 header, so
    add a GCC diagnostic override to avoid build failures with
    --enable-werror.

commit 0b57b9201b1080e072fc848196e5cb84f1dde0a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 12:20:49 2016 +0100

    sparsify: Add a regression test for RHBZ#1364347.
    
    Add a regression test for the previous commit.

commit b7bc79fa7eb1b1abc1f869dc65e98c7439c74bb5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 12:20:00 2016 +0100

    sparsify: Warn instead of error if a filesystem cannot be fstrimmed (RHBZ#1364347).
    
    Thanks:  Xianghua Chen

commit 75b3eebe1230b06a29b1dc824cf9015363fbb5a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 12:18:53 2016 +0100

    daemon: fstrim: Turn "discard operation is not supported" into ENOTSUP.
    
    Because we run the external fstrim command we don't have access to the
    kernel errno when it fails.  However in the case where it prints this
    specific error message, turn that into errno ENOTSUP.

commit c7ba0b79aa290e8a0eefef54bb814e0e24d16a8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 12:09:59 2016 +0100

    sparsify: Exit with error code 3 if fstrim is not supported by the appliance.
    
    This replaces the indirect exception catching from
    commit 931aec5b8846ce63b0e2b6beba5861a019b5f694 with a direct feature
    test.
    
    Fixes commit 931aec5b8846ce63b0e2b6beba5861a019b5f694.

commit 224426462e4ce2e6044dd6f13bd742ee1eb66dd6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 10:37:21 2016 +0100

    build: Line up "OCAMLOPT" with other silent rules.
    
    Tidies up commit 0b94c4d3bb0b72b0608b65ab97294747383e32d8.

commit 6318930bed2773a814a28ad4be7e2e7a45e42690
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 4 23:33:58 2016 +0100

    build: Add silent rules for podwrapper.
    
    Also quietens the podwrapper script itself, as there is no reason to
    print 'wrote <output>' for each output file.

commit b7ee808ed86488b8d1d022f29684aa97369091ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 4 22:34:42 2016 +0100

    Version 1.33.49.

commit 6c8efee9f5db4ba159be8455e4e4c3a7dab2e6a1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 4 16:18:33 2016 +0200

    build: add simple custom silent rules for automake
    
    Add makefile variables to enable silent rules for simple command
    invocations, such as ocamlc, ocamlopt, javac, and erlc.
    
    This reduces the log output when building with silent rules, still
    showing the full command lines otherwise.

commit 016b393d9acace2b5ea5eb6a833589c198aa3ee4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 4 14:43:21 2016 +0200

    dib: add --drive-format
    
    Allow to specify the format of the helper drive, to avoid relying on the
    format autodetection.  This is the same approach used also in all the
    other tools.

commit 9617d57b9ffd5a21098ab67a093a3e8b859a7b18
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 4 13:53:31 2016 +0200

    firstboot: make SysV symlinks as relative on Debian
    
    Turn the rc.d symlinks for the guestfs-firstboot service as relative,
    instead of absolute paths: the result is the same (the service works the
    same), and this way is more coherent with symlinks created by
    update-rc.d.

commit 0046b74aa8f468a57eb997b2383a8b9705fd13c0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 4 13:44:03 2016 +0200

    firstboot: rename systemd and sysvinit
    
    Currently we install a systemd service named firstboot.service and a
    SysV service named virt-sysprep-firstboot.  On systems where systemd is
    the init system and runs with the SysV compatibility, the different
    names make systemd handle them as different services, and thus trying to
    run the firstboot script runner twice.
    
    Rename both the systemd service and the SysV one to guestfs-firstboot:
    the new name is less generic, and allows the systemd service to be
    shadowed by the SysV service (and thus running just once).
    
    Also cleanup the old services: the old SysV service can be removed
    directly, since its former name had "virt-sysprep" in it, and so there
    could not be much room for confusion and conflict.  Regarding the old
    systemd service: to avoid leaving it behind, a simple cleanup strategy
    is in place, checking the content of the old firstboot.service to really
    ensure we are removing one of our versions of this file.

commit 8b95766df215c5d5d4d8b16e43600d36004e5173
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 4 12:07:06 2016 +0200

    dib: export FS_TYPE for elements
    
    Export FS_TYPE for the elements, so they can know what is the filesystem
    created.
    
    This was implemented in diskimage-builder upstream as
    commit be521bdec6233530cc952be246a66f1957b0dd58.

commit 7f2c92a8705036b3d7ada0bc1a2cb0b174e8b8b9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 4 11:02:19 2016 +0200

    dib: add docker output format
    
    Implement the "docker" output format, to import an image into docker.
    
    This was implemented in diskimage-builder upstream as
    commit 1187f9d5df6d6eddba478ac75d3834391480755f and
    commit edc06a20e57bdf0a9a03949b54395008d73520dc.

commit 55c7c5b76df6d23c4602aec28628ab07fba8456f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 4 10:00:06 2016 +0100

    Version 1.33.48.

commit a668f942830a71dbfcaa240710967013a5b649d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 4 09:52:07 2016 +0100

    po: Update POTFILES.

commit 598d222619b151faedcf3eab035b5617ed35d94e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 4 09:25:55 2016 +0100

    mllib: _exit should return 'a
    
    Fixes commit 0dfa96c043cee4ce82c0a45c3ad09b0a61798b79.

commit 80ac28b849b20666c3daab451f3e8ef20e02d57a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 3 16:43:45 2016 +0100

    Version 1.33.47.

commit f4460bb04e7ec9717e8c59512091355083329363
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 3 16:40:20 2016 +0200

    dib: rework run of extra-data.d hooks (RHBZ#1362354)
    
    Instead of running them before lanching the appliance with the disks and
    then uploading the result after root.d hooks run, mount the root in the
    local temporary directory using FUSE and then run the hooks on the
    guest.  Other than being closer to what diskimage-builder does, it also
    avoids issues with the extra-data.d scripts assuming to find things
    already, and we don't error out while trying to unpack files on the
    guest.
    
    Since virt-dib requires FUSE now, build it only if FUSE is supported.

commit 9bed27bbf6df48ca2998c819513a6a33aaf34055
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 3 15:01:59 2016 +0200

    mllib: move _exit from v2v as Exit module
    
    Move the OCaml binding to C _exit to an own module.
    
    Just code motion, adapting v2v in the process.

commit 8fa8d6df39473cce8e8cdce50a4ca902a60a30b4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 2 18:45:34 2016 +0200

    mllib: check for executable existance in run_command (RHBZ#1362357)
    
    run_command uses Unix.create_process which forks a child process, and
    executes execve: the latter fails when the executable does not exist,
    triggering the exit which, in older OCaml versions [1], also runs the
    at_exit handlers.
    
    Since there is not much that can be done to avoid this on the OCaml
    side, to keep run_command working also in older OCaml version then
    manually search for the existance of the given executable, exiting with
    code 127 (as a shell does) in this case.
    
    [1] http://caml.inria.fr/mantis/view.php?id=7209

commit edbc731e3cfd4c2f9db949362ebcb0f736cf650b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 2 18:34:09 2016 +0200

    mllib: move which and its exception from dib
    
    Rename it from "tool" to "executable" in the process, but otherwise
    it is just code motion (with minimal adjustments in dib).

commit 713e4e86f7e2bfbc40b509533e6ff22163723d32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 2 14:44:50 2016 +0100

    launch: libvirt: Autodetect backing format for readonly drive overlays (RHBZ#1354335).
    
    If the user doesn't specify a format (ie. they want autodetection),
    and the drive is set to read-only, previously we created a qcow2
    overlay to protect the drive but didn't set the backing_fmt field.
    However libvirt disabled this so now libvirt doesn't work at all on
    qcow2 files that have no backing_fmt field set.
    
    We must therefore do autodetection in libguestfs and use that to set
    the backing_fmt field.
    
    We were already doing autodetection in the non-readonly case, so this
    commit refactors that code into a new function
    ("get_source_format_or_autodetect") and uses it on the readonly path
    too.

commit ecb2fbb25d85ea23ad35b9fb3b43bd9d63164f0f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 2 12:10:06 2016 +0100

    v2v: linux: Ignore unused string return value of 'file_owner'.
    
    Because we didn't give the type of 'g' there wasn't sufficient
    information for the type checker to pick up this problem.  By
    specifying the real type of 'g' in a type annotation, that reveals the
    problem.
    
    Thanks: Pino Toscano, Nyoxi on IRC.

commit 596d987df5da65c5a9c1440cd6b2b4929634ee82
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Mon Aug 1 14:46:14 2016 +0200

    v2v: fixed file_owner function
    
    What was happening in file_owner function did not match the description
    in the comment. When a path is owned by multiple packages the returned
    string was in fact a concatenation of the names of all packages that own
    it. E.g. for `Linux.is_file_owned g inspect "/etc"` the returned value
    was "filesystemyum" (i.e. "filesystem" + "yum").
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit da73dc02bd7768e0e0e0a2c16255fd15a1d3b452
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 31 17:20:08 2016 +0100

    v2v: xml: Rename internal xpath_new_context function.
    
    This change is not necessary, but is consistent with the naming scheme
    of the rest of the code in this file.

commit 31b4dac2ec050a5d47342d38868e22d655b3876c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 31 17:02:10 2016 +0100

    v2v: xml: Link to libxml2 website.
    
    No change, just finessing the documentation.

commit 6d590ccfde0232db31ccf52aa9920842b00b4110
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 29 17:21:25 2016 +0200

    lvm: do not pass --cache to vgscan
    
    This breaks lvm setups with no lvmetad, and it seems to not be needed
    even with lvmetad.
    
    Reverts parts of commit 2c4f154b91215e775c77920b291ac081e93542fd.

commit 6ebfb02b737874d9e6bb980a77bca4572b2edd98
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 29 11:36:37 2016 +0200

    osinfo: fix reading of shared osinfo DB
    
    $OSINFO_SYSTEM_DIR (or its /usr/share/osinfo fallback) represents the
    top-level directory of the osinfo data, while we need to read the "os"
    subdirectory of it.
    
    Fixes commit c2ae46a9ebcf9e6bd0037a5cc895095a255c1a24.

commit 3560d238805c41353a1b0e405b66dd69cb31cba8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 29 09:07:57 2016 +0100

    docs: In API overview, add note that you should free returned values.

commit cf65a605b18f1f2cda13aaae83c7248a6fafbe87
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 28 15:53:26 2016 +0200

    osinfo: do not assume every media is an installer
    
    The osinfo has an "installer" attribute in <media>, which defaults to
    true, and there are few entries which are marked as not.

commit 73a0d3b6ca06c6fa544e06f4497695868153d062
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 28 15:32:31 2016 +0200

    osinfo: simplify reading of attributes from <media>
    
    Directly query the attributes in the media node, instead of using an
    XPath expression to read it.
    
    Saves ~10ms when parsing the libosinfo DB on a Fedora 24 installation
    (other than making the code easier).

commit 71a3aac116ff4b2ad4bc2489b2d49e66d7690adf
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 28 15:30:49 2016 +0200

    utils: add new CLEANUP_XMLFREE cleanup, to call xmlFree()
    
    Small cleanup helper to dispose xmlChar* buffers.

commit fa5c2f49837bfa903f7514aa1ea93aa7294374f8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 28 10:56:58 2016 +0200

    build: improve Gtk check
    
    Check the presence of Gtk properly depending on the value of --with-gtk:
    if a specific version is chosen, then let PKG_CHECK_MODULES fail if that
    version if not found, otherwise fallback from gtk3 to gtk2 to no gtk.
    
    Also move few common AC_SUBST in a single place.

commit d186640c8c042447a27cfa2f7cc87acacbe374eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 27 19:02:49 2016 +0100

    docs: hacking: Add a section describing the build system.

commit fbdb50f312de7fda1df4fbff7baae8947a531b82
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 27 19:02:27 2016 +0100

    docs: hacking: Improve documentation on how OCaml programs are built.

commit 4973fdb61cd00e4154616c8576cd0a6cc029b07c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 27 15:09:18 2016 +0100

    Version 1.33.46.

commit e66e075c9b6037acddee163d677dc523cac934aa
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 27 14:41:31 2016 +0200

    builder: fix EOF check with flex >= 2.6.1
    
    It looks like flex 2.6.1 changed [1] the return code for EOF in
    yyinput.  Therefore, use the right value depending on the version of
    flex which generates the lexer.
    
    [1] https://github.com/westes/flex/commit/f863c9490e6912ffcaeb12965fb3a567a10745ff

commit 3a508fb811b5b067991f72a9185585534c19c37f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 26 17:34:43 2016 +0200

    appliance: run systemd-tmpfiles also for /run
    
    Setup the volatile /run in the appliance also with the tmpfiles
    configurations available.  In particular, setting up correctly the lvm
    bits allow lvmetad to run.

commit 4ee95eb080552ddcca3c5b3bd9f8a89a2cc8128f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 26 17:23:34 2016 +0200

    daemon: lvm: improve filter for LVs with activationskip flag set
    
    Commit 2e16e3e99324112845446c82b6a6e8b3e652e10d added lv_active=active
    as additional condition when listing LVs, to ignore those with the
    activationskip flag set.  OTOH, this check is too broad, and matches
    also other kind of LVs.
    
    Change the condition to lv_skip_activation!=1, so matching precisely
    what was meant, and only that.
    
    Related to: RHBZ#1306666

commit d2f9dafc988b069b7f9080bea3dd2f3dfee07a39
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 26 17:12:38 2016 +0200

    daemon: lvm-filter: start lvmetad better
    
    Currently lvmetad is started in init, and thus using the system
    (= appliance) configuration of lvm.  Later on, in the daemon, a local
    copy of the lvm configuration is setup, and set it for use using the
    LVM_SYSTEM_DIR environment variable: this means only the programmes
    executed by the daemon will use the local lvm configuration, and not
    lvmetad.
    
    Thus manually start lvmetad from the daemon, right after having setup
    the local lvm configuration, and still without failing if it cannot be
    executed.
    
    Additionally, since lvmetad now respects the right configuration, make
    sure to update its cache when rescanning the VGs by passing --cache to
    vgscan.

commit 560a34a83a16b485d65418924ca7d0b316ab2287
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 26 16:58:53 2016 +0200

    daemon: lvm-filter: set also global_filter
    
    When editing the lvm configuration to set the LVM filter, edit the
    'global_filter' key in addition to 'filter': the latter is not used when
    lvmetad is running, when only the former works.

commit 68945e06ad9b62df7b737040867328562eb6a2e8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 26 14:46:49 2016 +0200

    daemon: lvm: change the separator character to '\r'
    
    Commit b91b39e06ab7eb9b9b06c8b4dfef2ef9f381ab19 changed the separator to
    ':', although this creates parsing issues when there are fields with
    colons (for example lv_tags=imgbased:pool).
    
    Change once more the separator, but this time using a non-printable
    character such as '\r': while it will produce uglier debug logs, this
    should greatly reduce the possibilities of conflicts with texts of
    metadata.

commit caa5346bc597fca7f1bce68cc6530c201d51e514
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 26 10:43:10 2016 +0200

    osinfo: map "sled" as "sles"
    
    The "sles" distribution string in libguestfs represents both SLES and
    SLED, so map the osinfo descriptions of "sled" distributions as "sles".

commit 798504c6818502069522f7069410894da40db129
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 25 18:15:54 2016 +0200

    osinfo: parse also single-digit version numbers
    
    Switch to guestfs_int_version_from_x_y_or_x to parse version numbers --
    although, restrict the parsing to what could look like a valid version
    number, to discard quickly version strings like "unknown".
    
    This makes sure that Debian, Fedora, Mageia, and SLED ISOs have the
    right version number.

commit e43be6a00f60fbfb0c633ba27f14d46ae43ec3c6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 25 17:35:06 2016 +0200

    osinfo: revamp db reading (RHBZ#1359652)
    
    More recent versions of libosinfo switched the internal directory with
    the XML files of OSes to a different layout (still with the same XML
    format), causing libguestfs to not read them anymore.  Furthermore, the
    internal directory is going to disappear soon, replaced by a public
    osinfo database [1].
    
    Revamp the way libguestfs reads the data: first try the upcoming osinfo
    layout, falling back to the current libosinfo layout (which is the same
    as osinfo), and then to the old flat layout.
    
    [1] https://gitlab.com/libosinfo/libosinfo/blob/master/docs/database-layout.txt

commit 4f891d56b42a74276f43f569f80dc1dd500ee8fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 26 10:19:22 2016 +0100

    Use 'const' for stack integers where possible.
    
    May improve optimization possibilities in a few cases.

commit 9b3c0988724efea10befef58556419f54c43eb73
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 26 10:29:45 2016 +0200

    po: fix markups in Japanese translation
    
    Avoid extra spaces in L<>, they cause the POD to be invalid.

commit 25d18daf9442b275da3ca2c1b96caec3ebbdfc69
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 26 10:29:00 2016 +0200

    po: fix placeholder in Ukrainian translation
    
    __SOMETHING__ strings are placeholders which must be left as-is.

commit 6abeafaaaebf5863611a173be256a9cee88e4ecc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 25 19:45:03 2016 +0200

    Limit GCC 6 pragmas.
    
    -Wnull-dereference and -Wshift-overflow are new warnings in GCC 6, so do
    not try to disable them with pragmas on older GCC versions.
    
    Fixes commit a8e15ea924991f0182e89a3e0f80be78373d644c.

commit d6f2df3d2805718ac2702c2f6ac938e3a1f95283
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 23 23:28:04 2016 +0100

    Update gnulib to latest.
    
    As a side effect this enables the -Wnull-dereference &
    -Wshift-overflow warnings.

commit f883a1039e101754b6c5ec05aa4dcc815b945d55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 24 10:47:07 2016 +0100

    daemon: Ignore -Wnull-dereference & -Wshift-overflow warnings.
    
    One -Wnull-dereference warning is real: we deliberately cause a
    segfault in one of the tests.
    
    There is a -Wshift-overflow bug in a Gtk 2 header.
    
    The others are the result of shortcomings in GCC.
    
    In all cases we have to add GCC diagnostic overrides to ignore
    the warnings when compiling with ./configure --enable-werror.

commit 1e89081bca36f5f6417766d9dff3114263f464be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 23 23:26:16 2016 +0100

    Update translations from Zanata.

commit c505fecee4747cde3022613060a43716b1009f4a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 23 23:08:42 2016 +0100

    df: Fix uninitialized variable when compiled without libvirt.

commit a4bef932722b72555387291842b50521ebaa5330
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 22 17:34:50 2016 +0100

    Version 1.33.45.

commit f88b06971f81088229d6d0a413dad7e0370a5045
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 22 13:16:02 2016 +0200

    static const char *str -> static const char str[]
    
    Make all the static constant strings as char arrays, so they can be
    fully stored in read-only memory.

commit e77defc1e11d0b10670a9950caf05488283aa7f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 21 22:33:02 2016 +0100

    p2v: Remove dead code from virt-p2v kickstart.
    
    Including some code which looks like it is disabling SELinux, but is
    in fact commented out -- see previous commit.

commit 461aa872e279eaff82ba6818a0a21dcd68bf4eb5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 21 22:29:05 2016 +0100

    Revert "p2v: Disable SELinux in virt-p2v-make-disk."
    
    The commit claimed that SELinux was disabled in the
    virt-p2v-make-kickstart script, and so this was just making things
    consistent.  However this is not true.  SELinux *is* enabled in the
    kickstart version.  There is some code to disable it, but it is
    commented out (admittedly it's hard to tell because the code is buried
    in a multi-line sed expression).
    
    The commit message also claimed (this time correctly) that the
    '--selinux-relabel' step caused an extra reboot each time virt-p2v is
    run from the ISO.  However we have recently fixed this so it can
    usually do the relabelling during the build, not at boot time, so this
    is no longer a problem.
    
    This reverts commit 25ffcc7d436cd8f6bcf29d8bde5efd4b8823d6cc.

commit fd7be4f79002a2bceb5bd1be5c06e10addd2b72a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 21:47:23 2016 +0100

    Update release notes.

commit b89293af051ff2b606d63c5011586582d5c6545c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 21 11:25:18 2016 +0200

    customize: use --noconfirm when installing Arch Linux packages
    
    Otherwise the installation will fail right away, since pacman by default
    asks for confirmation of the operation.

commit 923fc6b4300480c6f37430d28d2e247519c4f206
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 21 11:20:51 2016 +0200

    customize: password: use SHA-512 on Void Linux and Arch Linux
    
    They are rolling distributions, so we can assume they have a glibc
    version greater than 2.7 (cca Oct 2007).

commit 93e2abb9f3452f2e32775ab2633f2699e6ceb11c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 12:31:23 2016 +0100

    podcheck: Check tool --help output.
    
    For OCaml tools this does essentially nothing useful because the
    --help output is automatically generated from the options, and so
    cannot be wrong.  However for C tools this is a useful check.
    
    It would be nice to generate C tools --help output, but there isn't
    enough information in the getopt data to do that.
    
    This commit also includes fixes to the --help output for a few tools.

commit f30f6d97153d0a2732fbf618e5b4566af6a1d94f
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Sun Jul 17 20:40:20 2016 +0300

    Added download_blocks API test
    
    The test shows how the function can be used to retrieve deleted data
    from a disk partition.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit bf7151760401cf9a16ecc057b73acb8226654680
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Sun Jul 17 20:40:19 2016 +0300

    New API: download_blocks
    
    This function allows to download file system data units (blocks) from
    the given partition.
    
    The API can be used to detect data hidden within filesystem bad blocks
    or slack space.
    
    Moreover for filesystems such as Ext3 and Ext4, this function is the
    only way to retrieve deleted files. An example is given in the function
    tests.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 9b5e4a14b02d02a769d743ac071f66fb7fff7e01
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 20 11:22:20 2016 +0200

    v2v: make virsh command quiet if v2v is quiet (RHBZ#1358142)
    
    Pass -q to virsh if virt-v2v was run with -q, to reduce its output in
    quiet mode.
    
    Unfortunately this does not currently work in virsh as it should, see
    RHBZ#1358179, so only after that bug is fixed this change can actually
    take effect.

commit 5c07184841926e479c888b3dc3167cc8c222d40a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 21:41:07 2016 +0100

    mllib, customize: Don't add -g option to ocamlmklib command line.
    
    ocamlmklib -g does not work in OCaml 4.01.0.  It does work (and is
    desirable) in OCaml 4.02.2.  However since we would like to support
    back to OCaml 3.11, we cannot use it.

commit 0f7e721fd2975b3bbd704b2016d55c25b0c5e039
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 19 18:42:23 2016 +0200

    daemon: mkfs: allow setting labels for f2fs filesystems
    
    Pass -L $LABEL to set the label of a f2fs filesystem when creating it.

commit 0eda471bf8821280db0dcf6377480b6b9e4d2199
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 19 18:41:32 2016 +0200

    appliance: add f2fs-tools to the appliance
    
    Helper tools for f2fs filesystems.

commit 79e6f1562bf3040079aacfabe4a8eb1cfc458ba8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 19:00:27 2016 +0100

    customize: Fix the test.
    
    In libguestfs 1.33.43 we managed to release a completely
    non-functional virt-customize binary (it ran without error but did
    nothing at all, whatever command line arguments you gave it).
    
    Improve the test so this cannot happen again.

commit b0de67ea277a260c167a222bfbd5c1815eb06ccd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 19 15:19:04 2016 +0200

    tests: check documented tool options also for inspector and p2v
    
    This includes the additional tests, and the few needed fixes.
    
    Followup of commit 08e27451a6658c58a7fb23b5c5c773bee34dbf72.

commit 0f3a9dc1752f3e6c7a9bda627c452653685eda11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 14:05:24 2016 +0100

    Version 1.33.44.

commit 23f3e08fe714505bb5a04daffd3aad995b6a681f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 16 20:52:49 2016 +0100

    tests: Add script to check documented tool options match actual options.
    
    podcheck.pl is run as part of the tests to perform various checks on
    the documentation and the tool.
    
    Currently we check only that the documented options matches the
    options that the tool implements and vice versa.  This commit would
    also allow us (in future) to check --help, --long-options,
    --short-options, --version output.
    
    This commit includes scripts to run the tests and various fixes to the
    manual pages to ensure that the tests pass.

commit 84cddaa96223f10a0c141fd1c65d557be3af28d0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 12:44:35 2016 +0100

    builder: Fix rhel-ppc64le guestroot to match reality.

commit 974d8e97b85bc6df7d881dd5eb21d0ee8f0a5b7c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 18 17:26:41 2016 +0100

    fish, format, fuse: Remove bogus short options.
    
    For guestfish, guestmount, remove '?' from short options.  Currently
    those tools don't process -?, so I believe these are erroneous:
    
      $ guestfish -\?
      Try `guestfish --help' for more information.
    
    For virt-format, the -c, -d and -q options are removed.  These options
    just give errors because they appear in the short options list but not
    in the case statement.

commit 02135a443316bf6f7ea05db2a5d8f21153bb7d75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 10:51:52 2016 +0100

    builder: Fix URL for RHEL 7.2 ppc64le images.

commit 033d6315b6c0da958f83910e9e3a6f2eae770ea6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 18 17:57:33 2016 +0100

    mllib: tests: Add tests to EXTRA_DIST.
    
    Fixes commit 41a1b8a5cacd86950c7791b74cadb934cce66e9b.

commit 165b418dbbe8ac15eb9986a82a89a45c920ac48f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 18 11:42:22 2016 +0200

    builder: improve the handling of list formats
    
    Store them directly in List_entries, an adding helper function to
    convert from string.
    
    Also use Getopt.Symbol for them, so there is no need to manually reject
    invalid formats.

commit e7c183cbc4baa898e69a32092176f5e662a8504f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 18 11:39:34 2016 +0200

    mllib: Getopt: add Getopt.Symbol
    
    Introduce a new type of option to allow a value out of a fixed choice,
    much like Arg.Symbol.

commit 33048b2102d974500f4abfb5e7891829cecc5242
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 13:09:51 2016 +0100

    mllib: tests: Add tests of the new Getopt module.

commit 933c886bba6c0079b9e8e32cf64cb5d0c10230b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 13:10:19 2016 +0100

    mllib: Use L"..." and S '...' for long and short options.
    
    There is also an M"..." variant which acts the same way as
    L but handles the annoying virt-v2v two letter options.

commit ee9abfd8c80c5d6e65320cbdf082aa2be15e9a10
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 18 11:44:23 2016 +0100

    mllib: getopt: Further fix int parsing.
    
    Don't allow suffixes on integers, and fix the bounds to match the
    definitions of Min_long and Max_long in <caml/mlvalues.h>.
    
    Fixes commit 66b54bfefe42f2996d1b42c3646511bbd4349317.

commit 87035ee4ad62cf72852ad845fc6c1731e8556053
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 18 16:49:42 2016 +0100

    rescue: Implement virt-rescue -w option.
    
    Documented, but never implemented.

commit 226e4e88ef50322f77b5c2f0d243f28c7d634eef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 18 15:58:09 2016 +0100

    diff: Implement virt-diff --long-options.
    
    The code was only partially implemented so the option did
    not function.

commit a1b70e7e099f1c5e530165f6352fc4a19b6c02f5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 18 11:25:17 2016 +0200

    mllib: Getopt: point to man page as additional help
    
    On error, point also to the man page of the current tool in addition to
    '$TOOL --help'.

commit aa0e0f707ce953880a2b86093335b4f1be1f74f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 16 18:28:17 2016 +0100

    build: Factor out definition of BEST and OCAMLLINKFLAGS.
    
    No change, just refactoring.

commit 388055703c319c088f536ccf170714c4aa996816
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 16:50:07 2016 +0100

    build: Fix dependencies on mllib and customize.
    
    Binaries should be rebuilt if mllib.cma/mllib.cmxa or
    customize.cma/customize.cmxa change.
    
    Fixes commit 1e2877c6f4d1d254026d38b1cac4895d8dba7d5d.

commit 0d326192b84b3e04f8b70989cdbc72b801236da5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 18 13:53:24 2016 +0100

    customize: Build virt-customize properly.
    
    Fixes commit 6a0fe553b9f5a0474f826a1978bf824f2b483887.

commit b19f3f73f961d8d236c570834b634d2ad4ce9e09
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 18 10:01:45 2016 +0200

    mllib: Getopt: fix integer parsing
    
    Since we are using gnulib already, make use of xstrtol to parse the
    integer arguments to avoid extra suffixes, etc.
    
    Fixes commit 0f7bf8f714898c606e5d5015fff5b7803dcd1aee.

commit e224685ddf7f7e8deaa3f593a40f645181e63bf2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 15:40:23 2016 +0100

    Version 1.33.43.

commit 4c90c0a7145752c70de54edae8ad340d002fca47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 15:39:19 2016 +0100

    builder: Add new centos-aarch64.sh script to EXTRA_DIST.
    
    Fixes commit c168638ae7212cb27eb9434ce55957a58ae5336c.

commit 7b69d583f43d895900007e2a89eada8318af859c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 12:19:14 2016 +0100

    customize: Build a customize.cma/customize.cmxa library.
    
    Instead of linking with individual objects, which is very tedious,
    build a proper library and link virt-builder, virt-customize and
    virt-sysprep to it.
    
    This makes the binaries a tiny bit smaller because .cmxa/.a files
    allow unused code to be removed by the linker, whereas explicitly
    linking .cmx/.o files does not.

commit 91674a30a705c0223cdd6c6630b1db5ec8cc8a8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 12:19:14 2016 +0100

    mllib: Build a mllib.cma/mllib.cmxa library.
    
    Instead of linking with individual objects, which is very tedious,
    build a proper library and link the other tools with it.
    
    This doesn't make the resulting binaries any larger.

commit abd4d07e7f156bfcb4d0845c318015c611ce671f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 22:50:10 2016 +0100

    v2v: linux: Use new SELinux_relabel module to relabel Linux guests.

commit 3d45877a3c646d7f6e10fca648c67572c232f3ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 21:21:07 2016 +0100

    lib: Deprecate old SELinux APIs, rewrite SELinux documentation (RHBZ#1152825).
    
    Also turns the --selinux option of guestfish, guestmount and
    virt-rescue into a no-op -- it didn't work before so this is
    effectively no change.

commit f580fb74af1457909e4546fd66b9380596384133
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 20:16:23 2016 +0100

    builder: Use virt-sysprep --selinux-relabel when preparing templates.
    
    Don't need to be clever now.

commit 3c0626329cd664367ecc30f27a31de25ae5e99e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 18:34:21 2016 +0100

    customize: Add module for doing SELinux relabel of filesystem (RHBZ#554829, RHBZ#983969, RHBZ#1089100).
    
    This implements the --selinux-relabel option for virt-customize,
    virt-builder and virt-sysprep.  There is no need to autorelabel
    functionality now.
    
    Thanks: Stephen Smalley

commit f88972aae3785ec16aa8d5c1108967a7f37a290d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 09:03:19 2016 +0100

    tests: Add a test of the setfiles API.

commit 9c62b8afedc8b0f2b6fe7262501a8ad72571093d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 18:33:55 2016 +0100

    New API: selinux_relabel - SELinux relabel parts of the filesystem.

commit 2576699005f47b7522bc7e1e46b403d6e3df8be5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 14 14:09:18 2016 +0200

    appliance: touch /etc/fstab when enabling the network (RHBZ#1224795)
    
    Sadly, the dhclient-script shipped as part of isc-dhcp-client in Ubuntu
    unconditionally reads from /etc/fstab without checking for its
    existence.  Since no package holds /etc/fstab, this file will not exist
    in the appliance, cause dhclient to fail (actually keep looping calling
    the failing dhclient-script) when the network is requested.
    
    As a workaround, touch /etc/fstab just before enabling the network: if
    that file exists nothing changes, while an empty file will be available
    in the other case, making at least dhclient-script in Ubuntu working.

commit 7b6791221db03f5dcd6ad74d72692f8ea60b7814
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 19:16:07 2016 +0100

    v2v: Move augeas_debug_errors (renamed debug_augeas_errors) to common code.
    
    Since the function uses the StringMap module, I also had to
    move this to mllib.
    
    The function is renamed and the 'if verbose ()' part is moved into the
    function, but apart from that, it's all just code motion.

commit 465de81980b4293ed10cad528c1415630000e224
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 14 11:02:36 2016 +0200

    po: fix markups in Ukrainian translation
    
    - remove extra \n at end of msgstr (not present in its msgstr)
    - fix printf format specifier

commit ba6d9e7662a4f33a78641e968c8ecfb1aee7fb64
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 13 15:13:18 2016 +0200

    mllib: Getopt: support hidden options
    
    Add a dummy description value to mark an option as "hidden", so it will
    not be shown in the help text.
    
    Mark few options as hidden:
    - common: --short-options, --long-options, --debug-gc
    - virt-sysprep: --dump-pod, --dump-pod-options
    
    Since --debug-gc is now really considered internal, it is no more
    documented.

commit d8a6ec0b9b4d0d9da7e3ddd899a41c410fd51e56
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 13 14:56:11 2016 +0200

    OCaml tools: add and use a Getopt module
    
    Add a new Getopt module to mllib, to parse command line arguments with
    handlers close to the ones used with Arg, but using getopt(3) (actually
    getopt_long_only) to do the real parsing.  This allow us to provide
    options for OCaml tools with a syntax similar to the C tools, and use
    the additional features getopt offers and Arg does not.
    Getopt now handles every part of the command line handling, including
    the output of short & long options.
    
    Do a single-step conversion of Common_utils and all the OCaml tools to
    the syntax of Getopt.
    
    Move a couple of utility functions from Common_utils to Getopt, since
    they fit better there (and Common_utils cannot be used in Getopt, as
    the former already uses the latter).
    
    As side-change due to the conversion, extra arguments for sysprep
    operation can have more keys for the same argument.

commit 5f229726210c259b490cf2e49d12e51f427d556d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 13 17:49:24 2016 +0200

    i18n: fix markups in Japanese translation
    
    Avoid extra spaces in L<>, they cause the POD to be invalid.

commit 0c8e2b3cb0d839659846b32d604972e8d8839ab6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 11:49:11 2016 +0100

    builder: Add CentOS aarch64 image.

commit fff2505996c041afe047423656c16f70ecae3d32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 21:43:31 2016 +0100

    Upload and download files to Zanata.

commit 50213da5d6fbacff23b3dd8eb23ecac627a96b35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 14:22:54 2016 +0100

    p2v: Set LD_LIBRARY_PATH for "remote" virt-v2v process.
    
    In previous commit c5f12e47e4e0dc7846897cad3184ac0892f51ef8 we changed
    the PATH environment variable to run the locally built virt-v2v, not
    the system-installed virt-v2v.
    
    However this meant that we were running the locally built virt-v2v
    against the system-installed libguestfs.so.0.  We also need to set
    LD_LIBRARY_PATH.
    
    Fixes commit c5f12e47e4e0dc7846897cad3184ac0892f51ef8.

commit 175bfb4ffa7ab741b492c7c830220a0a0cfdd292
Author: Tomáš Golembiovský <tgolembi@redhat.com>
Date:   Tue Jul 12 05:53:49 2016 +0200

    v2v: Add support for Win2016 virtio drivers
    
    Support virtio drivers for Windows Server 2016 once they are available.
    
    Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com>

commit 2ebafa9488714638284ed9fb5357cb0d7ebccbb2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 11 19:11:01 2016 +0100

    utils: Clarify why some uses of gnulib are OK and others not OK.

commit 4875db6f651b242e35b0df03d4c8c0b47e3dc0fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 11 19:08:41 2016 +0100

    Revert "utils: Allow use of gnulib in this file."
    
    This reverts commit 975eafe4baf19442ab972d92d5b2a4f0c20f0295.

commit b81c657086c3ecfbbe3caa34192d196922f4c276
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 11 18:28:23 2016 +0100

    python: Don't generate calls with non-existent C optargs structures.
    
    In the case where we are building a Python dist (which can be
    distributed separately), we generated calls to non-existent optargs
    structures if an API was once no-optargs but had optargs added.  A
    typical error was this (library: 1.32.5, Python sdist: 1.33.42):
    
        guestfs-py.c: In function ‘guestfs_int_py_glob_expand’:
        guestfs-py.c:9648:40: error: storage size of ‘optargs_s’ isn’t known
           struct guestfs_glob_expand_opts_argv optargs_s;
    
    This is a simple solution to this, although it has the possible
    disadvantage that such functions will not be bound at all.

commit 780d4422a0faa65d467521ce3b2da7635e35ca48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 11 15:47:51 2016 +0100

    python: Add documentation to guestfs-python about using pip & virtualenvs.

commit e32a7800d0a1f6a4840c83cef6843bd29738ad29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 11 15:46:23 2016 +0100

    python: Fix python sdist.
    
    Since commit 83e92b4a972a4dafdcc42388f4a5394e804dd7bf, utils.c
    includes "ignore-value.h".  We copy utils.c into the python sdist
    tarball, but it didn't not compile because of the missing header file.
    Therefore we need to copy the header in too.
    
    Fixes commit 83e92b4a972a4dafdcc42388f4a5394e804dd7bf.

commit 86bf5beb177e54b32ff569cf0a7be0891518b1c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 11 13:22:22 2016 +0100

    v2v: Document ports, firewall and proxy settings used by vCenter.

commit 50a5fcaed7c9aa33a31123d3a388f272e92658e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 9 09:36:58 2016 +0100

    Version 1.33.42.

commit c2f4519dc468db761d37726cba0efda7cee94f8f
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Fri Jul 8 14:08:11 2016 +0300

    sysprep: fix btrfs subvolume processing in fs-uuids
    
    guestfs_set_uuid wants device as argument.
    Moreover, btrfstune -U is unable to set uuid for subvolumes,
    only unmounted partitions are supported.
    
    Here we skip btrfs subvolumes.

commit 2989a7edafc54f08f83c24b6171bb9d762324649
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Fri Jul 8 14:08:10 2016 +0300

    lvm: modify guestfs_is_lv to take mountable
    
    Calling guestfs_is_lv on btrfs subvolume throws an error.
    Here we workaround it by taking Mountable instead of Device
    and returning 'false' for non-device mountables.

commit b3bea02e27b00d45481eb98a0384563928eef380
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Fri Jul 8 14:08:09 2016 +0300

    mllib: add checking for btrfs subvolume
    
    This is needed to skip btrfs subvolumes from output
    of list_filesystems where device is needed.

commit d9a1974718503b367941fa0649290f98a5cb60b9
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Thu Jul 7 20:48:24 2016 +0300

    filesystem_walk: more information into tsk_dirent
    
    Access, modification, last status change and creation time in
    Unix format as for statns.
    
    Number of links pointing to a given entry.
    
    If the entry is a symbolic link, report the its target path.
    
    A new flag (DIRENT_COMPRESSED 0x04) indicating whether the file is
    compressed using native filesystem compression support.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 99d5cda2a775dfc5dc2733e676e119b817f33d5f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 8 09:17:21 2016 +0100

    mllib: Rename unshift -> push_front, push -> push_back etc.
    
    The C++ function names are more regular.
    
    Updates commit 1c57c71d46dae2c61c393c32ec85a7022c95f818.

commit f7fa1583d4f7824152b10b16df93f319cbcd692f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 20:36:12 2016 +0100

    builder: Add Fedora 24 (aarch64) image.

commit 5c4a7fbf9cc6d805ab76a5ee2f7950c1d4f093ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 18:22:09 2016 +0100

    builder: downloader: More tweaks to curl code.
    
    No functional change.

commit 116991071ad6c5874f0dcddf9aa4b7a0e3be360b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 16:13:48 2016 +0100

    v2v: Use imperative list functions to simplify DOM building code.

commit 9d0fb690974b3045bde1c47b33086b845b36009d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 16:12:18 2016 +0100

    v2v: Don't open DOM module in output_rhev and output_vdsm.
    
    I think this is left over from before we moved the OVF code
    out to its own module.

commit 6cb96136257b9ed11707b3822cd9f82914db3d25
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 15:02:05 2016 +0100

    Replace 'xs := x :: !xs' with 'unshift x xs'.
    
    In one case, I used prepend instead.

commit edf67f8a50a06f274f99edb4784ba064b046770c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 14:58:05 2016 +0100

    builder, v2v: Use imperative list functions to simplify curl arg code.
    
    No functional change in this commit.

commit c28d7b430cef7b55f10a2d14b0dc20e82cf94dfe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 14:52:18 2016 +0100

    mllib: Add some imperative list manipulation functions.
    
    This adds imperative list manipulation functions inspired by Perl.
    The functions are passed list refs which get updated in place.
    
    This allows us to replace some awkward pure functional code like:
    
      let xs = ys in
      let xs = if foo then xs @ zs else xs in
    
    with:
    
      let xs = ref ys in
      if foo then append xs zs;

commit e26489bc6c42cfb0070156270df27fd6c1a01cb8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 13:43:11 2016 +0100

    builder: Use the new Curl module for passing parameters to curl.
    
    These are now passed using a curl configuration file, which is a
    little bit safer than using command lines.  virt-builder doesn't need
    to pass usernames and passwords to curl, but if it ever does in future
    this will be a lot safer.

commit 9cc00cfd49a79f645d8f94ed0b4725a5709e1913
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 13:10:00 2016 +0100

    curl: Change the API to use an abstract data type.
    
    Change the Curl module to use an ADT to store the name of the curl
    binary and the arguments.
    
    The callers in virt-v2v are changed accordingly.
    
    This also adds a (currently unused) ?proxy argument to allow callers
    to override the proxy.  It also adds some safety arguments implicitly.

commit c339eaf00c30bba61a3c959398ea9d57ba9a201b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 12:23:03 2016 +0100

    v2v: Move Curl wrapper to mllib.
    
    Just code motion, no change.

commit 2c9491f33a2bb6f8eccfcfb71ed3fb86e59358c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 7 10:07:15 2016 +0100

    v2v: changeuid: Improve error messages.

commit 922bc07a24e92c16da384e376fa1cbb4b5e6c5bd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 7 16:20:13 2016 +0200

    daemon: fix cleanup of stringsbuf usages
    
    Declare most of the stringsbuf as CLEANUP_FREE_STRINGSBUF, so they are
    freed completely on stack unwind: use take_stringsbuf() in return
    places to take away from the stringsbuf its content, and remove all the
    manual calls to free_stringslen (no more needed now).
    This requires to not use free_stringslen anymore on failure in the
    helper functions of stringsbuf, which now leave the content as-is (might
    be still useful even on error).
    
    This allows us to simplify the memory management of stringsbuf's, which
    are not properly fully freed, fixing memory leaks in some error paths
    (which were not calling free_stringslen).

commit ea59d3697c7b350b5206c37c95503bb93b7fe235
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 7 15:10:37 2016 +0200

    daemon: free the string on stringsbuf add failure
    
    If add_string_nodup fails free the passed string instead of leaking it,
    as that string would have been owned by the stringbuf.
    
    Adapt few places to this behaviour.

commit 6adcf7ea83330b741ceb31360ce1c8694f577359
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 6 14:57:06 2016 +0100

    Version 1.33.41.

commit d497e07568d805dc2c5b95ef89773a44b7cb5840
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 6 10:46:21 2016 +0100

    v2v: Fix documentation, [--in-place] -> I<--in-place>.
    
    Fixes commit 9221ef6f7959ae3b979fd05007363810bc66062b.

commit ec95e160aa04c29d2a5ed7edc1a0ab603da268a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 5 13:52:15 2016 +0100

    inspection: Find icon in Windows 7 64 bit guests (RHBZ#1352761).
    
    We have to download the old 32 bit explorer.exe in order to find the
    icons as the 64 bit version doesn't contain any icons (where are they?).
    Thus prefer the 32 bit (WoW64 subsystem) directory if found.
    
    Fixes commit 7f16c346bbeba2f2fe3c31ccb85158178a284d84.
    
    Thanks: Xiaoyun Hu

commit cd7e0e0ec0596b892fd8b357cfcd20fd8ac905b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 5 12:40:22 2016 +0100

    inspection: Find Ubuntu logo from an alternate location (RHBZ#1352761).
    
    The current location doesn't exist unless you've installed GNOME,
    which is not so common on Ubuntu.  Unfortunately I couldn't find any
    other location containing a clean, high quality logo.
    
    This adds another low quality icon source, and also prevents any icon
    being returned if the highquality flag was set (note this prevents
    virt-manager from displaying an icon, but there's nothing we can do
    about that, and it's no worse than the current situation).
    
    Updates commit 1d0683964f996b24b8fcf5bce7611a98443344f3.
    
    Thanks: Xiaoyun Hu

commit bdeb42986031ee7f603634d37d566837789bd5b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 2 10:16:55 2016 +0100

    p2v: Remove p2v.debug option from test command lines.
    
    Fixes commit 0c04919f50685c583842b48ca035626753e959e5.

commit a50dbaf8d3b6e4c3481f316b192cde6ad6f8bc50
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 2 10:01:09 2016 +0100

    p2v: Remove the Enable debugging option, -v, p2v.debug.
    
    This is now enabled by default and cannot be changed/disabled by the
    user.  The output is saved into /tmp/.../virt-v2v-conversion-log.txt
    on the conversion server.

commit f03bc4ec1b38a7adc2d6b507cda905aa48eb0c31
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 1 17:46:23 2016 +0200

    v2v: fix priority of match in configure_kernel_modules
    
    This makes sure that in the internal configure_kernel_modules function,
    for virtio or SCSI block types:
    a) the warnings about leftover Xen modules are printed
    b) the changes in Augeas are saved
    
    Fixes commit ee0219148352695ddf1102a426dcfe4e3be55fba.

commit c30b2bd3fd573bb4b7792bdf46171e142c30ea3b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 1 17:38:34 2016 +0200

    v2v: fix and implify the internal Convert_linux:discover_modpath
    
    First check for the existence of the directory /etc/modprobe.d, in case
    using a file under it; this also skips all the other checks, since they
    are not needed at all.  Also /etc/modprobe.d exists on recent Linux
    versions, so let's give priority to the more common methods.
    When /etc/modprobe.d does not exist, check for the file to edit using a
    single list of possible files, now in order of priority, where the first
    find is used without checking further for the rest.
    
    Also, make sure all the returned paths are absolute: they are used in
    Augeas paths later on, so relative paths will not do anything useful.

commit 874ac8fb1fed98c9c81f64d6c04c1719287933d0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 1 15:48:04 2016 +0200

    docs: fix link to csvtool
    
    Refer to the new home of the OCaml csv module.
    
    Thanks to: Yehuda Zimmerman.

commit 3684bcd64622144a3b8afc0cca2ac7b477c0c9af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 1 12:22:05 2016 +0100

    Version 1.33.40.

commit 7a381ea15ac16154865efab639d10893c98a2933
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 30 14:13:24 2016 +0100

    p2v: Send ^C to remote end to cancel the conversion.
    
    We are now able to cancel the conversion instantly by sending ^C to
    the remote virt-v2v process.
    
    Also, this reverts:
    "p2v: Poll to make Cancel Conversion button more responsive."
    (commit 6da4941db7f8a85997d6281b9b4c5165768e6489)

commit 93269776fc1d319e874a5681a121b9ad6f925295
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 30 13:52:43 2016 +0100

    p2v: ssh: Set cooked mode on the ssh session which runs virt-v2v.

commit e45f49ddb176135b6d4d0adcda13ce2dd27c8884
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 30 13:42:53 2016 +0100

    p2v: Use 'scp' to copy the files to remote debugging directory.
    
    Previously we copied / creates files in the remote dir by running
    complex shell commands like:
    
      cat > file <<'EOF'
        ## the file was copied in here
      EOF
    
    This was a little hairy, but in particular it doesn't allow us to set
    the ssh session to cooked mode (so we can send ^C to cancel a
    conversion).
    
    A cleaner way to do it is to use 'scp' to copy the files over.

commit a5367687817bc8fc74734573cc265b22f0b5fd79
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 30 13:51:56 2016 +0100

    p2v: Set an SSH error message if mexp_spawnv fails.

commit c4b820f510993fbf33de4cf2457117baff80abe2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 29 21:21:40 2016 +0100

    p2v: miniexpect: Add mexp_send_interrupt, mexp_spawnvf, mexp_spawnlf and various flags.

commit 7fcd5942f99342a3f64c6e316a2320a758acaedd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 29 15:22:29 2016 +0100

    miniexpect: Set signals to defaults and close other file descriptors after forking.

commit ce68e779f9a7b59c00f87b4d66c5542729b4c5d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 29 12:51:39 2016 +0100

    p2v: Colourize kernel-conversion status messages from virt-p2v.
    
    The messages that come "through" from virt-v2v are already colourized.
    However the other messages are not.  This colourizes the ones
    generated during kernel-mode conversions.
    
    Note that because of the way journal/syslog works we have to write the
    ansi_restore before the end of line, thus code like this:
    
     ansi_magenta (stdout);
     printf ("%s: %s", guestfs_int_program_name, data);
     ansi_restore (stdout);
     putchar ('\n');
    
    This also adds a "Conversion finished successfully" message (in green).
    
    Thanks: Ming Xie

commit 2fa701b1eafbf87a4260afa3100fd50d5444ea6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 29 12:49:46 2016 +0100

    utils: Move ansi_* functions to header guestfs-internal-frontend.h.
    
    This is just code motion.

commit 5f6312760443af47a36fe10d6528e7145f48b611
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 29 10:09:27 2016 +0100

    mllib: Add powerpc64 and powerpc64le to normalize_arch (RHBZ#1264835).
    
    Add powerpc64 (ppc64) and powerpc64le (ppc64le) cases to the
    normalize_arch function.  Also remove a few duplicate cases which are
    already caught in the catch-all case at the end of the match.

commit 1f4b042694a05f218a83519582a5de86d2b80098
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Jun 28 22:49:16 2016 +0300

    Reserve entries to tsk_dirent struct
    
    Already implemented entries.
    
    tsk_inode
    tsk_type
    tsk_size
    tsk_name
    tsk_flags
    
    Easy ones to add.
    
    tsk_atime_sec
    tsk_atime_nsec
    tsk_mtime_sec
    tsk_mtime_nsec
    tsk_ctime_sec
    tsk_ctime_nsec
    tsk_blksize
    tsk_blocks
    
    Further ideas.
    
    tsk_nlink
    tsk_link_name
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 595fcf7ecf35d91144634ad6b91ac84b336d11da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 28 16:43:40 2016 +0100

    p2v: Add more utilities to the virt-p2v ISO.
    
    - iscsi-initiator-utils (open-iscsi), as a partial fix for RHBZ#1337052
    
    - vi (Vim), to use as an editor inside the XTerm window.

commit 6d77eacb6d145f75c802fffc0d67477b499e8216
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 28 13:38:34 2016 +0100

    p2v: Remove trailing \n from fixed disks device box.
    
    Fixes commit 6aba5a49448d8ed9776164005080620d37bb97e0.

commit 259dd359cd92358876b8834bced91fca90a61bcd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 28 12:29:29 2016 +0100

    p2v: Ensure messages are flushed through to the journal immediately (RHBZ#1229386).
    
    In kernel conversion mode, we must ensure messages are flushed to the
    journal as soon as they are received from virt-v2v, otherwise (now
    that debugging is not the default) we won't see any messages at all
    until the last moment.
    
    Thanks: Ming Xie

commit ca88f5f9637756ebe486b8fe712ceff16617a881
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 27 15:31:37 2016 +0100

    p2v: Add 'less' package to the ISO.
    
    When running the xterm it is very useful to be able to do:
    
      dmesg | less

commit 30b3e4af4cae38e98f2851fd90880e870488bb43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 27 11:40:18 2016 +0100

    p2v: Add --install option to virt-p2v-make-disk, virt-p2v-make-kickstart.
    
    This allows you to install extra packages in the disk/ISO.  The
    implementation of this option in virt-p2v-make-disk was particularly
    simple and followed naturally from the previous commit.

commit 557bde359433553d9e336fcb2da96b5157bd9301
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 27 11:18:43 2016 +0100

    p2v: virt-p2v-make-disk passes through --no-warn-if-partition to virt-builder.
    
    See: https://bugzilla.redhat.com/show_bug.cgi?id=1342337#c4
    
    Thanks: Junqin Zhou

commit 4150aeaa89b6535229e285b24438944373c56c2d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jun 27 11:49:13 2016 +0200

    automake2junit.ml: sanitize logs, make it more conformant
    
    - sanitize the logs, removing terminal color codes and carriage returns
    - add an empty "properties" node
    - put the log for skipped tests as "message" attribute, hoping it is
      read from there
    - do not blacklist the log of test-virt-rescue.pl, which should not
      cause issues now

commit 1508306866381d91cf1216e32b6a72c4d21498aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 27 10:16:51 2016 +0100

    p2v: Fix timeout error when connecting to unresponsive ssh server (RHBZ#1350363).
    
    If an ssh server is completely unresponsive (ie. it doesn't even send
    back ICMP errors), then eventually ssh times out after ConnectTimeout
    seconds [ConnectTimeout is an ssh option].
    
    Unfortunately the miniexpect timeout (default 60 seconds) was less
    than ConnectTimeout so we never saw the ssh error.  Instead we would
    see the internal error:
    
      remote server closed the connection unexpectedly,
      waiting for: password prompt
    
    This commit sets the ssh ConnectTimeout to an explicit value, and sets
    the miniexpect timeout to be 20 seconds larger than ConnectTimeout, so
    that in most cases we will see the ssh error message before miniexpect
    times out.
    
    Thanks: Ming Xie for finding and diagnosing the problem

commit 00eddd6d4e0862f028cb127a7aa037541fb89ce8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 24 22:28:40 2016 +0100

    p2v: Make the conversion dialog slightly higher.
    
    Otherwise the information pane is smaller than its content.

commit 0811e2c29b98690a926f70363377dacd5a114ca8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 24 15:28:46 2016 +0100

    p2v: Display serial number of fixed disks (RHBZ#855058).
    
    Use "lsblk -o serial" to get the serial number of each fixed disk, and
    if it is available display that in the GUI.

commit e862bb494300e41186dc7135a78040209811539f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 24 14:53:52 2016 +0100

    p2v: Combine size & model columns into the device column.
    
    In the GUI disks block, instead of using separate "Size" and "Model"
    columns, combine that information into a markup column under "Device".
    
    To make the GUI look consistent I also had to change the removables
    "Device" column to be a markup column and embolden the device name
    there too.

commit bb33f16ffbf43a53e0cc45f597743a4d4e7a106d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 24 14:45:05 2016 +0100

    p2v: Refactor into get_blockdev_size and get_blockdev_model functions.
    
    This is just refactoring, but it reveals and fixes a bug too.  The
    size_gb field was left as NULL when the --test-disk option was used.
    Apparently passing NULL to gtk_list_store_set is fine, but just in
    case I replaced it with "".

commit d8ecff7de9d0fe8037adc6c5cb52d9e9f29f6ced
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 24 10:51:22 2016 +0100

    Revert "p2v: add -x option to nm-online"
    
    This reverts commit f51c0bc83717181304277dc335f8aaea1eaf5db1.

commit 4afa368fc7792e26de95052273dd5e40252d18dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 23:10:07 2016 +0100

    Version 1.33.39.

commit 6edfdf77eb7af37b273ff20f8652c9a4f4d026e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 14:51:58 2016 +0100

    v2v: windows: Fix priority of match statement which stopped Xen/Parallels code from being uninstalled.
    
    Fixes commit c466d4cb928fcfea37908cc66c90ac8430d6d4c6.

commit 7a6d6dfd4e35512008b5476caf33a980b5deb110
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 14:44:14 2016 +0100

    virt tools: Use Sys.file_exists instead of clumsy open_in/close_in hack.
    
    No functional change.
    
    Fixes commit c466d4cb928fcfea37908cc66c90ac8430d6d4c6.

commit 18e98eb6985fcaceb48f6fc79f4b7fa69075cba4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 14:25:23 2016 +0100

    p2v: ssh: Improve consistency of error messages.

commit 362430a34ad4bf46c522c78c289d6671e4f445cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 13:52:46 2016 +0100

    p2v: Make the sudo error message actionable.
    
    Updates commit 5b6a8e086264c85fb048c0eadff6c34351663133.

commit baf7d65079cf9517e317efd35209813b1f96bc74
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 13:27:09 2016 +0100

    v2v: Refuse to convert if < 1GB of free space in temporary directory (RHBZ#1316479).
    
    The error you would see is:
    
      virt-v2v: error: insufficient free space in the conversion server temporary
      directory /var/tmp (853.8M).
    
      Either free up space in that directory, or set the LIBGUESTFS_CACHEDIR
      environment variable to point to another directory with more than 1GB of
      free space.
    
      See also the virt-v2v(1) manual, section "Minimum free space check in the
      host".
    
    Also adds some documentation.
    
    Thanks: Ming Xie and Xiaodai Wang

commit 5364bf1cae4e256ed75bc703e5e573df2d7fde06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 13:12:44 2016 +0100

    v2v: Rename check_free_space -> check_guest_free_space.

commit 5ca21a75ad5c44388f6eda441d5ddb052160eb32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 13:11:45 2016 +0100

    v2v: Move calculation of overlay directory to common code.
    
    There is a tiny functional change in this patch, since overlay_dir is
    now always evaluated once (eg. even in --inplace mode), whereas
    previously it was evaluated twice but only in copying mode.

commit 24d19538b26d339c899def64c704f525af6fb72d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 13:10:35 2016 +0100

    sparsify: Move statvfs wrapper function to mllib.
    
    We wish to use this function in virt-v2v too, so move it to the common
    directory.
    
    No functional change.

commit 13d2f939d88c42932f0d3c21e6bbc0f5d8c5ab24
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 11:27:01 2016 +0100

    p2v: Set LANG=C in the remote shell so we can match on error messages.
    
    Since commit 5b6a8e086264c85fb048c0eadff6c34351663133 we are now
    matching on error messages, and therefore we must set LANG=C.

commit 9dc2bf4ed07d92bcb2c4b75492b5f55be2148da6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 11:19:37 2016 +0100

    p2v: Force bash as the remote shell.
    
    As described in the comment, this solves a number of problems with
    non-standard remote configurations.
    
    I tested this with:
    
     - tcsh
     - zsh
     - ksh
    
    and all behaved correctly.

commit 3518d100307c432e84a9bc40e70a62d642b13779
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jun 23 11:07:18 2016 +0200

    p2v: improve error message for sudo with password
    
    Print a better error message when the non-root user on the conversion
    server requires a password to use sudo, and p2v is told to use sudo.
    
    See also RHZ#1340809.

commit 96d134b29b8119b06dd1cc5e9fca9c8fd5223725
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 23 08:30:48 2016 +0100

    generator: filesystem_walk APIs added in 1.33.39 (not .37).
    
    Updates commit 3de8abac4a3c51fb6ccf3cbd93533a2ff8b6ab1e and
    commit 19e7a52f8f1a4a83f25978053611385b6be8bffc.

commit f3cd7b73f07ec33e33f2c052122cc07ee6ef632f
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Wed Jun 15 20:28:52 2016 +0300

    New API: filesystem_walk
    
    Library's counterpart of the daemon's internal_filesystem_walk command.
    
    It writes the daemon's command output on a temporary file and parses it,
    deserialising the XDR formatted tsk_dirent structs.
    
    It returns to the caller the list of tsk_dirent structs generated by the
    internal_filesystem_walk command.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 9f64edccc56005be932ce9a8a53479dc0bf3f90d
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Wed Jun 15 20:28:53 2016 +0300

    lib: Added filesystem_walk command tests
    
    The tests check whether the filesystem_walk command is able to retrieve
    information regarding both existing and deleted files.
    
    A NTFS image is used as Ext3+ filesystems deletion is more aggressive
    in terms of metadata removal.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 19d0c0bea5cc08049ac6264e417c8f90af26d795
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Wed Jun 15 20:28:51 2016 +0300

    New API: internal_filesystem_walk
    
     - generator: Added tsk_dirent struct
    
    The tsk_dirent struct contains the information gathered via TSK APIs.
    
    The struct contains the following fields:
     * tsk_inode: inode of a file
     * tsk_type: type of file such as for dirwalk command
     * tsk_size: file size in bytes
     * tsk_name: path relative to its disk partition
     * tsk_flags: bitfield containing extra information
     * tsk_spare[1-5]: extra space for future usage
    
     - configure: Added libtsk compile-time check
    
    Ensure libtsk is available at compile time.
    If not, daemon routines depending on it won't be available.
    
     - API: internal_filesystem_walk
    
    The internal_filesystem_walk command walks through the FS structures
    of a disk partition and returns all the files or directories
    which could be found.
    
    The command is able to retrieve information regarding deleted
    or unaccessible files where other commands such as stat or find
    would fail.
    
    The gathered list of tsk_dirent structs is serialised into XDR format
    and written to a file by the appliance.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit f76986e47164888ff2e49fc749e32c3cf9c3b48c
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Wed Mar 30 22:18:10 2016 +0300

    Code cleanup in daemon/sleuthkit.c
    
    Adhere to coding standards.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit c7ca53fa88270ead05ebbd2322e664c418bfc582
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Wed Mar 30 22:18:09 2016 +0300

    Improve download_inode documentation string.
    
    The download_inode does not require the disk to be mounted
    in order to work.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 29baf22d0111008afce36a7d3f9d3cca6b3685e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 14:48:22 2016 +0100

    v2v: Add a regression test for floppy assignment (RHBZ#1309706).

commit 6506fa736d9793fb37ab4f06752b096eed8d371d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 15:04:26 2016 +0100

    v2v: Fix conversion of floppy removable devices (RHBZ#1309706).
    
    The previous code treated floppy disks and CD-ROMs as the same kind of
    thing, resulting in malformed libvirt XML.  You would see the
    following error when importing a guest into libvirt:
    
      error: Failed to define domain from /tmp/v2vlibvirt063486.xml
      error: internal error: Invalid floppy device name: hdb
    
    because we incorrectly generated this bogus libvirt XML fragment:
    
      <disk device='floppy' type='file'>
        <driver name='qemu' type='raw'/>
        <target dev='hdb' bus='ide'/>
      </disk>
    
    This commit models floppy devices as a distinct type, occupying their
    own bus ("/dev/fdX").  When writing to libvirt, we generate correct
    XML fragments, looking like this:
    
      <disk device='floppy' type='file'>
        <driver name='qemu' type='raw'/>
        <target dev='fda'/>
      </disk>
    
    Miscellaneous other changes were required in the code.  There is also
    a regression test (see following commit).
    
    Note this ignores floppy disks in '-o qemu' mode.

commit 19f4a9951fad864e5f54ceabf962406993832a33
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 15:52:00 2016 +0100

    builder: Add Fedora 24 images for x86-64, i686, armv7l.
    
    aarch64 image isn't buildable at the moment because of
    Anaconda bug RHBZ#1348980.
    
    ppc64 & ppc64le images are not buildable because of delays updating
    the Fedora mirrors.

commit da43512fd307f914a3e925e495f97cd1e4a01ed6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 15:44:25 2016 +0100

    v2v: OVF: Add <BootOrder/> to the first drive.
    
    This adds <BootOrder>1</BootOrder> to the first drive, which is
    necessary to make the drive bootable (or would be necessary, if oVirt
    hadn't implemented their own workaround for the OVF we were previously
    generating).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1308535#c11
    
    This is not a full solution to the problem.  Really we should be
    copying the boot order over from the source hypervisor, but that
    requires extensions to libvirt as discussed here:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1308535#c7
    
    Thanks: Shmuel Melamud

commit a826ea86abc3d0898d42c99f12416ff3603a1ba8
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Wed Jun 22 16:43:13 2016 +0300

    ext: change e2fsck retcode processing during resize
    
    e2fsck returns 1 in case of "file system errors corrected".
    We treat it as success in normal e2fsck, but fail if e2fsck
    is run by resize2fs.
    
    Change 'manual' execution of e2fsck to dedicated function call.

commit a404fa114517cba148f9a7c74d284d66b911574e
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed Jun 22 14:02:27 2016 +0200

    p2v: use yast2 lan on SUSE distros rather than NM
    
    NetworkManager isn't provided on SLES. As yast2 lan is available on all
    openSUSE / SLE distro, use it instead.

commit 65027fb89ad38c807d714770403394883584b49b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 12:45:18 2016 +0100

    builder: Use newly open sourced edk2 from Fedora, replacing kraxel's builds.

commit 7592184e71a60376ef2356b0c90a82baee8dadb2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 12:41:57 2016 +0100

    builder: Use a different mirror when building armv7l image.

commit c18338c1ac05f25e584b764bc61075ba27b607d2
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed Jun 22 11:45:35 2016 +0200

    p2v: add -x option to nm-online
    
    On distros not running NetworkManager, use the nm-online -x parameter
    to exit quickly. The network connection will be checked just after
    anyway when attempting to connect to the conversion server using ssh.

commit c51d37a7d81289b9b6cc91fc39c6ad175b0b75fd
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed Jun 22 11:45:34 2016 +0200

    p2v: add virt-p2v-make-kiwi to generate kiwi config
    
    Kiwi is the tool used by openSUSE / SLES to generate many sort of
    disk images. Add a virt-p2v-make-kiwi tool and his documentation to
    geneate the p2v appliance kiwi configuration.

commit 774b691a461a5ca2f809d090d394a51e0bb87fa2
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed Jun 22 11:45:33 2016 +0200

    p2v: fix dependencies for SLES / openSUSE
    
    Use the common denominator for SLES and openSUSE in the dependencies.
    For example most of NetworkManager pieces and metacity aren't provided
    on SLES.
    
    ifconfig is in the net-tools-deprecated package in openSUSE Factory,
    which means after openSUSE Leap 42.2. Older versions have it in the
    net-tools package. Adding this complexity only to add ifconfig because
    sysadmins prefer it isn't too good:  iproute2 is doing the job.

commit 2e7c992e6e24fad106ceeff4202939614d9ce5e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 10:17:22 2016 +0100

    p2v: Use a more specific password prompt regexp.
    
    The password prompt is actually generated by the openssh client which
    is under our control, so we can regexp match on the specific prompt
    printed by openssh.  This also avoids mistaking any server-side
    issue.net message for a password prompt (eg. if the server prints a
    message like "all users must change their passwords today!")  which
    would have prevented virt-p2v from logging in.

commit ef230c16ee05dbf5360b77ff8d9a54074db94155
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 10:10:03 2016 +0100

    p2v: Improve the error message when login fails (RHBZ#1348900).
    
    This can fail because the username is wrong.  Also don't unnecessarily
    reveal irrelevant implementation details in the error message, just
    say the login failed.
    
    Thanks: Juquin Zhou

commit 96f7442071a184e2ee772b79dccb9727ab7541db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 21 14:18:04 2016 +0100

    Revert "aarch64: launch: libvirt: As a workaround, pass -cpu parameter to qemu."
    
    Since libvirt bug https://bugzilla.redhat.com/1184411 is now fixed, we
    don't need this workaround any longer.
    
    This reverts commit 7e4b7a346a4558a02aeb58f82d518509ce6e5d03.

commit 3acff2c1cfc22586f2a29bcea79b25b73cc7b8d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 21 14:11:57 2016 +0100

    p2v: Gtk 3 workaround for RHEL 7.
    
    New enough to complain about gtk_widget_modify_font, not new enough to
    have gtk_style_context.
    
    Fixes commit ca6fea7616f89775180ab686133052eca18f0e00.

commit 4b2e079c682c6d730454c0c903620e0168c98680
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 20 10:48:11 2016 +0100

    docs: internals: Fix cross-references to guestfs(3) man page.

commit 3e8b111dafd7c49677ce71b65ed0afd4539bc321
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 20 10:18:22 2016 +0100

    p2v: Poll to make Cancel Conversion button more responsive.
    
    Previously cancelling the conversion only set a flag, which was
    checked when the run dialog displayed new output from virt-v2v.  When
    virt-v2v was showing hundreds of debugging messages, this wasn't a
    problem, but now that we are hiding those messages, cancelling the
    conversion might mean a wait of seconds or minutes.
    
    By polling (albeit infrequently) we can make the cancel button more
    responsive.

commit 09bb4a40c3322476b68dab26395363db4f674fe3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 20 10:02:11 2016 +0100

    p2v: Don't display libvirt XML and wrapper script on stderr.
    
    Confusing for end users, and not necessary for debugging since those
    files are saved on the conversion server.

commit 31d361cf5c656969ceec63a705028791b519e0d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 20 09:56:48 2016 +0100

    p2v: Display up to 50 lines of the virt-v2v conversion log on failure.
    
    For some failures, 30 lines was not sufficient and only part of the
    error was shown.  Increase the number of lines shown to 50.
    
    This also colourizes the failure message, and prominently displays the
    location of the full log.  The following message is now shown:
    
      *** virt-v2v command failed ***
    
      The full log is available on the conversion server in:
          /tmp/virt-p2v-20160620-sga9rhk7/virt-v2v-conversion-log.txt
      Only the last 50 lines are shown below.
    
      [followed by up to 50 lines of log]
    
    Updates and fixes commit 7447fe2478e49f5121a40db973f8a1fb1daaec53.

commit 37e72b2bd5bb1a7fe0beb5e1ad62beea05d4673d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jun 20 14:20:11 2016 +0200

    inspect: recognize older PLD Linux versions
    
    PLD Linux got /etc/os-release only in the recent 3.0 release; since
    older versions have only /etc/pld-release, check for it to identify
    the guest and get its version.

commit 7b602f80cf561e811a2db104fbd1dd3fbf059213
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 22:40:55 2016 +0100

    Version 1.33.38.

commit 895a5d031c0363650bc4dc1364ce57e6ed294d37
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 21:47:21 2016 +0100

    p2v: Use absolute path in test.
    
    Fixed because of change in commit 7447fe2478e49f5121a40db973f8a1fb1daaec53.

commit 201c7fdf5b95f28bc9feacf3809ae9d333915440
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 15:31:34 2016 +0100

    p2v: Use a monospace font for the run dialog.

commit d7b2fe0aefecac2be5785619b130ff74ed0551e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 15:52:09 2016 +0100

    p2v: Add DejaVu Sans and Monospace fonts to the ISO.
    
    Improves the general look of virt-p2v.

commit bc1e3bfacdca2ac64852e01203dd854bb97eb60d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 15:12:08 2016 +0100

    p2v: Don't display debugging messages in the run dialog.
    
    Previously we displayed the complete output of virt-v2v in the run
    dialog.  This output included all the debugging messages, and was very
    long and confusing for users (especially we had false bug reports
    about "errors" appearing in the debug output).
    
    Only display stdout in the run dialog.  However make sure everything
    (stdout and stderr) is still logged to the conversion log.

commit c5ba379bd61b9a206fed25a30f3f1722d3940d4b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 14:44:24 2016 +0100

    p2v: Use a wrapper script instead of long virt-v2v command lne.
    
    Instead of constructing and directly executing a long virt-v2v command
    line, build a wrapper script with the same command line and send it to
    the remote server (stored in /<remote_dir>/virt-v2v-wrapper.sh).
    
    This will make it a bit easier to construct more complex virt-v2v
    wrappers.
    
    Note this commit on its own is a simple refactoring and does not
    change any functionality.

commit be3891fb303667c7c6e97498618c20e0c2036f6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 10:40:09 2016 +0100

    p2v: Use virt-v2v --colours option, support colour in the run dialog (RHBZ#1314244).

commit e47934c919138d640300c0663863d86c7da02bbe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 10:22:46 2016 +0100

    virt tools: Add common --colours option.
    
    This option (alternately spelled: --color, --colour, --colors, or
    --colours) enables ANSI colour sequences output even if that would be
    disabled becaues the output is not a TTY.

commit 3a5c0790e18d54654adf2faac598a48e540d9b31
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 15:25:14 2016 +0100

    virt tools: Warnings are not errors, send them to stdout.

commit 8b3752c7a837496b4ba5b2d59b65f51de6f37838
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 21:08:54 2016 +0100

    p2v: Fix size of run dialog window in Gtk 3.
    
    Setting the size on the surrounding scrolled window works better.

commit 9310a56ee9066f8da58e6b249fc38c9febd714eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 19:55:58 2016 +0100

    p2v: Fix the rule for rebuilding windows.img.
    
    Fixes commit 53ec66c7e2d1dd6fa74165749374e4834ea043a0.

commit cdc50ae7a7a74276d0dab224f87b0cb036f9a291
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 14:05:26 2016 +0100

    v2v: Be careful to send all debug messages to stderr.
    
    The debug() function is already sending these to stderr, but in a few
    places we were using printf.  Change those to eprintf, except for one
    informational message which should have been using info().

commit dea6fa62be69951a4028e94d0ee3bae3e15bfda2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 11:28:16 2016 +0100

    p2v: Fix slow test so it runs our locally built virt-v2v.
    
    The virt-p2v slow test tested the local virt-p2v.  However it ran
    against the installed virt-v2v (and in fact would have failed if
    virt-v2v was not installed).
    
    This commit sets the environment up to run the locally built virt-v2v.
    
    This is unfortunately quite a lot more complex than it should be.
    There is no simple "set this environment variable" option in
    sshd_config.

commit c96dedf370a383cf101ed4c64c8691603d6f22e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 11:13:30 2016 +0100

    p2v: test-virt-p2v-pxe.sshd_config is generated by awk, not configure.

commit ef9e352c94f533721264f6bfa6ce60b89f028d1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 09:19:10 2016 +0100

    p2v: Add a dialog confirming the user really means to cancel (RHBZ#1340464).
    
    Thanks: Kean Li

commit 1902ed8b3c228a9b669ed5fe1071cb39261ab5ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 22:24:45 2016 +0100

    p2v: Disable the sudo button when the username is root.

commit bfb61bdfc394cb9240ff0c20a081b82457a192a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 21:32:33 2016 +0100

    p2v: Don't allow password & SSH identity URL fields to both be non-empty.
    
    It makes no sense.  By setting one field to non-sensitive when the
    other field is populated, we can avoid this happening, and also make
    tabbing between the fields simpler.
    
    As a consequence of making this change, I also got rid of the now
    unnecessary explanatory text telling you to leave one field blank.

commit 75fcc8a7b8fa9569ca8e3b5ce38298251586fc0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 21:15:47 2016 +0100

    p2v: Hide the spinner in more cases when it is not running (RHBZ#1341564).
    
    In particular if you hit the 'Test Connection' button when the server
    name field was empty, you would still see a stopped spinner.
    
    This updates commit 036a11f37927934132aab4fe01ed6f37c03fd805.

commit 6b3c40f50a4b2b02f28ed60bd2feca15d8a23d69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 15:13:49 2016 +0100

    Version 1.33.37.

commit 864f2b3f551a34ce8f18b0530e5f6ba4e7154ecc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 14:25:25 2016 +0100

    p2v: Add various disk utilities to the virt-p2v ISO (RHBZ#855058).

commit 4c67268cd70eb0b9a2d76a7ae4f223e809dcc5b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 13:24:22 2016 +0100

    p2v: Fix 'run-virt-p2v-in-a-vm' so it boots the USB disk automatically.
    
    Thanks: Stefan Hajnoczi for working out the right qemu incantation.

commit 6953b82037d8a3ede3b5769c68704a231df3b383
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 12:47:13 2016 +0100

    p2v: In non-GUI mode, make sure the progress of virt-p2v is visible (RHBZ#1229386).
    
    By changing the logging mode of the p2v.service unit, we can make sure
    that the progress of virt-p2v is visible in non-GUI mode at the
    console.
    
    Since the output is now always shown on the console, there's no need
    to print the journalctl command for following that output when the
    user logs in.

commit 8c7336d70ab8e4abfa5105bd311f6a4ac7e53a00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 12:26:48 2016 +0100

    p2v: Don't run X in non-GUI mode.
    
    Even in non-GUI mode we were starting up the X server in the virt-p2v
    ISO.  This is a waste of time and resources, so don't do it.

commit 9f00047d66b20cd03d57aa9216e492b22d3200f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 12:47:08 2016 +0100

    p2v: Tidy up long line in Makefile.am.
    
    Just a whitespace change.

commit 7527d769795283b9741ba0690336e1d039fa5b7d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 12:25:51 2016 +0100

    p2v: test-virt-p2v-pxe: Fix dependencies for rebuilding the image.
    
    Not all dependencies were included, so some file changes (eg. to
    launch-virt-p2v) would not rebuild the test image.

commit 0e61b2208f3be136280530f0e0ad508f3aa5d8c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 17 12:15:20 2016 +0100

    p2v: Add run-virt-p2v-non-gui-conversion target.
    
    This simulates doing a non-GUI conversion with virt-p2v being
    downloaded over PXE.  Conveniently we already had a test that was
    doing this, and this rule just runs the same test.

commit f72f0902a185228bad407f3660ea592c0c9994c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 16 21:22:16 2016 +0100

    p2v: ssh: Print ssh error if user gives invalid conversion server (RHBZ#1167916).
    
    Instead of throwing away the ssh error and printing the generic
    message "unexpected end of file waiting for password prompt", we
    capture the ssh error and print it.  The user will see the ssh
    diagnostic, eg. "No route to host".

commit 4ce05a319640995a14e3d5f816c7d7654985e9a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 16 21:18:54 2016 +0100

    p2v: ssh: Don't send wrong password more than once (RHBZ#1227599).
    
    For some reason I don't quite understand, in
    commit fd82bb12fd5fc8233955b8ffd4a42c3d6f8d748b if it got the password
    prompt unexpectedly a second time then it would send the password
    again, continually until ssh closed the connection because of too many
    retries.
    
    This obviously makes no sense.  If we get the password prompt back,
    then we must have sent an incorrect password so abort the connection
    and report the error at once.

commit 3070ca7998ee709bc7c3c96d5f4b96e66f8273f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 15 12:08:15 2016 +0100

    ocaml: Use -safe-string option in OCaml >= 4.02.
    
    In a follow up to the previous commit, enable the -safe-string option
    when we detect the version of the compiler which supports this option.

commit 229b336fe7396bc562fab7a3fc96b0f342e9f058
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 14 17:21:47 2016 +0100

    Convert source so it can be compiled with OCaml '-safe-string' option.
    
    OCaml 4.02 introduced the 'bytes' type, a mutable string intended to
    replace the existing 'string' type for those cases where the byte
    array can be mutated.  In future the 'string' type will become
    immutable.  This is not the default now, but it can be forced using
    the '-safe-string' compile option.
    
    This commit changes the code so that it could be compiled using
    '-safe-string' (but does not actually make that change).
    
    If we detect OCaml < 4.02, we create a dummy 'Bytes' compatibility
    module ((nearly) an alias for the 'String' module).  The only
    significant difference from upstream OCaml is that you must write the
    'bytes' type as 'Bytes.t' in interfaces, apart from that everything
    else should work.

commit de038043ef7c39d01de4c0c01fba35676d1994ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 15 12:19:01 2016 +0100

    generator: Use common OCaml rules for building the generator too.
    
    Updates commit a3cb12ab2c1eb323647cc598ab166181aa98545c.

commit 699362d8ecd8fc7ad9ea72de53758bac1fcde96a
Author: Andrea Bolognani <abologna@redhat.com>
Date:   Thu Jun 16 16:14:58 2016 +0200

    builder: Fix description for --long option

commit a71e03aaf0d5f24003ccb1f1445eb610b37e469b
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed Jun 15 14:09:49 2016 +0200

    filesystems: don't try to get the size of btrfs subvolume
    
    virt-filesystem -l tries to get the size of btrfs subvolumes, which
    results in an error. Teach it to skip the subvolumes.

commit 209dd3f5c4c72a71da09dd94ca85116ead016c3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 14 18:54:44 2016 +0100

    mllib: Use Unix.F_OK instead of plain F_OK.
    
    Removes this warning:
    
      File "common_utils.ml", line 826, characters 24-28:
      Warning 40: F_OK was selected from type Unix.access_permission.
      It is not visible in the current scope, and will not
      be selected if the type becomes unknown.

commit 0d09e9b5a3b790678c5cd5b1446031b64060818e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 14 17:00:26 2016 +0100

    generator: Remove unnecessary 'chars' function.
    
    String.make can be used instead, and that function has been around
    since at least RHEL 6 era OCaml.

commit 78d4088293054914fe0f859766177d1d25df74ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 14 13:13:49 2016 +0100

    v2v: OVF: Add new <Origin/> values for virt-p2v and HyperV.
    
    See proposed change to oVirt: https://gerrit.ovirt.org/#/c/59147/
    and RHBZ#1342398.
    
    This enhances commit 9467777fdf08ef7158b63354b9b46b003845daee.
    
    Thanks: Shahar Havivi

commit 50c7a9958de4176c24e2644442f2d867332755bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 14 13:13:23 2016 +0100

    v2v: OVF: Add a comment about what happens for unknown <Origin/>.

commit f23132b8c6d994a4adaf9c4cc68e6f13d9fc833a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 13 10:53:00 2016 +0100

    sysprep: Add --network to enable the network (RHBZ#1345813).
    
    In commit ae6f726ecc3bc1b67fd76e51a7b1e1a33d4dcfc0 we started to use
    the virt-customize code to replace various virt-sysprep operations.
    This had the effect of adding many more possible operations to
    virt-sysprep, but some of them (specifically --install) did not work
    unless the appliance network is enabled.  It was not enabled in
    virt-sysprep, so these operations never worked.
    
    This change does NOT enable the network by default.  However it adds a
    --network flag which may be used in conjunction with --install etc to
    make those commands work.
    
    In addition we now emit a warning for certain customize operations if
    they fail and if the network is not enabled.  It will print:
    
      [   4.5] Installing packages: tcpdump
      Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again
      Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was
    
      virt-sysprep: warning: the command may have failed because the network is
      disabled.  Try either removing '--no-network' or adding '--network' on the
      command line.
    
      virt-sysprep: error: yum -y install 'tcpdump': command exited with an error
    
    (If the network is already enabled, or if the command is successful,
    then the warning is not printed.)
    
    Thanks: Xianghua Chen

commit cc1794256310ab75225d777edef7878bce073b5f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 13 11:31:10 2016 +0100

    customize: Give an error if --truncate-recursive path does not exist (RHBZ#1345809).
    
    You will now see an error such as:
    
    $ virt-customize -a centos-6.img --truncate-recursive /home/foo
    [   0.0] Examining the guest ...
    [  16.5] Setting a random seed
    [  16.5] Recursively truncating: /home/foo
    virt-customize: error: libguestfs error: find0: /home/foo: No such file or
    directory
    
    Thanks: Xianghua Chen

commit 24806093b86eb4ebd097e247536497527c3eee79
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 13 11:27:30 2016 +0100

    customize: Use C<> around parameter name in documentation.
    
    Fixes commit a084758e83eddb0c5b57ce904856218240011419
    and commit 7e8ed7cb218c4104753fa5aae9d945d5a84054e9.

commit 0226c9636f01ece4e3d0aff56e76df6c2546bb81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 13 10:46:31 2016 +0100

    Version 1.33.36.

commit 1a37681423a9be9c97bfe07c6ed6d6591c2031e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 13 10:21:14 2016 +0100

    v2v: Fix get_firmware_bootable_device.
    
    Commit 82df76851478f52e02ed6beef0f1576772d066cd breaks the regression
    test for RHBZ#1232192 because g#part_list can return an error when
    called on a completely blank disk.
    
    By rewriting and simplifying the code using higher-order functions we
    can avoid the need for the double-nested imperative loop and calling
    g#part_list at all.
    
    Fixes commit 82df76851478f52e02ed6beef0f1576772d066cd.

commit 7ebbc9be8dbad5968a9dce383a6c1b67600f693a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 12 12:58:57 2016 +0100

    v2v: Allocate extra RAM to the appliance during conversion.
    
    The 'semodule' command, called by the guest tools uninstaller, will
    run out of memory with the default of 500MB
    (https://bugzilla.redhat.com/426775).
    
    Allocate a large amount of RAM, that will be at least 800MB, but scale
    correspondingly on other architectures like ppc64 that have larger
    memory requirements.
    
    Thanks: Pavel Butsykin

commit c7691cc05d06536ab93bdb226e955f13efa5347d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 13 08:54:48 2016 +0100

    mllib: Document open_guestfs identifier parameter.
    
    Just a documentation fix.

commit c63203b31ba865db0cbcc9133493c4b854ff73dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 12 22:40:01 2016 +0100

    ocaml: Move identical rules for building OCaml objects to common file.

commit 8e75a4921e2e5070c556808ed902e1b487790243
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 12 21:56:00 2016 +0100

    v2v: XML: Fold some over-long lines of code.
    
    Just whitespace, no functional changes.

commit d9cef8dc1db1bd7dc8a51cd34fcbfc1bb131cf40
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 12 21:02:28 2016 +0100

    v2v: XML: Rename internal types.
    
    This is a mostly mechanical renaming of the internal pointer types
    used in the libxml2 bindings.  Also I have added a longer comment to
    make the system clearer.

commit c721d5bb2447274bb2331b43d4d777c5b067c4f8
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Sat Jun 11 13:29:42 2016 +0300

    v2v: remove the 'graphicsmodedisabled' entry in ESP BCD
    
    Guest tools for Windows in Parallels / Virtuozzo Server 6 contain a
    paravirtualized video driver, which wants to take full control of the video
    mode. To avoid excessive video mode switches in UEFI VMs it executes
    "bcdedit /set {current} graphicsmodedisabled true".
    
    When such a VM is imported into a QEMU/KVM-based hypervisor, the
    standard video drivers in Windows do not set the video mode as they
    expect it to have already been configured by the bootloader.  As a result,
    the VM runs with black screen.
    
    So patch the BCD store (which is a Windows registry hive with a special
    structure, located on the EFI system partition) to clear this setting.
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>

commit fb9f78c32e400f7ac9f48fc97d2976489cbbfe8f
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Sat Jun 11 13:29:41 2016 +0300

    v2v: fill the list of the EFI system partitions
    
    Store the list of EFI system partitions on the inspect object in order  to be
    able to tune their contents later in the process.
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>

commit 3e52a8e598341f646537c780356ecef79a0d6a39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 12 18:03:37 2016 +0100

    docs: hacking: Small updates to virt-p2v code documentation.
    
    Use Unicode box-drawing characters instead of ASCII art.
    
    Reference virt-p2v manual for how virt-p2v works.

commit e43cb10c7765990d246d4ea139fecfa8773fdc77
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 12 17:52:52 2016 +0100

    docs: hacking: Document how OCaml programs are compiled and linked.

commit 67d71a0aecf3cc985187d62d204bfc1b4b1f9395
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 12 17:35:14 2016 +0100

    v2v: DOM: Make 'doc' and 'element' types distinct.
    
    No functional change, just enforces the distinct type for callers.

commit 283b23fd168754fe9f565637611f480fedf5689e
Author: Pavel Butsykin <pbutsykin@virtuozzo.com>
Date:   Sat Jun 11 20:51:57 2016 +0300

    v2v: linux: uninstall Parallels tools
    
    Guest tools for Linux in Parallels / Virtuozzo Server 6 come with a script
    that can be used to uninstall them.
    
    Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>

commit dd04f6083147f199b02126d5677963b719c7846d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 10 22:24:38 2016 +0100

    v2v: Whitespace change in DOM.

commit 80910a9604284eb0057578b69a49aa99a39ced58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 9 15:03:52 2016 +0100

    v2v: OVF: Set <Origin/> field correctly based on source hypervisor.
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1342398#c6

commit a77fcc52cbe13d36db4c96e899411a70d2b24258
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 7 22:10:28 2016 +0100

    ruby: tests: Give each test class and method a unique name.
    
    'tc_410_close_event.rb' was not being run.  You could prove this by
    simply inserting "exit 1" into that test.
    
    The reason is unclear, but by renaming every class and method in the
    tests to be unique, this ensures the tests are run.

commit 762b64ee923c7d3919af8092eb0a50c172a3e2fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 7 20:52:04 2016 +0100

    ruby: Print exceptions thrown by event callbacks.

commit b105d4ef3c1b015c12ad76bf74c7b7eb15b4a004
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 8 16:12:49 2016 +0200

    get-kernel: use "auto" as real autodetection marker (RHBZ#1341984)

commit 485d783e0b3c244ca261c279bcc801e1304f43ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 7 14:50:47 2016 +0100

    p2v: Print full curl error when failing to fetch SSH identify URL (RHBZ#1343423).

commit acf81cb6137948fa0c9f0806ae92e64e91ad4a09
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 7 14:32:26 2016 +0100

    p2v: Add note about 403 Forbidden errors when serving id_rsa file (RHBZ#1343414).

commit 22b4a32544257c0c1acc9624125fecfa8cdfabd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 7 10:24:54 2016 +0100

    customize: Add --uninstall operation (RHBZ#1343375).

commit 07131f9602fc92d37afb3e3e0fe9ff86a438934f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 6 15:50:27 2016 +0100

    docs: hacking: Describe which order to look at directories.
    
    When browsing the source code.

commit b4bfbc4add73e7b71560dd497bdfde246da98a74
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Mon Jun 6 15:12:36 2016 +0300

    v2v:windows: prevent Parallels drivers from loading at boot
    
    Parallels proprietary hypervisor uses RDPMC as the hypercall
    instruction.  As this instruction is supported since early P6 family,
    the drivers didn't even bother to check for the presence of the
    corresponding feature in CPUID.
    
    In QEMU/KVM, however, this instruction triggers #GP unless the VM is run
    with PMU (performance monitoring unit) enabled, which is often not the
    case (due to its impact on perfromance and migratability).
    
    So, to prevent crashes upon conversion, stop respective drivers from
    loading by disabling the corresponding services.  Note that the services
    are being disabled ("Start" value set to 4) rather than their node
    removed, to avoid confusing the uninstaller which is scheduled to run
    from a firstboot script.
    
    In addition, prl_strg (storage filter driver) is unlinked from the
    storage subsystem following the DelReg directive from its .inf file,
    otherwise Windows crashes with BSOD 0x7b due to missing dependency of
    the storage subsystem.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Reviewed-by: Richard W.M. Jones <rjones@redhat.com>

commit 08cc015cc30ab2b0c5c3de6829edfa33c8a78079
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 6 11:50:15 2016 +0100

    Version 1.33.35.

commit 02f3793fc4cb3c4ed2a092b38eb5e9c9c0721f6b
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Fri Jun 3 18:14:17 2016 +0300

    v2v: copy all driver files into guest
    
    Some virtio-win drivers contain more files than just *.{cat,inf,sys}.
    They are filtered out currently, which prevents the drivers from being
    installed by PnP.
    
    Stop filtering driver files by extension, and copy all of them instead.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Reviewed-by: Richard W.M. Jones <rjones@redhat.com>

commit 933760b183d42a91882dcbdb48a48ac0728cd1dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 14:46:20 2016 +0100

    p2v: Add more authors who have worked on virt-v2v and virt-p2v.
    
    Use this command as a starting point:
    
      git shortlog -s -- p2v v2v | awk -F'\t' '{print $2}' | sort -f
    
    However note the above will include people who made only incidental
    code changes, and also misses out QA team members, so the actual list
    still has to be curated by hand.

commit 3ade8102b498b5cc41992f7c6e61c02d79da0557
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 14:41:22 2016 +0100

    docs: performance: Mention optimizations added in libguestfs 1.33, qemu 2.7

commit a34ea81d17fa575daebcac08314039dcc2c2eeda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 14:27:07 2016 +0100

    docs: hacking: It's the 'docs' subdirectory, not 'doc'.

commit 84f7f92af0422e9b1cddb8b7b2346c361e5a36f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 14:25:33 2016 +0100

    docs: hacking: Move subdirectories list higher up in the file.
    
    It's better to have this overview of how the code is arranged before
    any details about modifying the code, since most people will be
    reading code before writing.

commit 18f524202f74f7cea46cf23b2e8699faf1133acf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 13:53:52 2016 +0100

    docs: building: Document ./configure options.

commit 361d2160254f41ed4106e5f975d01acb8aa0c30f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 14:06:32 2016 +0100

    docs: building: Add a warning about running tests as root.
    
    It's a really bad idea, don't do it.

commit bb8b7e72004b255eb84ae9b3fa7691207dfd5e62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 14:00:18 2016 +0100

    docs: building: Fix link to RHEL sources.
    
    These are now stored at centos.org, not at ftp.redhat.com.

commit 3c4159a6a4c8949273508b2b8b629428085dded4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 13:53:12 2016 +0100

    docs: Remove imaginary '--enable-gcc-warnings' flag.
    
    It doesn't actually exist.  Not sure if it did in some earlier
    version, but it doesn't exist now.

commit d62e7aff5b29fffaf0bf546bdc27b15b7a932571
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Fri Jun 3 18:46:54 2016 +0300

    v2v: recognize Virtuozzo tools as Parallels tools
    
    Recent updates of Virtuozzo Server 6 (fka Parallels Cloud Server 6) have
    "Virtuozzo tools" instead of "Parallels tools" as their display name in
    the corresponding Uninstall registry key.
    
    Recognize those, too, and schedule their uninstallation on first boot.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Reviewed-by: Richard W.M. Jones <rjones@redhat.com>

commit e00d647648aaca24e98f652a80c7fba26388561d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 21:35:37 2016 +0100

    fish: rc: Rewrite file descriptor send/receive.
    
    On Linux 4.7.0 the old code was giving -EINVAL errors.  This rewrites
    the code based on online sources, and it works on at least RHEL 7,
    Linux 4.4 and 4.7.  Also checked with valgrind.

commit 5009a60b3b2c5fa29deb29c399754ca1816f12bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 21:01:36 2016 +0100

    fish: rc: Fail hard if recvmsg doesn't receive a file descriptor.
    
    Also some code reformatting.

commit 713e04212129917f075b3359c636bf82afdfde13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 14:52:18 2016 +0100

    Version 1.33.34.

commit e469fd263d37c803a7994f2d89d958c14ab00b69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 14:21:59 2016 +0100

    mllib: Fix other places where Dev_t module must be linked to Common_utils.
    
    Fixes commit df7a33768eab2381b958ede2c8a40bc9cbc87928.

commit e232b2c975b1188f3693573c1cc91183bf85bb63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 13:04:36 2016 +0100

    Version 1.33.33.

commit 663bb70652cab35ce6514ee212a1cfdff4e4c0a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 13:03:39 2016 +0100

    v2v: Don't distribute binary v2v_unit_tests in EXTRA_DIST.
    
    Because EXTRA_DIST included $(TESTS) this ended up distributing the
    binary file v2v_unit_tests.
    
    Unfortunately to fix this we need to list all the test scripts and
    data files explicitly a second time, but there we are.

commit dc4a91652e10f0f54fe92d884157b01b2cd9d0f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 11:10:20 2016 +0100

    p2v: Place conversion server name and port side by side.
    
    Just a small rearrangement of the UI.

commit 686e03a55e3f2f149e208b3495b621bcd71af3ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 10:29:46 2016 +0100

    p2v: Add "XTerm" button which launches a terminal window.

commit c5c9cd8c1b17bc37a903938588e2fc9b7c55f2e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 10:25:59 2016 +0100

    p2v: Add ifconfig to the ISO (RHBZ#1342447).
    
    Suggested by Ming Xie.

commit 159707fffa9e22ed96c9205544920cedfcdaa948
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 08:57:00 2016 +0100

    p2v: Rename internal Makefile rule 'run-virt-p2v' -> 'run-virt-p2v-in-a-vm'.
    
    Now there are two rules for running virt-p2v:
    
      make -C p2v run-virt-p2v-directly
    
      make -C p2v run-virt-p2v-in-a-vm
    
    Updates commit f8cfdf274fdbf165036ad90cbe8f96df9757f182.

commit 0839c07f25971ad04acdc271fca5652028cc1d5f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 2 23:25:07 2016 +0100

    p2v: Fix docs for new hot key to use when testing virt-p2v in a VM.
    
    The QEMU hot key for choosing the boot disk has changed in qemu 2.6.0
    so update the documentation to reflect this.

commit 2c624f7653349a46a3aeecbbc9406ebc37f0ba00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 2 23:20:14 2016 +0100

    p2v: Make run-virt-p2v rule depend on $(PHYSICAL_MACHINE).
    
    Fixes commit f8cfdf274fdbf165036ad90cbe8f96df9757f182.

commit 1a9ed4478023da329a390ceea8975d6fe802bb0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 2 23:12:02 2016 +0100

    p2v: Pass special --iso flag when running in the ISO environment.
    
    If this flag is not set (ie. we are doing local testing) then we
    disable some dangerous features.  Currently this is just the "Reboot"
    button, but may include other features in future.

commit f9ae08be7827e9bf7aff5e17a3aa9be8cd85391e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 28 17:02:11 2016 +0100

    p2v: Allow virt-p2v to be built with Gtk 2 or 3.
    
    Currently virt-p2v requires Gtk 2.  This commit changes virt-p2v so it
    can be built with either Gtk 2 or 3.
    
    By careful use of macros, this code should compile on both recent
    Gtk 2 and Gtk 3.
    
    With no other options, ./configure will now prefer Gtk 3 if it finds
    it, or fall back to Gtk 2.  But you can control this by setting
    './configure --with-gtk=2|3|check|no' where the options mean:
    
      * --with-gtk=2 - Only test for Gtk 2
      * --with-gtk=3 - Only test for Gtk 3
      * --with-gtk=check - Check for Gtk 3 then Gtk 2 (default)
      * --with-gtk=no - Don't build virt-p2v
    
    In the ./configure output you will see something like this:
    
      checking for --with-gtk option... 2
      checking for GTK... yes
      checking if we can build virt-p2v... yes, with Gtk 2

commit f9f061aeae3e278f93d12d21219b1dddbdf091da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 30 21:26:56 2016 +0100

    p2v: Remove GDK thread synchronization.
    
    Gtk 3 deprecates the GDK thread synchronization locks (functions such
    as gdk_threads_enter/gdk_threads_leave), and requires that you issue
    all Gtk calls in the main thread.  To do this you have to restructure
    any code that calls Gtk from other threads so it is wrapped in an idle
    task, and so is run from the main thread.
    
    This commit transforms the code in this way.
    
    I found through experimentation that libxcb crashes noisily if you
    issue any X11 calls (and hence any significant Gtk calls) when the GDK
    thread sychronization initializer has been removed, so if there are
    any remaining calls that are missed by this patch we should find out
    about them quickly.

commit fdace3219b427e0a7d76754ffbf38bc86659b634
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 30 19:14:30 2016 +0100

    p2v: Add --test-disk option for testing conversions.
    
    Use, for example:
    
      ./run virt-p2v --test-disk=$(pwd)/test-data/phony-guests/windows.img
    
    to test conversions using a file of test data instead of the real host
    /dev/sda.

commit 27bc80f6241a75d96b9c2fa18dcf38b92e0768aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 2 14:51:12 2016 +0100

    builder: Warn if --output is a host partition (RHBZ#1342337).
    
    But allow the warning to be turned off using --no-warn-if-partition.
    
    Ming Xie tried to create a bootable USB key using
    'virt-p2v-make-disk -o /dev/sdX1'.  That works, but doesn't create a
    bootable key because it puts everything into the first partition.
    
    Emit a warning if someone tries to do this to try to prevent user
    error:
    
      virt-builder: warning: output device (/dev/sdb1) is a partition.  If you
      are writing to a USB key or external drive then you probably need to write
      to the whole device, not to a partition.  If this warning is wrong then you
      can disable it with --no-warn-if-partition

commit 8e6c5ffbaae5ec8d805eb129567e90deff51f8e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 2 15:10:04 2016 +0100

    mllib: Add Common_utils.is_partition function.
    
    Returns true if the device is a host partition.
    
    The only tedious bit of this patch is that now Common_utils depends on
    Dev_t so we have to add extra objects every time something links with
    Common_utils.

commit e088f051a208e1d5fde3c1a81ddeab9035a815a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 2 14:50:44 2016 +0100

    mllib: Add bindings for makedev(3), major(3) and minor(3).

commit b7bb42a6c998a33d86fe19c134996e450967a7fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 2 13:53:37 2016 +0100

    p2v: Add --verbose option to virt-p2v-make-{disk,kickstart}.
    
    For virt-p2v-make-kickstart this doesn't do very much.  But for
    virt-p2v-make-disk it enables verbose mode in virt-builder which is
    extremely useful for debugging problems.
    
    Thanks: Ming Xie.

commit 25d0bb2d30ec164b6f276286870547bf38c6918b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 1 12:04:16 2016 +0100

    p2v: Hide the spinner when it is not running (RHBZ#1341564).
    
    Thanks: keanli

commit 6d6b459ff7e6ac17e742f46c9f557907c72d0927
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 1 11:18:05 2016 +0100

    p2v: Add missing ethtool dependency.
    
    virt-p2v runs `ethtool --identify' command, but since the command was
    not included in the ISO the command always failed.
    
    Thanks: Ming Xie.

commit ae7d370405d01235a5ce656aec0f464164443e12
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 31 12:03:44 2016 +0200

    p2v: require a non-interative sudo (RHBZ#1340809)
    
    Run sudo with -n (non-interactive), so it will fail right away when not
    configured to not require a password.  This will avoid the connection to
    time out.

commit 146464c2f49044206e71c4e5ec03992a95b8c5a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 28 22:47:14 2016 +0100

    p2v: Rebuild the virt-p2v disk image if dependencies.m4 changes.
    
    Fixes commit f8cfdf274fdbf165036ad90cbe8f96df9757f182.

commit 684a3033a6166b9db33f043781e55765a737e016
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 28 22:45:41 2016 +0100

    p2v: Add xterm to the virt-p2v ISO.
    
    You can run `xterm -display :0' at the virtual console in order to get
    a shell in the graphical environment.
    
    This is useful for debugging and doesn't have much overhead unlike
    other terminals.

commit 9eb3c2afdb3a89171b2cca0afe57749fdd07aa9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 28 15:54:07 2016 +0100

    p2v: Preserve and display the full version of p2v and v2v.
    
    Fetch the full version from the remote virt-v2v, including the
    --with-extra field, since that tells us which distro virt-v2v was
    compiled for which is useful information.
    
    Display this information in all debug output and dialogs.

commit 4e44209694f0571527635640146f18512db6a975
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 28 15:53:56 2016 +0100

    p2v: Translate comments in About dialog.
    
    Also make the translatable string more accurate.

commit 911f078522d5d857aad20d656a3cf36b94ff271b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 28 15:26:27 2016 +0100

    p2v: More internal documentation.

commit 6ab8001817d499029be8cbd25e9a78859101c5c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 28 15:09:31 2016 +0100

    p2v: Add Ming Xie (from QA team) to authors page.

commit 776c01abeaf4574fd81c63b862223fc24c1e9b38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 28 14:34:58 2016 +0100

    p2v/gui.c: Add internal documentation.
    
    No functional change.

commit d4368bca7d2e19e14d73546cff9d0a3c35c99fb9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 27 13:18:47 2016 +0100

    p2v: Fix alignment issues in treeviews on right of conversion dialog (RHBZ#1340407).
    
    Multiple cell alignment issues in the treeviews on the right of the
    conversion dialog.  This particularly showed up when you had multiple
    heterogeneous disks or network cards because the description cells did
    not align nicely.
    
    Thanks: Ming Xie.

commit bfcb10906e25bce7393a090ac1a8f2eb540b462b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 27 13:05:32 2016 +0100

    p2v: Update 'make run-virt-p2v' rule.
    
    Use KVM, fallback to TCG.
    
    Add more network devices so we can test the layout of that
    dialog box.
    
    Move the documentation into guestfs-hacking(1).
    
    Updates commit f8cfdf274fdbf165036ad90cbe8f96df9757f182.

commit ae16af6aebf477d3105d6ced932ee759d5c64f37
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 27 09:53:54 2016 +0100

    Version 1.33.32.

commit acfc83723c6a158ad20cdf4d9c5227c40dbfc418
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 26 15:21:10 2016 +0100

    p2v: Add a 'make run-virt-p2v' rule which boots virt-p2v in a VM.
    
    A convenience method instead of having to work out the right
    qemu command line each time.

commit b45755d943fc1301e582dfbd869b70d6798cffff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 26 16:28:07 2016 +0100

    p2v: Disable SELinux in virt-p2v-make-disk.
    
    The kickstart version of virt-p2v has SELinux disabled, so this is at
    least consistent.  Mainly it avoids the very long relabel when the
    disk boots first time.

commit da8e3e0b032afb0d21cf235128f6b327afb7799b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 26 14:14:57 2016 +0100

    p2v: Consolidate EXTRA_DIST and CLEANFILES into single lists.
    
    No functional change.

commit ebaccca911da1e94b8247fc24da351a5dfa345eb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 26 17:38:03 2016 +0200

    osinfo: use guestfs_int_version_from_x_y to parse the os version
    
    Make use of the common version code, and avoid a separate regexp.

commit 43a9995c7b1f7b320d346eb505e26ffc5bf3c843
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 26 17:25:47 2016 +0200

    lib: qemu: use guestfs_int_version_from_x_y for qemu version parsing
    
    Make use of the common version code, and avoid a separate regexp.

commit a41cfe3ace83cd7b4bb6804e2b54e5f31b46b6ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 26 15:48:32 2016 +0100

    aarch64: launch: Only pass gic-version=host when KVM is likely to be enabled.
    
    See:
    https://bugzilla.redhat.com/show_bug.cgi?id=1339977

commit 6551ecb3ab1075b253d7e9e7fd5937c1e3891d52
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 26 13:38:39 2016 +0200

    customize: random_seed: avoid one file checking for existing files
    
    When the random-seed file is found, then avoid checking its existance
    again.

commit bdcb801a83367e0253b15f6d24872ad098a3058d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 26 15:13:54 2016 +0200

    dib: pass envvars also to extra-data.d scripts
    
    Inject the variables passed via --envvars also when running extra-data.d
    scripts.  This removes the need to exporting them before running
    virt-dib.

commit 75a8bc348aeeaaf01ecc62a13062310767fca558
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 26 12:55:32 2016 +0100

    Version 1.33.31.

commit 9c0efa662f90d754e292329cfd5d29f83ce9e120
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 26 12:54:08 2016 +0100

    v2v: Add test-v2v-i-ova-subfolders test files to EXTRA_DIST.
    
    Fixes commit 9de9300e8b7a99fa06e290f20ef1aaa1eb6f7431.

commit 6b6350945b1928b6b354d6cc63d74271fe7fe3d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 26 11:36:05 2016 +0100

    todo: Use query-qmp-schema.

commit 1d915f126e1227a68321b33519b24310c4a51510
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 25 13:42:21 2016 +0100

    Revert "utils/boot-analysis: Make seabios optional in timeline."
    
    The loss of SeaBIOS messages was actually caused by a bug in my code,
    not a change in the boot process.
    
    This reverts commit 6fa24e768af9ddde83106b6bfe53c8d5ab2af861.

commit a24731e0f1ee93149bbe5dbab034416e19628c6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 24 22:04:49 2016 +0100

    utils/boot-analysis: Make seabios optional in timeline.

commit bedcbb4acff60501c8d6ee1f3b33206bbc48290d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 24 18:49:53 2016 +0200

    inspect: get icon of ALT Linux guests
    
    The icon is part of a documentation package, although it's the best hit
    so far...

commit d36b918b7b1f4e34b07e6ab983dd4256b5e0c29d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 24 18:14:38 2016 +0200

    customize: add support for the xbps package manager

commit 150fd8f0651444e4ef3b485f2deed5b3ef2a0a54
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 24 17:44:23 2016 +0200

    inspect: support the xbps package manager and its format
    
    Associate the Void Linux distribution with it.

commit cdbe0152017becb824ed65852f53f424e8a494e5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 24 17:29:52 2016 +0200

    inspect: recognize the Void Linux distribution
    
    Since Void Linux provides only an /etc/os-release with no VERSION_ID
    field, then special-case it to avoid that the os-release parsing ignore
    it.
    
    This provides basic distro identification, and icon.

commit 7fda8357537bbbb14f9ed636c60558d41044afc8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 24 15:09:17 2016 +0200

    inspect: allow single-number version in DISTRIB_RELEASE of lsb-release
    
    When parsing lsb-release, allow a version number in the format "X" other
    than "X.Y" for the DISTRIB_RELEASE key.
    
    This fixes version parsing in Mageia 4 guests.

commit 2fe774276874e8a9d7d7648da001f768fa9cc5fb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 23 18:15:29 2016 +0200

    mllib: add a new run_command helper
    
    Add a simple helper to run a command from a sequence of arguments,
    without using a shell: this should help reducing the amount of quoting
    ineeded, since arguments are passed straight as such.
    
    Make use of it in the places currently using shell_command, and which
    don't assume they can run anything (so no shell redirections, `env`,
    etc).

commit c81368bc5741a5a422ba419eef49e3edd0e2e0d7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 23 18:04:09 2016 +0200

    mllib: move stringify_args from dib
    
    Move the make_dib_args helper function to Common_utils as
    stringify_args, so it can be used also within Common_utils itself.
    
    This is mostly code motion.

commit 0f2c44188e33982c38563d43ac0f34bb977d1861
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 23 15:07:25 2016 +0200

    v2v: use common debug function where possible
    
    Followup of commit 063af7f987e2c010fbcf3535f3b278b7397c7089.

commit 799b55e1284884cb416db85727d8be5ae8329b52
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 23 14:24:21 2016 +0200

    mllib: add an helper shell_command
    
    Add a simple shell_command, which is mostly a wrapper around
    Sys.command but with logging of the command run.

commit 4d0af443a164582b93b9cb3a07b13936e200f430
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 23 13:23:00 2016 +0200

    mllib: make external_command echo the command executed
    
    Add an optional parameter to disable this behaviour, so the Curl module
    in v2v won't print user-sensible data (like passwords).

commit 38e8a8f25aac9cd3b6d8be7a05126d70a3222b1a
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Mon May 23 15:31:46 2016 +0200

    v2v: handle subfolders in ova files
    
    Some ova files like those produced by SUSE Studio have their ovf, mf
    and other files inside a folder rather than at the root of the
    tarball. Consider the paths relative to the ovf and mf files to cover
    this case too.

commit 62d42f3205a3b15fb7a30870e9d272d2feff552b
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Mon May 23 15:31:45 2016 +0200

    v2v: add support for SUSE VMDP drivers
    
    To add this support, two things are needed:
     * make the existing code searches for either the viostor
       or the SUSE VMDP (Virtual Machine Driver Pack) files.
    
     * add a firstboot script setting up VMDP.
    
    Note that 2 firstboot scripts are intentionally added for the VMDP
    setup. This is due to windows potentially rebooting after loading the
    virtio block driver. It may happen that this reboot interrupts the VMDP
    setup in the firstboot script, we thus make sure the setup is run a
    second time in case it needs to finish the previous run.

commit 562e6ace94976a6d4daba9deec184f62b39dddb5
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Mon May 23 15:31:44 2016 +0200

    customize: fix windows firstboot script
    
    Sync the windows firstboot script with its linux brother. Also change
    the main redirection to append to the log rather than overwriting it.
    With this change, the firstboot script will resist reboots in the
    executed scripts.

commit b521fbbaca5e7ce0bf6ef70729137ed0b392363a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 23 18:19:34 2016 +0200

    appliance: add kpartx to the dib packages
    
    Newer diskimage-builder versions run kpartx in root.d elements.

commit 03059625e1534a1f2662d6f82a35d0e9195981dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 23 12:02:52 2016 +0100

    Version 1.33.30.

commit d1f67fb56ba3449b6d0ebf62726ca6ad34b1bc5c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 23 12:00:28 2016 +0100

    v2v: Fix unit tests for new UEFI paths.
    
    Fixes commit f755918fb5b11364bc56c130fcc6a529943b5bcd.

commit 57a827363aa7de871750ef2ebf4617c38e75eb47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 21 15:53:31 2016 +0100

    ocaml tools: Use a common debug function.
    
    Add a common debug function for printing debugging messages.  It only
    emits the debug message when the verbose (-v) flag is used on the
    command line.
    
    It sends the output to stderr, which is flushed immediately after the
    message is printed (to help with debugging unexpected crashes).  There
    are good arguments for sending the debug to either stdout or stderr,
    and almost all existing debug messages replaced by this change went to
    stdout.  However using stderr is consistent with libguestfs's own
    debug messages which also go to stderr.
    
    I only made simple changes to code of the form 'if verbose () then
    printf ...'.  There are more places which could be changed in future.
    In a few places I removed gettext calls since we probably should not
    translate debug messages.

commit 933b3efad168e7912ae743ff3d0dcc271420f291
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 22 20:40:06 2016 +0100

    customize: Turn print into warning.
    
    It is still only emitted if we are debugging in order not to cause
    unnecessary alarm.  Note this code needs a better long term fix, this
    is still a hack.

commit da5080fccffadc73b21aab85f54c91013ef71b6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 23 10:29:45 2016 +0100

    umask: Use /proc/self/status instead of unnecessary path computation.
    
    Fixes commit 2feeeb8fb4aa1102e46308bdfbd6fef31761d073.
    
    Thanks: Roman Kagan.

commit 8311239b7698f17c578847994ab1f37be25116ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 22 21:29:49 2016 +0100

    uefi: Add new locations for UEFI files on Fedora (RHBZ#1338083).
    
    Now that UEFI is fully open source the UEFI firmware can be included
    in Fedora.  However the location is slightly different from the
    location that was used by kraxel's out of distro firmware.  This
    commit searches for UEFI files in the new location, falling back to
    the old location (until the end of this year when we will drop it
    entirely).
    
    Thanks: Cole Robinson, Gerd Hoffmann (kraxel) & Microsoft for
    relicensing the FAT code.

commit f09d1873b58df986eca684de4e5e112db3eb052f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 22 21:21:46 2016 +0100

    utils: Move UEFI firmware lists to src/uefi.c.
    
    Just code motion, no functional change.

commit ee1916ab3d2904938362594b6561af4357954825
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 21 15:43:59 2016 +0100

    v2v: Remove unused and unimplemented Linux.install function.
    
    This function did 'assert false' and was also never called
    from anywhere else.  Delete it.

commit 0b5491101b3a540bfb54b354ebb4eff54b84a667
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 21 13:07:55 2016 +0100

    umask: Use /proc/<PID>/status to read umask in Linux >= 4.7.
    
    Since Linux 4.7, the process umask is available in /proc/<pid>/status.
    See:
    https://github.com/torvalds/linux/commit/3e42979e65dace1f9268dd5440e5ab096b8dee59
    
    Use this value if available, else fall back to the existing codepath
    for Linux <= 4.6 and other Unix.

commit e075c64c6c42e1c13c8369b66757f2fda581b7aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 21 15:36:56 2016 +0100

    v2v: windows: Minor documentation fixes.
    
    Fixes commit 19f3689e5dcd06a0967ba88b5516a7ce70203576
    and commit ee0219148352695ddf1102a426dcfe4e3be55fba.

commit 11cf61dc1d91dd5b05a47f496b471598fba24318
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 20 21:03:49 2016 +0100

    src/version.c: Move internal documentation before includes.
    
    The internal documentation generator only works if the file
    description comment appears before the first #include line.
    
    Fixes commit f277087d2a86104b10923e919d36834ed7c49e19.

commit a451226afa38201ffedac83a33abfd7a7ae7a9e9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 20 13:11:33 2016 +0200

    tests: disable UUID change on ext journal_dev
    
    Newer versions of e2fsprogs refuse modifying journal devices, causing
    the test #1 of get_e2uuid to fail with:
    
      libguestfs: error: set_e2uuid: Cannot modify a journal device.
    
    Since the test case just needs to verify get_e2uuid runs without
    failing, run it without expecting a certain UUID set earlier.
    
    Followup of commit da4812ab6b44c29cb3cf181c7aa896420ecb8aa6.

commit 3d7420dd32fdd82c6834218af91c663ffd30c93d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 20 13:17:15 2016 +0200

    tests: fix --format in virt-customize
    
    Only in very recent OCaml versions (or in Fedora) the Arg module
    supports the --foo=bar syntax for options with arguments.  Do not
    require it yet.
    
    Fixes commit 64bb9edd527c9c7082721891cb7f090484858ab3.

commit 7ed24292839ff311ee6412860bf5f75ca93182ad
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed May 18 14:00:52 2016 +0200

    customize: change windows firstboot path
    
    Rename the C:\Program Files\Red Hat\Firstboot folder into the more vendor
    independent C:\Program Files\Guestfs\Firstboot.

commit e82843c3209bd03f631b80dc5f66c4a7f04ef989
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed May 18 14:00:59 2016 +0200

    v2v: improve initrd search
    
    To make sure we can also find the initrd on openSUSE and SLES, we need two improvements:
     * the initrd filename may not end with '.img'
     * don't use the version + release from the RPM data, rather from the
       /lib/modules/<version>/ path as we need to find it out anyway.

commit 6141c86bdac3ead5cae9ead460bed75b32b8c87d
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed May 18 14:00:58 2016 +0200

    v2v: rename RHEL 5 Xen input section into Xen in man
    
    In virt-v2v man page the documentation on how to use RHEL 5 Xen as
    input is generic enough to fit other Xen versions.

commit ce05fe8e35cb8c075469cc6bfab0512660a54d2b
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed May 18 14:00:54 2016 +0200

    v2v: document SUSE's Xen as a working input hypervisor

commit 762778dc88fb820d91b245c5095993b4becfbfe8
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed May 18 14:00:53 2016 +0200

    customize: add support for pvvxsvc
    
    SUSE VMDP comes with a replacement for rhsrvany.exe named pvvxsvc.exe.
    Check for either one of them instead of only rhsrvany.

commit 1347ef0bc2bcde267f3f497485373a85df340e3f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 19 18:52:42 2016 +0200

    fish: generate test-prep.sh with generator
    
    Generate test-prep.sh using the generator, so the prepared disk types
    tested are the same as the ones configured in prepopts.ml.

commit b13f8e6194f03e3dc1def2541f16d0f2f53fb2b3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 19 18:12:21 2016 +0200

    tests: remove remaining relative paths to binaries
    
    Tests are run via the ./run binary, so all the binaries in the build
    directory are available via $PATH already.
    
    Followup of commit e85a976c5a474d751c6e8352370047a3177a7c45.

commit 6e44cd841467027cd85cdb7d575a6a457fc8518b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 19 17:52:32 2016 +0200

    tests: specify the image format when possible
    
    When possible, make the disk image format explicit when invoking tools
    or using add-drive. This avoids warnings from qemu about the unspecified
    format for the image, and also makes qemu slightly faster (skipping the
    disk image probing).
    Tests checking the image probing are not touched.
    
    This changes also:
    - old-style invocations of tools (`$tool $filename`) into new style
      (`$tool -a $filename`)
    - add-drive-ro/add-drive-with-if guestfish commands into add/add-drive
      with explicit readonly/iface arguments
    
    There should be no change in the tests results.

commit 6e3220566278263678efb1a1d0f9c2c1cc24fa40
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 19 17:14:52 2016 +0200

    customize: fix ownership when creating ~/.ssh/authorized_keys (RHBZ#1337561)
    
    When creating ~/.ssh and ~/.ssh/authorized_keys (in case they are
    missing), change their ownership to the target user.  If not, they are
    owned by root.

commit b8b026e6d59dc585d4ae9f9de0aae3ca7b30b860
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 19 17:07:48 2016 +0200

    customize: minor function factoring in ssh_key
    
    Turn the snippet reading user information from /etc/passwd in a slightly
    more generic function, so there is no need to copy&paste for other
    details.
    
    Mostly code motion.

commit ddf9cfd8a4bce745143108bfad0fe02ab4a876a9
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed May 18 14:00:57 2016 +0200

    appliance: skip /etc/mtab creation is already existing
    
    At least on openSUSE and SLES, the /etc/mtab file is already existing.
    Skipping the symlink creation in init removes one error message during
    the appliance boot.

commit e04b733d9a8cdefde48e86ea4feb2690f31effe8
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed May 18 14:00:50 2016 +0200

    Update packagelist for SLES and openSUSE
    
    SUSE Linux Entreprise Server doesn't have dhcpcd and the hivex package
    is not in the default repositories. Better use dhcp-client and
    libhivex0.
    
    openSUSE needs ntfs-3g and ntfsprogs packages.

commit 4bb0300212499d153cbfd7c1dbbe0bc00673c27a
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed May 18 14:00:49 2016 +0200

    v2v: also search for windows virtio drivers in symlinks
    
    To allow saving space in the package shipping the windows virtio
    drivers, we can use symlinks between the drivers folders. For example
    SUSE VMDP drivers are the same for Win8.1 and Win2012r2, one folder
    is a symlink to the other.
    
    To take advantages of this, find must use the -L flag.

commit 50f11f133249cc6b458698b90aba4a5cb9b3c29a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 19 13:21:33 2016 +0100

    p2v: Run udevadm settle when virt-p2v starts up.

commit 9e11e53b6b654b52a14d3f40258fdf58a9437903
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 20:48:48 2016 +0100

    lib: qemu: Memoize qemu feature detection.
    
    qemu feature detection takes about 95ms on my laptop.  The overhead is
    almost all due to the time taken by the glibc link loader opening the
    170+ libraries that qemu is linked to (×2 because we need to run qemu
    twice).
    
    Fixing that is seriously hard work.
    
    Therefore memoize the results of guestfs_int_test_qemu.
    
    This is keyed on the size and mtime of the qemu binary, so if the user
    changes the qemu binary (eg. setting LIBGUESTFS_HV) we discard the
    memoized result and rerun the qemu commands.  There is also a
    generation number so we can bump the generation in future versions of
    libguestfs to invalidate all previously cached data.
    
    The memo is stored in the supermin cache directory (eg. /var/tmp/.guestfs-*)
    in the files:
    
      qemu.stat     Result of 'stat(2)' of the qemu binary
      qemu.help     qemu -help output
      qemu.devices  qemu -devices ? output
    
    Note these files are only stored when using the 'direct' backend.  For
    the libvirt backend, libvirt itself memoizes this data in its own
    place.

commit ab8047f5d2d4d6e008bdbc91be209b82cc7d6917
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 19:01:46 2016 +0100

    lib: Move qemu testing code to a new module called 'qemu.c'.
    
    This is code motion, but I have cleaned up and formalized the
    interface between this module and other parts of the library.
    
    Also this adds documentation to the interface.

commit c8f87d2cb510902ab9b8ba32e2f7103ccda84e3e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 18 18:06:51 2016 +0100

    launch: direct: Capture and display maxrss of qemu subprocess.
    
    The maxrss is described in getrusage(2) as "This is the maximum
    resident set size used (in kilobytes).".  This lets us find out how
    much memory qemu really used, and is useful for determining if memory
    minimization techniques such as DAX are having any effect.

commit 270bb4c2daf86a23859f748202694eb4749adcda
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 18 17:25:28 2016 +0200

    drives: force format=raw for /dev/null dummy drives
    
    When creating the dummy scratch disk for a /dev/null drive, force its
    format as raw if it was not specified already.  After all, raw was
    already the only format allowed for this kind of drives, so it makes
    sense to specify the format explicitly and avoid the autodetection in
    qemu.

commit 950597c4e18ba662d49d0e84ab598c0f04532dcf
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 17 15:24:27 2016 +0200

    inspect: switch to version struct for os major/minor version
    
    Use the version struct in inspect_fs to hold the version of a
    filesystem, adapting the inspection code to that.
    
    Also, move the parts of the version parsing to helper functions of the
    version struct, so common bits like parsing "X.Y" or "X" version strings
    is done only once.

commit 9a2add8d175c84f4092f3eb372721b17edb7ffb7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 16 16:59:43 2016 +0200

    src: start unifying version handling
    
    Introduce a new struct version with few helper functions for it: this
    allows to "atomically" represent a version number, without different
    variables to be used and checked together.
    
    Add a initialization function from a libvirt-style version number, and
    apply it for the qemu and libvirt versions in the direct and libvirt
    backends.

commit 3b7ee45aa8b794ca53464ad90b102b8e9d95596c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 21:31:44 2016 +0100

    Version 1.33.29.

commit 873148a87f90fb7ce53a685bffe36a81b8104d9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 15:34:42 2016 +0100

    utils: boot-analysis: Make insmod message handling a bit more robust.

commit 991b8cf0f2c9052b1abc38effd3301ec4f62159b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 13:20:14 2016 +0100

    appliance: Find udevd a bit faster.
    
    Rearrange the paths that we check for udevd so that the systemd paths
    are first.  Break from the loop as soon as we find udevd.

commit 5150dcbc5c7c3f928274406a5f1a6769ee7ff578
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 16 22:29:58 2016 +0100

    appliance: Reenable ACPI.
    
    Previously I disabled ACPI because it was not necessary and was slow.
    However measuring it again now, I can see no significant difference in
    performance, and it is necessary if we are going to use DAX.
    
    It's also useful to keep the appliance kernel state as similar to the
    ordinary state, and setting acpi=off is a massive change to the way
    that the kernel boots.
    
    Therefore, reenable it.

commit f1ca29fc83c2dd1105d56d3528eeabe7acbbf833
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 21:25:28 2016 +0100

    appliance: Move code for creating supermin appliance directory to tmpdirs.c.
    
    This is largely code motion.

commit e0d95150d69df627700cb2f87de280d31c7de93c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 21:17:12 2016 +0100

    src/tmpdirs.c: Add internal documentation.

commit fb822d035d3c8edbf54d2b7b354589402a00b9cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 16 18:22:07 2016 +0100

    launch: direct: Simplify -machine parameter.
    
    Use the ADD_CMDLINE_PRINTF to simplify this code.  No functional
    change.

commit eaa1ac3744a02467c8d792ee1aa61ae55c54ae13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 16 18:16:30 2016 +0100

    launch: direct: Break some long source code lines.
    
    Just cosmetic, no functional change.

commit 94716d6fb7f454c4aad98881cb17f4ac205a2aa0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 16 14:23:07 2016 +0200

    btrfs_filesystem_show: work with btrfs < 4.3.1
    
    Versions older than 4.3.1 output also the version string after the
    output.  Ignore such line, since it isn't relevant to what
    btrfs_filesystem_show needs.

commit 2c66134fea2f16978082908135c701dad13f1873
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 16 07:22:20 2016 -0400

    inspection: Unquote UUID=.. or LABEL=.. before passing to findfs (RHBZ#1335671).
    
    In /etc/fstab the UUID= or LABEL= field may be quoted.  Augeas returns
    the field including the quotes, and we passed this directly to
    guestfs_findfs_uuid or guestfs_findfs_label.  It happens that this
    works on upstream findfs, although it doesn't work in RHEL 7.2.  The
    correct thing to do is to remove the quotes before passing the UUID or
    label to these functions.
    
    Thanks: Thom Carlin for reporting the bug, Karel Zak for identifying
    the change in behaviour in util-linux.

commit 39cc88194ad8b313e6b04510b69cd1355e096d84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 16 07:19:49 2016 -0400

    v2v: Move the shell_unquote function to src/utils.c.
    
    This function is useful outside virt-v2v so move it into the core
    utilities library.
    
    The function has been rewritten from OCaml into C, but it should be
    functionally identical.

commit 115e0715fadb2f23dfb24ae9777d486209c255a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 16 07:19:22 2016 -0400

    build: Fix missing +=.
    
    noinst_DATA is defined earlier in the Makefile.am, so we must
    use the += operator to append to the previous value.

commit eacb96aea1e2ec5b103480385863a89bb2e2af25
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 14 23:41:59 2016 +0100

    mllib: Update documentation for qemu_input_filename.
    
    Don't describe internally how the function works in the
    public interface documentation, since that is misleading.

commit 4ab472b75cf2b49adb38112dbb2c76e239ecc81b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 14 19:22:49 2016 +0100

    utils: boot-analysis: Avoid overflow when comparing large doubles.

commit 071fdf075ccf235fdc934228828822d87e08a2c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 14 18:45:25 2016 +0100

    utils: boot-analysis: Add magic & asserts to some structs.
    
    I suspected data corruption (but didn't prove it).  This commit just
    adds some magic numbers to the structs so we will see data corruption
    quickly if it happens again.

commit 7f5ff74291c0d9da175433b74bc8db9723129c0f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 15:48:22 2016 +0100

    launch: Use tsc=reliable.
    
    This saves about 21ms per secondary CPU when using guestfs_set_smp.

commit ce3b0b692010db754e4f1a7cbf77409a5cbb98f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 10 21:53:59 2016 +0100

    utils: boot-analysis: Make handling of first kernel message more flexible.
    
    Allows us to disable EDD completely, and still have boot-analysis work.

commit ca65495400a359b7905f295e528f3aa3833abf9e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 16:51:53 2016 +0100

    appliance: Copy /etc/ld.so.cache from the host into the appliance.
    
    Previously we were running ldconfig to create /etc/ld.so.cache.
    
    This is required, at least on Fedora, if we need to run any binary
    that uses a library with a weird path.  libiscsi (a dependency of
    qemu-img, used by virt-dib) is an example of such a weird library,
    since it puts its single library into /usr/lib64/iscsi for no readily
    understandable reason, and drops a configuration file into
    /etc/ld.so.conf.d/ so that this new directory gets picked up.
    
    By copying the /etc/ld.so.cache from the host we get an already
    configured cache which should contain every library on the host, so
    there is no need to run ldconfig.

commit 57345a8607674b1d56c8e2db869d1f0857269866
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 16:24:10 2016 +0100

    Revert "appliance: init: run ldconfig"
    
    Running ldconfig adds about 100ms to the boot time.  I would prefer
    that we understood which libraries need ldconfig to be run, and fix
    that.  We could also consider running ldconfig in parallel, but since
    it might be required by just about any binary that the init script
    runs it's not clear what benefit that gives.
    
    This reverts commit 66aa98265dd215dcd4c717e7ef6845fbac859e54.

commit c3adbcdd6ade67bb84fb7c40a04763b8e98251f7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 12 17:14:11 2016 +0200

    New API: btrfs-filesystem-show (RHBZ#1164765)
    
    Add a new API to list all the devices where a btrfs filesystem is
    spanned.

commit b434001e4515d7b6d9972ad18e9af94e587f851b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 10 15:11:53 2016 +0200

    builder: run/schedule a SELinux relabel if needed
    
    If the guest uses SELinux, then make sure to run a relabel (or at least
    schedule one) after the image build: this way the template is
    relabelled, or at least it will do that at the next boot, without the
    need for the user to ask for a relabel.
    
    This just covers the case of building a new image with no additional
    operations on it though.

commit 70ebf5002dd3b4743bd7ccbf81fd7c91f9fcd36b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 10 12:17:28 2016 +0100

    boot-analysis: Flush out debug data after printing it.
    
    Just makes it easier to see bugs causing the analysis stage to
    hang / infinite loop.

commit abce7066ccb39d9a8eac12053624a6f6ea21ca85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 10 12:16:36 2016 +0100

    boot-analysis: Make ftrace optional in the timeline.
    
    This allows me to test minimal kernels with ftrace disabled at
    compile time.

commit 80225e9f4f52986ebaef3f6dfab26a1d8b517ed5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 9 12:19:16 2016 +0100

    utils: boot-analysis: Fix minor typo in string.

commit 942c5b1cc5b8aa1bb685ebe0196a1aa8aa8c8930
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 9 10:10:36 2016 +0100

    Version 1.33.28.

commit d6e317c4b65f6e9aa279d071401eb18b9c141ba3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 9 09:14:25 2016 +0100

    src/utils.c: Update comment.

commit eab818f868013757ad98e19f764b8ab264be4993
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 6 11:40:08 2016 +0200

    perl: use INT2PTR macro for casting back to guestfs_h * (RHBZ#1150298)
    
    Use the right macro, which should avoid the warnings seen with Perl
    headers on some architecture.

commit a2fd174e05fc500842b294a1045db23eb3d13e5a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 8 20:48:58 2016 +0100

    fish: Add internal documentation to several files.

commit a0cbd11b0de08149d5c57a34969a76b554e984e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 7 12:44:39 2016 +0100

    lib: Rename test-utils -> unit-tests.

commit 891199b05ead8427f5ff784278f1e3ee44ed8366
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 7 09:20:55 2016 +0100

    lib: Add more unit tests.
    
    Add unit tests for the following internal functions:
    
     - guestfs_int_getumask
     - guestfs_int_new_command and other src/command.c functions
     - guestfs_int_qemu_escape_param
     - guestfs_int_timeval_diff
     - guestfs_int_match, match1, match2
     - guestfs_int_add_string and other src/stringsbuf.c functions
    
    Because we now need to use a libguestfs handle, we have to link the
    unit tests to the library.  But because we also need to access the
    internal functions (to test them) we need to link the test statically
    to the objects making up the library.  So this requires a small change
    to the linking of this test too.

commit 22fbc439d9f5b422d49284a3fc348ec0461a5f0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 7 12:40:44 2016 +0100

    src/stringsbuf.c: Add internal documentation.

commit d64ac0c212f4f4a846a960f555181fa257ea7b44
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 7 07:47:25 2016 +0100

    src/test-utils.c: Add internal documentation.

commit 3e92d87a9a8a01ece5e09c919ddbd990311bd0fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 7 07:44:47 2016 +0100

    src/conn-socket.c: Add internal documentation.

commit ac0df95adcaeb0808fa6a85844c6305432fde0a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 7 07:38:24 2016 +0100

    src/whole-file.c: Add internal documentation.

commit bfa6571fb0b30ac31ad12394dfd8323d28239bfb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 5 22:54:34 2016 +0100

    src/command.c: Add documentation markup.

commit e08091537ee61984105850f6b33e634094ed4a11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 5 22:35:45 2016 +0100

    lib: Turn qemu_escape_param into a shared function.
    
    This function appeared twice (identically).  Turn it into a single
    shared function.
    
    This also adds some documentation for the two files affected.

commit c458b5cff21d369ed537358deddb94a90ff76bc4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 5 17:53:31 2016 +0200

    inspect: check also /etc/hosts for detecting Linux root (RHBZ#1203898)
    
    Use /etc/hosts as alternative of /etc/fstab to detect whether a partition
    represents the root of a Linux installation; the latter might not exist
    in smaller/special installations like Docker images.

commit 59a3d142de84f208b379394044664f623c91584f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 5 16:09:35 2016 +0200

    python: use constants instead of raw values
    
    Extend the internal libguestfsmod module with the CREATE values, so
    there is no need to hardcode values in GuestFS.__init__.

commit 96b71ac1b8f24965635eacc722ad7778274a4d34
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 5 14:25:28 2016 +0200

    tools: improve reporting for option errors (RHBZ#1316041)
    
    Improve the error messages produced by C-based tools in case of issues
    with the command line options:
    - explicitly mention to use -a/-d (and -A/-D in virt-diff)
    - when extra arguments are found, mention the correct way to pass
      options to certain command line switches (like --format)
    - in virt-inspector, give a cleaner error message when neither -i nor
      any -m is specified
    
    In all the cases, keep the extra notice to use 'TOOL --help' to get more
    help with it.

commit 19863f5b8680a37608ca2ac73b212bfab82baaf4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 4 18:20:20 2016 +0100

    Version 1.33.27.

commit a6cdba55ba23b9636e40e502f1e424d225b98087
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 4 18:16:26 2016 +0100

    utils: Add README to EXTRA_DIST.
    
    Updates commit 3b581a727c9e906f9d9b10e2f73ed853ab324fd0
    and commit bbec1b570b8b1edff7f2a39b0b86d625445dbaf2.

commit 8b3065f8fc226cc06e0358751c5c766deb1cff83
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 4 15:54:22 2016 +0200

    python: PEP 8: miscellaneous coding fixes
    
    python/guestfs.py:136:37: E712 comparison to True should be 'if cond is True:' or 'if cond:'
    python/t/tests_helper.py:42:8: E713 test for membership should be 'not in'
    
    No functional changes, as the new versions follow the suggested Python
    coding style to do the same things.

commit 26d32fdb54f67ea659d63c73d03c88324b6158c1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 4 15:47:41 2016 +0200

    python: PEP 8: avoid whitespace-only lines in docstrings
    
    Tweak the docstring generation to avoid lines with only indentation
    spaces.
    
    No functional changes, only whitespaces removals.

commit 4697b2afa0f06c419fbd4d3f2cbf04ee3f97f4c2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 4 15:18:21 2016 +0200

    python: PEP 8: miscellaneous indentation fixes
    
    Small fixes for few remaining indentation issues.
    
    No behaviour changes.

commit 9182702386283a5bafcb5c0ec43bf46cc6d35ca8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 4 15:13:06 2016 +0200

    python: PEP 8: avoid too long lines
    
    Reindent Python scripts to make sure lines are not longer than 80
    columns.
    
    Regarding autogenerated code (guestfs.py and bindtests.py): add an
    helper function to make sure comma-separated lists are wrapped at the
    wanted length.
    
    This produces only differences in the indentation of long Python lines,
    with no behaviour changes.

commit a912fe47b50159c27c48de6c78d8485ba73e293a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 4 13:22:10 2016 +0200

    python: PEP 8: break compound statements
    
    Avoid compound statements, simply indenting their blocks.
    
    No functional changes.

commit 903520c8df41301bbbfa77db03097344ed732b92
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 4 13:13:58 2016 +0200

    python: PEP 8: remove trailing semicolons
    
    Remove extra semicolons at the end of single-statement lines.
    
    No behaviour changes.

commit 30173298bac07de9dfdfceaab5dcf47d36261ab3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 4 13:06:11 2016 +0200

    python: PEP 8: adapt empty lines
    
    Add or remove empty lines to match the needed ones around
    blocks/functions/etc.
    
    This is just formatting, no behaviour changes.

commit 1a71ad40c38c8d7aa4d196dc5649a0ab006b2c91
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 4 12:38:44 2016 +0200

    python: PEP 8: adapt whitespaces in lines
    
    Add (after comma) or remove (before opening round bracket, and around
    '=' in arguments) whitespaces according to the PEP 8 specification.
    
    This is just code reformatting, with no behaviour changes; no content
    changed beside whitespaces, so "git diff -w" gives an empty diff.

commit ad19f0d699ebfe7c1627a55e88cfea18e41491af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 4 16:41:15 2016 +0100

    docs: Document CVE-2015-8869 OCaml code gen bug.

commit eb0870f3d1bbc4ef4ee04fc93d9283bb060f97b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 4 13:57:53 2016 +0100

    customize: Improve the error messages when package manager is unknown or unsupported.
    
    For Windows, we now print:
    
    $ virt-customize -a ./test-data/phony-guests/windows.img --install MSSQL
    [   0.0] Examining the guest ...
    [  14.2] Setting a random seed
    virt-customize: warning: random seed could not be set for this type of
    guest
    [  14.2] Installing packages: MSSQL
    virt-customize: error: cannot use '--install' because no package manager
    has been detected for this guest OS.
    
    If this guest OS is a common one with ordinary package management then this
    may have been caused by a failure of libguestfs inspection.
    
    For OSes such as Windows that lack package management, this is not
    possible.  Try using one of the '--firstboot*' flags instead (described in
    the manual).

commit 023c209df14ad28e440e879cbffb4890e60db711
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 4 13:39:01 2016 +0100

    inspection: Set package manager to "unknown" if parsing major version failed (RHBZ#1332025).
    
    In cases where parsing the release file failed and so we have an
    obviously incorrect major version number, don't try to infer the
    package manager from the major version number.
    
    In the bug report, parsing the /etc/redhat-release file of a CentOS
    7.1 guest failed, so major version was set to 0, and the package
    manager was inferred as "up2date".  virt-customize then failed with a
    peculiar error:
    
      virt-customize: sorry, don't know how to use --install with the 'up2date' package manager
    
    Instead this sets it to "unknown" which will cause virt-customize to
    fail with:
    
      virt-customize: --install is not supported for this guest operating system
    
    which is (only very slightly) better.
    
    Problem reported by novegin on IRC.

commit 9058d8a9cb0b91b39b960c04c667760df8266be0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 21:25:54 2016 +0100

    Tag versions with "v<VERSION>" instead of just the version number.
    
    This is the normal convention used for tagging git releases.

commit 9821621795f805cc0c9611c425348707e3fd00aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 23:06:08 2016 +0100

    docs: Fix cross-references in guestfs-security(1).
    
    Fixes commit 15b8b6453dbeaca0283e68ff433191c8211d5f92.

commit 0173afd0b7c61e5736a2bb99ec8abfc6eee1bcee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 4 09:56:43 2016 +0100

    p2v: Fix misleading string in error message.

commit 34efb56e57a6c7231ddd1cb07ec580008c2ca56f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 22:53:41 2016 +0100

    docs: Link to correct building instructions from guestfs-hacking(1).
    
    No longer in the README file.

commit 43eebcda70a486acc1e897f4c00881030ec9132a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 22:46:08 2016 +0100

    docs: Improve the internal documentation in guestfs-hacking.
    
    Several mostly cosmetic changes.

commit 493ebe6ca46c37aad4d787a6c185eacf38009c09
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 21:50:35 2016 +0100

    docs: Move internal documentation to guestfs-hacking(1).
    
    All developer documentation should go in guestfs-hacking(1) and the
    "internal documentation" (ie. documentation about internal functions
    and interfaces) belongs here, not in the coincidentally synonymous
    guestfs-internals(1).

commit c3d89f415b0a2e5af0b86fcda47c27e753b2aac2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 21:47:11 2016 +0100

    utils: Add a README file describing briefly the purpose of this directory.
    
    .. and where to find the real documentation.
    
    Updates commit 3b581a727c9e906f9d9b10e2f73ed853ab324fd0.

commit f7f2be7c0f493e65023e517a0c98687caa4d55f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 14:49:59 2016 +0100

    Version 1.33.26.

commit 60198724a77603ea34abae6da79ee6e20dd2725a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 14:37:09 2016 +0100

    po: Use xgettext --from-code=utf-8
    
    Since moving boot-benchmark-range.pl out from under a tests/
    subdirectory, it is now being added to po/POTFILES.  This causes the
    following error:
    
    /usr/bin/xgettext: Non-ASCII string at utils/boot-benchmark/boot-benchmark-range.pl:205.
                       Please specify the source encoding through --from-code.
    
    Add --from-code parameter as instructed.

commit 30618ab05e3dafd4725cfbf888fb6d5e894ea3a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 14:13:01 2016 +0100

    Version 1.33.25.

commit da14d144d8185a266b8cbc14892a0f21195537fd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 3 13:54:20 2016 +0200

    customize: remove "core" from description of --update
    
    --update invokes a distribution update, updating all the installed
    packages and not just some "core" ones.

commit c99237aa0aa4bd1d98685ef034eb22416fdd1604
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 3 13:20:13 2016 +0200

    mllib: add "internal" to the description of --{short,long}-options
    
    The Arg module of OCaml does not support hiding options from the --help
    output: hence, mark --short-options and --long-options as internal
    options, since we need them only for the bash completion scripts.

commit 9a86f7f81aec8cc8fd65c12ca56a3adda17a8dc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 13:14:47 2016 +0100

    build: Don't use noinst_MANS.
    
    Automake doesn't run noinst_MANS rules at all, likely a bug.
    
    Use noinst_DATA instead which is always run during the build.

commit 709ccd0e55e9d70a477ab071895b0dccf49b3296
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 13:05:54 2016 +0100

    utils/boot-analysis, utils/boot-benchmark: Add manual pages.

commit 563d5ce43d26add4adf1302a6178313929f175b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 11:53:57 2016 +0100

    utils: Move tests/qemu/ boot-analysis etc tools to new utils top level directory.
    
    Create a new top level directory called 'utils' and move the
    following programs there:
    
      tests/qemu/boot-analysis -> utils/boot-analysis/
      tests/qemu/boot-benchmark -> utils/boot-benchmark/
      tests/qemu/qemu-boot -> utils/qemu-boot/
      tests/qemu/qemu-speed-test -> utils/qemu-speed-test/
    
    Also we only build the boot-analysis program on x86-64 and aarch64,
    since it requires custom porting to each architecture.

commit d5abc604cc0d2aed206546f0b29a6c31d6890438
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 12:49:00 2016 +0100

    launch: Add cryptomgr.notests to the appliance command line.
    
    Save 28ms by not running the crypto self-tests when Linux boots.

commit 9b0a996fa5e9cd02f6822d845d13abe212664c06
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Sun Apr 24 15:05:02 2016 +0100

    php: Fix the tests yet again.
    
    Move unsetting of LIBGUESTFS_DEBUG & LIBGUESTFS_TRACE into the
    php-for-tests.sh wrapper.
    
    Fixes commit 0d69eab98f0bd5dd2d218ce5adcafdeb13f9d90d.

commit 81b9b3b8cef7cad1f23c4e876d4f65b85ee4590a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 3 10:35:37 2016 +0100

    Revert "php: Fix the tests ... again."
    
    This reverts commit 0d69eab98f0bd5dd2d218ce5adcafdeb13f9d90d.

commit c6dda6cb420315121c4326520a40ccebf24544b8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 3 13:03:45 2016 +0200

    appliance: move btrfs-progs as common package
    
    Recently Debian switched to btrfs-progs, so almost all the distributions
    (except openSUSE) have btrfs-progs which is then moved as common
    package.
    The old btrfs-tools name is left there, to support Debian Jessie and
    older, and Ubuntu Xenial and older.

commit 543e610a40f3735df98051ea05b658a99b1400b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 17:20:39 2016 +0100

    Version 1.33.24.

commit bf7956966127dea3e01ca64a36ce14534d4537bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 16:41:31 2016 +0100

    tests/qemu: boot-analysis: Display libvirt as distinct source.
    
    Don't display libvirt events as '[library]', but as '[libvirt]'.

commit 3cbe815c0a82cabebf360c2408b0bedd8b8f1fda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 16:02:30 2016 +0100

    tests/qemu: boot-analysis: Dump pass data times in ms, with diffs.
    
    When (in --verbose mode) we dump the pass data, dump the times in
    milliseconds (instead of nanoseconds) so they are consistent with
    other output.  Also dump the time difference from the previous event.
    
    Useful for detailed debugging/analysis of problems.

commit 56e8bbe527ead87347b026e1d085f82b8a8cf603
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 15:42:57 2016 +0100

    aarch64: Use AAVMF_CODE.verbose.fd when debugging is enabled.
    
    When we are debugging use the verbose (debug messages enabled) version
    of the AAVMF (UEFI) firmware.  This is useful for diagnosing what is
    causing failures to boot and what inside UEFI is causing slow booting.

commit 9aa39765b5336771a3215af232acfc11e0b74892
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 15:24:17 2016 +0100

    v2v: Add unit tests of the Utils UEFI functions.

commit b20e1393ec95bf2e15cf1e51ab2599b826b1daa0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 15:16:04 2016 +0100

    utils: Use struct for UEFI firmware.
    
    Use an array of structs for the UEFI firmware instead of an array of
    strings.
    
    This change is hopefully just refactoring and there is no functional
    difference.

commit 99b4832010c6a2cffa74288d62d944a50475c87c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 12:48:42 2016 +0100

    appliance: Add pciutils to the appliance.
    
    This adds the 'lspci' program, useful for debugging
    appliance / qemu problems.

commit 75f59e2de6f7443709597843f467c31157157c9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 28 22:37:04 2016 +0100

    launch: Don't initialize all UARTs (serial ports).
    
    This doesn't save very much time, perhaps under 1ms, but it avoids
    some useless scanning.

commit 46f3f4d25a246c92b3e69e2be1242edf68bb976d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 28 15:58:05 2016 +0100

    launch: libvirt: Add a /dev/urandom-based virtio-rng device to the appliance.
    
    It is safe to use /dev/urandom to seed the guest.  In libvirt 1.3.4
    this silly restriction has been lifted.
    
    This restores commit b2c845333f66d4d3135d3b6a8d4b992d6160bf0a.
    See also commit 9423c16607259b30985c46d04db9958ec079aa42.
    
    Thanks: Cole Robinson for doing the libvirt implementation.

commit 8f7f7da6928b779c636bb5efc40f31b5c72a738d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 28 15:57:10 2016 +0100

    launch: libvirt: Add libvirt version to the data struct.
    
    This commit just allows us to make XML features conditional on the
    libvirt version, but has no other functional change.

commit fa3171e8e2619f8d3faf02820936894c6e5c278a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 28 14:12:23 2016 +0100

    launch: Disable USB in the appliance.
    
    Only saves a tiny amount of time, but as we don't use USB
    we might as well disable it.

commit 0b52a6c77f16dd8aae72bae1ef7920d2f6da99d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 27 16:37:57 2016 +0100

    ocaml: Add LDFLAGS to mlguestfs.cma/mlguestfs.cmxa.
    
    Encode the build LDFLAGS into the OCaml library.

commit fc9d31f948e9323b507022e7f36e66955be95d0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 26 12:43:24 2016 +0100

    v2v: Add a slow test to ensure trimming doesn't regress (RHBZ#1264332).

commit 9b26705b9c38cdf528254122f466af36b043d73a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 26 12:27:14 2016 +0100

    v2v: OVF: Better mapping for inspection data to vmtype.
    
    The old mapping code was directly copied from old virt-v2v, translated
    from Perl to OCaml.
    
    The new mapping code does a few things more accurately:
    
     - Use the i_product_variant field (Windows InstallationType) if available.
    
     - Simplify rules, so there is only one special case needed for RHEL 3/4.
    
     - Don't assume Fedora == Desktop.
    
     - Don't assume all later Windows variants are server.
    
     - Works for Windows > 7.

commit 6086c0ffcfd98745af91b6a2c0422c379c314afc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 26 10:41:39 2016 +0100

    v2v: Remove the --vmtype option.
    
    It will now print a warning but is otherwise ignored:
    
      virt-v2v: warning: the --vmtype option has been removed and now does
      nothing
    
    See:
    
      https://www.redhat.com/archives/libguestfs/2016-April/msg00178.html

commit 740c5b10cb5bcaa3b6140d1cc9e983922e39fc8f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 26 10:27:41 2016 +0100

    v2v: Remove --no-trim option.
    
    It will now print a warning but is otherwise ignored:
    
      virt-v2v: warning: the --no-trim option has been removed and now does
      nothing
    
    See:
    
      https://www.redhat.com/archives/libguestfs/2016-April/msg00178.html

commit 86c8a1f02d32db54f746d6024d6f0540b274d9bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 12:45:54 2016 +0100

    tests/qemu: boot-analysis: Port this program to aarch64 (using UEFI).

commit f0cb88928cc28b19a3e0d8bcc8972d6e1bd9d897
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 28 13:33:51 2016 +0100

    tests/qemu: boot-analysis: Add analysis of initcalls before entering userspace.

commit d09f51349f9bf5b6daffa90a34e6ded76d4f6ba1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 24 19:20:56 2016 +0100

    Version 1.33.23.

commit dd5c1185fe73945d79fb47979d5048c3dbff0425
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 24 19:00:03 2016 +0100

    tests: Add tests/qemu/boot-benchmark-range.pl to EXTRA_DIST.
    
    Updates commit 8299d7087a6457828a57ecace54c01b73912a9c7.

commit 105b12d87f11375357500f8969eb83533423ffcb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 24 15:47:53 2016 +0100

    ja: Fix unclosed L<> which breaks POD.
    
    Since commit b23e1497747f1cdfdedfd0567e7748fdc3ae0684, we have been
    strict about POD errors.  An error in the Japanese translation caused
    "L</guestfish" (ie. an unclosed L<>) to appear in the POD.
    
    This commit fixes the problem, but when building you may need to do:
    
      rm po-docs/ja/guestfish.pod
      rm po-docs/podfiles; make -C po-docs update-po
    
    in order to update the broken po-docs/ja/guestfish.pod file.
    
    Unfortunately I have been unable to upload this change back to the
    Zanata servers because of a variety of client problems.

commit 8b42598dbe021ed81c6669b606c97cd4a0075eac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 24 15:35:10 2016 +0100

    podwrapper: Remove output file on failure.
    
    Otherwise we end up generated a bad output file and (in some cases)
    continuing the build.
    
    Updates commit b23e1497747f1cdfdedfd0567e7748fdc3ae0684.

commit b55a1bb5b76f411e6ed0df76a9ce958fc8770995
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 24 15:05:02 2016 +0100

    php: Fix the tests ... again.
    
    PHP (5?) renamed the PHP_EXECUTABLE variable to TEST_PHP_EXECUTABLE.
    As a result of that if you enabled debugging, the tests broke because
    we no longer used our custom PHP wrapper to filter out debugging
    environment variables before running the tests, so debug output was
    mixed with the expected output.
    
    This commit also updates an old comment telling you how to debug PHP
    tests.

commit 8bc45e14a74d7c264438fc7c36792d87dfa88191
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 24 12:00:10 2016 +0100

    v2v: target_bus_assignment: Assign removables with slot pref first.

commit a20e9301a2b06eb6c7795ab92f990066b6c34ba5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 24 11:36:20 2016 +0100

    v2v: target_bus_assignment: Various refactorings.
    
    No functional change.

commit 886c6b45039e6fa5b4743df365cd6cb9a6680e1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 24 11:33:28 2016 +0100

    v2v: Assert fail if we overwrite an existing disk in a bus slot.
    
    Prevents us from accidentally "losing" a disk during conversion.  I
    believe from code inspection that this assertion is always true for
    the current code, so this should have no effect.

commit d0c6412f2878e8a537ef84b1104741fdb115ac14
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 23 18:15:19 2016 +0100

    v2v: Move target_bus_assignment to separate module.
    
    This is just code motion.

commit 25788a150cee6a7abd117bd88a56156cc8d3789b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 23 18:15:19 2016 +0100

    v2v: Move inspect_source to separate module.
    
    It's a large feature / function with its own set of nested functions,
    so move the inspect_source function into its own module.  It also lets
    us specify and document the interface explicitly.
    
    Also: Define a root_choice type in Types module.  I turned it into a
    non-polymorphic variant type for extra type safety.
    
    This is just code motion.

commit fe33cc043f498610457afc8e19a1a4737f960be4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 23 18:02:31 2016 +0100

    v2v: List SOURCES_MLI in alphabetical order.
    
    Fixes commit 01ede002dbb9333358b336c9cb9c33afce1a19f8.

commit a9a81ebf3342a3adc5c18bafcfaee4e47bd72662
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 23 14:26:58 2016 +0100

    v2v: Commenting and refactoring changes.
    
    - Add headings, further documentation to the Types module.
    
    - Move two type definitions in Types module.  Not a functional change.
    
    - Add more comments and clean up comments throughout v2v/v2v.ml.
    
    - Refactor guestcaps / conversion in v2v/v2v.ml.  Not a functional
      change, just hides local variables from the rest of the code.
    
    - In --in-place mode, change inspection message to 'Inspecting the
      source VM'.  This matches the later message 'Closing the source VM'.

commit 4981a656abb7dd377dad9f5259b2851afa3f4cbd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 23 14:48:27 2016 +0100

    v2v: Move 'du' function to Utils module.
    
    Just code motion.

commit 948b29c63b6c382aa0b37d63b4b3334ceaaade0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 22 16:32:24 2016 +0100

    tests: Add boot-benchmark-range script.
    
    Add a script we can use to benchmark performance across a range of
    commits in another project.

commit e88fffa122b7957f21317c261b3b7044d05a374e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 22 14:52:03 2016 +0100

    tests: boot analysis: Add text to describe how to change settings.

commit 39a19179594a015a16a2f015206def84c76ccf6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 22 16:37:40 2016 +0100

    docs: Fix use of getopt and pod2usage in make-internal-documentation.pl.
    
    Fixes commit 04229c68d60ce1437b6c1fbee95f23bc12d5cb55.

commit 1dabfcd259cb2badc06b88021362d1e052d59d06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 22 09:03:48 2016 +0100

    podwrapper: Send errors to stderr and die if any errors seen.
    
    Enable a few POD options:
    
     - Don't generate an errata section in the output.
    
     - Send errors and warnings to stderr.
    
     - Die if any errors or warnings are seen while generating the outputs.

commit 59ed93671d9e61c704a9efaadd8f17603c9fc36e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 21 13:41:52 2016 +0100

    builder: Add Ubuntu 16.04 (Xenial) image.

commit 994e037b2a25f12fa1f8631712f4dda1d5a49c0f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 21 13:41:00 2016 +0100

    builder: ubuntu: Lock the 'builder' account that we have to add to the template.

commit 1d2091b2cfbdbd65a3b8449ed6d5d439eeed5ef9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 21 13:40:37 2016 +0100

    builder: ubuntu: Fix URL of archive.ubuntu.com.
    
    The archive.ubuntu.net address appears to work only intermittently.

commit 514b3af2c825f23f3532fe305701e9537061d959
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 21 12:50:58 2016 +0100

    tools: Reduce use of _ (wildcard) in match statements.
    
    No functional change, just various improvements to the safety of match
    statements.

commit 09c43450dc2293e71b25d563c40f44f07d5dac13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 21 12:40:18 2016 +0100

    sparsify: Refactor handling of checks of copying mode / --in-place.
    
    Just refactoring, no change.

commit ffa0930430831f712ba62ec05a059e6c2f3d85cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 21 12:05:01 2016 +0100

    dib: Rewrite match statement as ordinary if statement.
    
    Just stylistic change, no functional change.

commit 9749dad5ba1457afcb4f8116269dccb9f4aa0f3e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 20 22:47:09 2016 +0100

    mllib: Add documentation to Common_utils, JSON and Mkdtemp modules.

commit 6edb7a6bedffd51588d3d12ac415c9cd8561cc2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 20 21:55:36 2016 +0100

    mllib: Rename uRI -> URI.
    
    There is no difference in the OCaml module name, which remains 'URI'.

commit 4bf5049a72dab76ddde76b775c27e85718aaa1ce
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 18 14:43:26 2016 +0200

    launch: direct: specify format for appliance drive
    
    The drive used for the appliance is a raw (sparse) disk: specify that
    explicitly in its -drive qemu command line options, so qemu can skip the
    autodetection of its format and save a tiny bit of time.

commit 7d7f7ddc8cdc6f547ee961759176a9240bf2f0a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 18 14:40:29 2016 +0100

    p2v: Allow p2v kernel options to override GUI configuration (RHBZ#1327488).
    
    Allow kernel options such as p2v.o=libvirt to override internal
    defaults, even for GUI configuration.
    
    The main change is to split up the kernel conversion into two steps:
    reading the kernel command line configuration, and performing the
    conversion.  The kernel command line can then be read by the main
    program and used to initialize the config structure for either kernel
    conversion or GUI conversion.
    
    A small adjustment is required in the test because p2v.pre no longer
    runs before kernel command line parsing.  (The aim is to have
    p2v.pre/post/fail still only run when doing a kernel conversion, not
    in the GUI case.)

commit 8369ec6eed02097c142dfd208844aef3c4ffecfb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 17 09:54:47 2016 +0100

    Version 1.33.22.

commit 12612d36e4125aec14c5c0f80e672f204e41b367
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 17 09:49:28 2016 +0100

    valgrind: Ignore another glibc "leak".
    
    See commit 74b604d7e65eb615f15a33e53cf96f6a3349a1dd.

commit 6af170fbf7ff7e6c2864c09f1bcc912496b258af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 16 19:31:47 2016 +0100

    Version 1.33.21.

commit 17c019c44ebfdeab3c8182b11fccdf9c26b9018a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 16 19:01:11 2016 +0100

    tests: Fix 'make check-slow'.
    
    Since we started to use the parallel tests framework in automake,
    'make check-slow' has been broken.  This is because parallel tests
    doesn't allow you to run 'make check TESTS=...' with a set of test
    scripts which do not also appear in the static list of tests in the
    Makefile.am.  We would like to list and run only "fast" tests in the
    Makefile.am, and have other scripts for slow tests.
    
    The solution is to add the slow tests to Makefile.am, but condition
    those tests on an environment variable SLOW=1 being set.
    
    This commit fixes all the existing slow tests in this way, and updates
    the documentation (guestfs-hacking(1)) to document how slow tests
    should be written in future.

commit aeea3b340114fdfd9030c095dac353b6cc30174a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 16 19:21:17 2016 +0100

    v2v: Also check Fedora 23, RHEL 7.2 conversions in check-slow.

commit 0368b15d196c7c39d505afd8bffe0ef4e91c64f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 15 17:23:19 2016 +0100

    valgrind: Use --run-libc-freeres=no.
    
    Valgrind has a weird hack where it invokes a glibc function called
    __libc_freeres on exit.  See:
    
      http://valgrind.org/docs/manual/faq.html#faq.exit_errors
    
    This is intended to free up memory that glibc won't normally free
    (since glibc doesn't free everything on exit for efficiency reasons).
    
    More importantly, valgrind runs __libc_freeres even if the process
    calls _exit, resulting in this bug:
    
      https://bugs.kde.org/show_bug.cgi?id=361810
    
    (either a bug in valgrind, or in glibc, or in both, depending on your
    point of view).
    
    In any case we don't want this behaviour, so disable it.
    
    Also we have to add suppressions for new "leaks" in glibc found by
    valgrind because __libc_freeres no longer runs.  In fact there is only
    one such suppression needed, for TLS allocation in multithreaded
    tests.

commit f0861608e41b74d1209e22f1417eddeec0306d76
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 15 17:20:52 2016 +0100

    valgrind: Use --trace-children=no --child-silent-after-fork=yes
    
    When we are valgrinding we don't really care about the child
    processes, which might be qemu, libvirtd, etc.  So disable tracing
    into children (at least, as far as is possible with valgrind, which is
    not entirely disabling it, but suppressing it).

commit a87d0f63819af68bae9218a9830644c52124402a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 20:31:32 2016 +0100

    Version 1.33.20.

commit 65f333f0ea5e4ef5cb3d98e0d9fda0cc7e9247e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 20:30:20 2016 +0100

    docs: Add docs/C_SOURCE_FILES to EXTRA_DIST.
    
    Fixes commit 04229c68d60ce1437b6c1fbee95f23bc12d5cb55.

commit c20cc055c1a1feba102e7f48df03ea55d7feb6e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 19:45:30 2016 +0100

    dist: Make AUTHORS/BUGS/etc rules safe if the output command fails.
    
    Also use $@ instead of target name.

commit 6bf267bcf1a11adbd85b7d33e2e8c3e4355727e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 19:42:36 2016 +0100

    dist: Split up dist-hook so we have separate rules for each generated file.
    
    This is convenient because it allows you to do:
    
      rm -f docs/C_SOURCE_FILES
      make docs/C_SOURCE_FILES
    
    if you ever wanted to recreate that file (without doing 'make dist').
    
    Note that the rules depend on configure.ac so that the files get
    updated on each new version (otherwise the files would never get
    updated).

commit 142909c48f77b9cbf8d3adef64aeeb771d402142
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 18:22:05 2016 +0100

    Add safe wrapper around waitpid which deals with EINTR correctly.
    
    Thanks: Eric Blake.

commit 0415ad4ccd5c1f98892c21f7e54a514fe83f3f4b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 18:09:55 2016 +0100

    utils: Allow use of gnulib in this file.
    
    Almost all the tools link to -lgnu, so really this is fine.
    
    Updates commit 768ab2e01dab5a8e7e751c33b72c1341fcaf9dc3
    and commit 83e92b4a972a4dafdcc42388f4a5394e804dd7bf.

commit a2af0341aa327825ec8d26d89e8b62234bad63a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 16:13:42 2016 +0100

    builder: pxzcat: Remove ineffective POSIX_FADV_WILLNEED.
    
    On Linux this will load the whole file into the page cache.  However
    the output file is empty and zero sized just after it is opened, so
    this has no effect.  Note that the advice is not persistent, so this
    really does nothing.
    
    I considered adding the call back after the file has been written,
    just before the close, but:
    
     - If we do a virt-resize next then we will open and read the file mostly
       sequentially, so readahead will deal with any missing pages.
    
     - If we do a virt-customize next then we will only access a small
       part of the disk image, so loading it all into the page cache adds
       extra work.
    
     - In any case, since we have just written the file it's likely to
       still be in the page cache.

commit 7cbb93bbbb69562f31284b5ce765c4e4de0d9dc4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 16:10:47 2016 +0100

    builder: pxzcat: Close the output file.
    
    After uncompressing the template we didn't close the output file,
    which potentially could cause writes to the output file to be lost.

commit 208da54bb83b135f5e27a3d4f025ab28b8c494b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 16:02:48 2016 +0100

    fadvise: Add guestfs_int_fadvise_normal, document Linux behaviour.
    
    This commit adds guestfs_int_fadvise_normal, but it's not enabled
    since nothing calls it.
    
    It also documents what Linux actually does, which is a bit different
    from what I thought these settings did.  Note this is for Linux 4.6.0rc3
    and may change in future.
    
    This updates commit 83e92b4a972a4dafdcc42388f4a5394e804dd7bf.

commit 95600f9975a817eb788cf3850705ccff6bfc989f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 14:49:55 2016 +0100

    builder: pxzcat: Add further posix_fadvise hints.
    
    Setting POSIX_FADV_RANDOM makes no measurable difference, but at least
    it's the right thing to do.
    
    POSIX_FADV_WILLNEED makes no measurable difference either.
    
    Moving the calls to posix_fadvise to just after the open() makes no
    measurable difference, but does make the code a bit clearer.
    
    Changing POSIX_FADV_NOREUSE on the input file descriptor to
    POSIX_FADV_DONTNEED slows things down by about 10%.

commit 4c9ff437e940399ffa61086a6581eab1e40670ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 13:40:12 2016 +0100

    utils, builder: Add wrappers for posix_fadvise.
    
    Add wrappers around posix_fadvise and use them in places we were
    calling posix_fadvise directly before.
    
    Also in virt-builder we were doing this (and ignoring the result):
    
      posix_fadvise (fd, 0, 0, POSIX_FADV_RANDOM|POSIX_FADV_DONTNEED);
    
    However the POSIX_FADV_* flags are _not_ bitmasks!  In fact
    POSIX_FADV_RANDOM|POSIX_FADV_DONTNEED == POSIX_FADV_NOREUSE so we were
    giving a completely different hint from what we thought we were
    giving.

commit 064c98bb3dfadc94a32804edc45f503930db5d99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 13 22:28:31 2016 +0100

    launch: Implement a safer getumask.
    
    The current implementation of getumask involves writing a file with
    mode 0777 and then testing what mode was created by the kernel.  This
    doesn't work properly if the user set a per-mount umask (or fmask/
    dmask).
    
    This alternative method was suggested by Josh Stone.  By forking, we
    can use the thread-unsafe method (calling umask) and pass the result
    back over a pipe.
    
    This change also fixes another problem: mode_t is unsigned, so cannot
    be used to return an error indication (ie. -1).  Return a plain int
    instead.
    
    Thanks: Josh Stone, Jiri Jaburek, Eric Blake.

commit 452be0613688f8a3991313e760453639d73ac203
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Apr 14 15:25:52 2016 +0200

    customize: cast value to intptr_t for pointer usage
    
    Cast a Int64 OCaml value to intptr_t before casting it to a pointer, so
    this avoids warnings about casting an int to pointer.
    
    Fixes commit 80a13b7216340b2bee437c39db2375b61804e133.

commit 0502e21ddcc710127d0fb24af9d78a37a5b1f089
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Apr 14 13:12:31 2016 +0200

    docs: exclude more generated sources from C_SOURCE_FILES
    
    Exclude more files from the documented sources in C_SOURCE_FILES:
    - sources generated by XDR definitions
    - sources generated by gperf
    - errnostring.c (generated by the generator, and copied around from src
      to daemon during build)
    
    Also update C_SOURCE_FILES as well, so libguestfs builds again from
    scratch.

commit 43161678df3d79e00144a64bb15cf1bc48cbf45c
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Apr 12 18:14:08 2016 +0300

    v2v: add support for virtio-scsi
    
    Virtio-SCSI offers a number of advantages over virtio-blk, in
    particular, it supports SCSI UNMAP (aka trim) which is crucial for
    keeping the virtual drive from wasting host disk space.
    
    This patch adds support for virtio-scsi as the virtual disk connection
    type both on input and on output of v2v.
    
    Virtio-blk remains the default, so for now virtio-scsi-based guests can
    only be produced in --in-place mode.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Reviewed-by: "Richard W.M. Jones" <rjones@redhat.com>

commit 34af5c41bf33c0a82eec65297d702539e272196b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 13 13:47:50 2016 +0100

    docs: Convert more ordinary comments to internal documentation comments.

commit 5c139568b1518db86084d51af18c6ea641149642
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 21:24:01 2016 +0100

    docs: Add internal documentation for a few virt-df functions.

commit 8e6b02c444fd73cd641ac18e13b744a117a5a1cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 21:10:53 2016 +0100

    docs: Add internal documentation for a few guestfish functions.

commit 227ff0a1cdce811deb6cffa19b6b0e456f255c9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 20:59:40 2016 +0100

    docs: Add internal documentation for a few daemon functions.

commit fbde45c8a09a16076816b94af284174700d3cd6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 16:10:20 2016 +0100

    docs: Add internal documentation for many core internal functions.

commit 4a5994df0e367915a3effa204a99c65119008419
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 19:14:35 2016 +0100

    docs, po: Only update C_SOURCE_FILES, POTFILES, etc when doing 'make dist'.
    
    There's no particular reason that we have to update these files in
    every 'make'.  It's slow, and it doesn't really matter if a single
    file is accidentally omitted from translations on a developer's build
    machine.
    
    On the other hand generating it from 'make dist' has advantages:
    
     - We only do it once per release.
    
     - The maintainer can check the changes carefully.
    
     - If a developer adds some random files in their local build tree,
       these won't be picked up accidentally.
    
     - Changes to POTFILES etc won't leak into general commits.

commit 4a0472dc71b706d4a748cf953f7d3449229415c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 19:09:23 2016 +0100

    docs: Add list of C source files instead of calculating it using 'find'.
    
    Add the real list of C source files to the Makefile, instead of trying
    to calculate it.  This (will, in the next commit) fix a problem with
    the build on Koji where we created a subdirectory (for python3/) but
    the find command picked up files from that directory for the
    documentation (and then failed).
    
    This fixes commit 04229c68d60ce1437b6c1fbee95f23bc12d5cb55.

commit 16dd5c66b30ba5aee5ee67ccd8f225bb55af2734
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 15:20:18 2016 +0100

    docs: Ignore gnulib files when producing internal documentation.
    
    This fixes commit 04229c68d60ce1437b6c1fbee95f23bc12d5cb55.

commit 7ca93c78dcb058ece0dd15f59ac0b681f4a392b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 13:52:55 2016 +0100

    Version 1.33.19.

commit 3565f67cc83c8051b43465e9a69d0f7e217944e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 08:38:13 2016 +0100

    Add internal documentation to C files.
    
    As in libvirt, allow internal documentation comments in C files.
    These are marked using '/**' comments.  Unlike libvirt which has an
    ill-defined and inconsistent markup, the markup we use is Perl POD.
    
    These comments are added to guestfs-internals(1), but are most likely
    to be read in-place.
    
    This commit changes some existing comments in src/launch.c to
    demonstrate how this can be used.

commit 9a473f6b1b9b62c65efbb4f2bf4bc0ed8a18437e
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Wed Apr 6 16:20:40 2016 +0300

    v2v: win: factor out common bits in registry patching
    
    Refactor registry patching to share common parts between Win <= 7 and
    Win >= 8.  Also branch between the two based on the presence of the
    DriverDatabase subtree rather than on the OS version, which allows not
    to pass the inspect handle into the functions.
    
    OTOH make the patching functions accept the driver name and device PCI
    id as arguments; this will allow to easily expand the code to support
    other drivers (e.g. vioscsi) later on.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Reviewed-by: "Richard W.M. Jones" <rjones@redhat.com>

commit d56170211c427740e174b96e7274148bcb91ae46
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Wed Apr 6 16:20:40 2016 +0300

    v2v: win >= 8: simplify registry patching
    
    It turned out (by trial and error) that for Windows >= 8 / 2012, even
    though the PnP system uses names related to the original driver's .inf
    file for certain entries under DriverDatabase registry subtree, this
    doesn't have to hold for the storage driver to make it boot.
    
    So use our own artificial names there and simplify the surrounding code.
    This will also make sure the added entries don't confilct with those
    generated by PnP proper once the driver is installed, and that the
    entries are easy to look up in the eventual registry.
    
    The name chosen to refer to the driver -- "guestor" -- is intentionally
    different from the original "viostor" both to avoid collisions and to
    naturally expand to other relevant drivers (e.g. "vioscsi") later on.
    
    Tested on
    
    Win 8 x32
    Win 8 x64
    Win 8.1 x32
    Win 8.1 x64
    Win 2012R2 x64
    Win 10 x64
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Reviewed-by: "Richard W.M. Jones" <rjones@redhat.com>

commit 142e435d7507dc16601ce594885d88212ea9c8b9
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Wed Apr 6 16:20:40 2016 +0300

    v2v: win >= 8: reduce registry patch
    
    The patch to the Windows registry allowing it to boot off a virtio-blk
    drive was initially conceived by comparing the state with virtio-blk
    driver properly installed, to that without.
    
    However, we don't want to replicate the Windows PnP system; rather we
    need to apply just enough edits to make the system boot, and then let
    the Windows PnP manager figure out the rest.
    
    It turned out (by trial and error) that for Windows >= 8 / 2012 the
    "just enough" set includes only the service entry for the driver, and a
    few entries under DriverDatabase.
    
    Tested on
    
    Win 8 x32
    Win 8 x64
    Win 8.1 x32
    Win 8.1 x64
    Win 2012R2 x64
    Win 10 x64
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Reviewed-by: "Richard W.M. Jones" <rjones@redhat.com>

commit 144ea9685ada1e662a87b1c897ea69658e17169b
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Wed Apr 6 16:20:40 2016 +0300

    v2v: win <= 7: reduce registry patch
    
    The patch to the Windows registry allowing it to boot off a virtio-blk
    drive was initially conceived by comparing the state with virtio-blk
    driver properly installed, to that without.
    
    However, we don't want to replicate the Windows PnP system; rather we
    need to apply just enough edits to make the system boot, and then let
    the Windows PnP manager figure out the rest.
    
    It turned out that for Windows <= 7 / 2008R2 the "just enough" set
    includes only the service entry for the driver, and a
    CriticalDeviceDatabase entry matching the PCI id of the device and
    pointing at that service entry.
    
    While at this, also drop CriticalDeviceDatabase entries for older and
    no longer relevant PCI ids of the virtio-blk device.
    
    Tested on
    
    Win XP SP3 x32
    Win XP SP2 x64
    Win 2003R2 SP2 x32
    Win 2003R2 SP2 x63
    Win Vista SP2 x32
    Win Vista SP2 x64
    Win 2008 SP2 x32
    Win 2008R2 SP1 x64
    Win 7 SP1 x32
    Win 7 SP1 x64
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Reviewed-by: "Richard W.M. Jones" <rjones@redhat.com>

commit 7d3d0bb41767dfe6be5b6a5a5f94644f5b824e32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 11 22:04:18 2016 +0100

    customize/perl_edit-c.c: Don't use internal APIs.
    
    We can now use the Guestfs.c_pointer method to access the underlying
    guestfs_h *.  So no need to use internal APIs for this.

commit f7624f4e0eaf5be36b29659c472e6b82443d31ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 08:35:29 2016 +0100

    v2v: Don't allow -oa option to be specified more than once on the command line.

commit f06ce82936f49cbfa32fbb14576fcdbcdcf9d592
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 11 14:04:31 2016 +0100

    v2v: Reject duplicate -b/-n parameters on the command line (RHBZ#1325825).

commit abfab1e17687e75f52bedc50b29cc4f1485d2cd0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 11 17:10:20 2016 +0200

    php: support PHP 7
    
    Adapt to the API changes in the newer versions of the Zend framework, in
    particular regarding:
    - strings handling
    - resources handling (used for the guestfs_h pointer)
    - iterating in hash maps
    - data types for function arguments
    
    Introduce helper macros to reduce greatly the amount of #if's all around
    the generated C code.

commit 9f7b7e66b15b04a51b7ab2e5f515056e6b46c6ea
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 11 17:06:50 2016 +0200

    fish: improve formatting of help text of generated commands
    
    In the generated description of the guestfish commands, wrap and indent
    the help text, so it is a multiline string instead of a very long single
    one.
    
    This has no behaviour changes, only makes cmds.c more readable (and
    easier to diff when the description of actions change).

commit a4480d8e995f70b1b1f04159bce4df17c55c275e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 9 21:17:26 2016 +0100

    ruby: Document that rubygem-rdoc is required for the Ruby bindings.

commit 88a8abf3d55db195cc01a404ff814e31abcb9971
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 9 21:10:11 2016 +0100

    docs: Refresh documentation for the ./run script.

commit 3e1e4c4071d2fd107e63744eb62ff8ffa64ec49d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 9 21:05:33 2016 +0100

    build: ./run is documented in guestfs-building(1), not README.

commit cb646e96f50d3b465944539706e5a32fa6343f36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 6 17:44:49 2016 +0100

    tests/qemu: boot-analysis: (Don't) set LIBVIRT_LOG_FILTERS.
    
    Setting LIBVIRT_LOG_FILTERS is supposed to be better than setting
    LIBVIRT_DEBUG, but I couldn't get it to work.
    
    This updates commit b332d91bc9685e8992ede2c8a10655f26fd0395e.

commit 3ed31f1d1b367514b7559724a393b823ea3f5080
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 6 10:43:00 2016 +0100

    tests/qemu: boot-analysis: Add support for logging libvirt events.

commit 65b5c1a5d0cdef04158122ad8db9557f59310bb5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 6 10:42:21 2016 +0100

    tests/qemu: Don't leak backend variable in boot-analysis/boot-benchmark programs.

commit 932c3f12d258835aa412832dea6b1e44d2d61071
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 21:32:08 2016 +0100

    v2v: DOM: Add documentation for the obscure 'e' function.
    
    No functional change, just comment.

commit 2e7ac8da389165e559d4a0dda1624a2079b6e783
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 21:20:26 2016 +0100

    v2v: Add documentation to Convert_windows and Convert_linux modules.
    
    No functional change, just add comments / documentation.

commit 43ebc6327aeddf8535aa5f2937afb2dadd9f49f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 15:15:21 2016 +0100

    Version 1.33.18.

commit aadaa788cbd6c0fa11ddc07398ed27f050dba326
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 15:02:20 2016 +0100

    launch: libvirt: Disable virtio-rng in libvirt backend until we can use /dev/urandom.
    
    This updates commit 9423c16607259b30985c46d04db9958ec079aa42.

commit a788b7c75798be7e12f6c385c15abb9ad735b3f0
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Apr 5 13:47:28 2016 +0200

    v2v: extract controller offset discovery as a function
    
    This function is needed for other drivers, move the code in order to
    help sharing it later.

commit edfee787fc6a8bacfa8f11ef417c459eae14acdf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 12:09:22 2016 +0100

    Version 1.33.17.

commit 39d66058758f4bf7a600855579e01361ed2fb1f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 12:07:13 2016 +0100

    builder: Add ubuntu-ppc64le.sh to EXTRA_DIST.
    
    Fixes commit f756002b54792b34b287d44af2908f60e21e0374.

commit 0950c4e900b9bdb3aa71ac154b566db5d213c2da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 12:06:23 2016 +0100

    Add python/t/README to EXTRA_DIST.
    
    Fixes commit aae74c9e4e062d5b311977f34edbf6d654e5db12.

commit 5b07ce1a0bc578e0381cb8f8badab04e71c26372
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 11:58:35 2016 +0100

    Remove .x-sc (syntax check) files from EXTRA_DIST.
    
    Fixes commit 821db657d1484f7cc23d66321122b39259df0370.
    Updates commit 017f1c67296ee6fa9a566f853ea896e39d2e9bf0.

commit 2b7ae9a46642d7055a68b671b0baa2d12e9fc1ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 4 16:57:10 2016 +0100

    align/scan: Remove stray comment that confuses clang-format.

commit df358930ff0b1ca52c0f4f8b60fae57cfbf11935
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 4 14:04:58 2016 +0100

    Further remove mention of 'make syntax-check'.
    
    Updates commit 017f1c67296ee6fa9a566f853ea896e39d2e9bf0.

commit 9a6d2c03b226e53eb93874332cc1c5d2bd380f06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 4 11:31:00 2016 +0100

    Use 'error' function for fprintf followed by exit.
    
    Like with the previous commit, this replaces instances of:
    
      if (something_bad) {
        fprintf (stderr, "%s: error message\n", guestfs_int_program_name);
        exit (EXIT_FAILURE);
      }
    
    with:
    
      if (something_bad)
        error (EXIT_FAILURE, 0, "error message");
    
    (except in a few cases were errno was incorrectly being ignored, in
    which case I have fixed that).
    
    It's slightly more complex than the previous commit because we must be
    careful to:
    
     - Remove the program name (since error(3) prints it).
    
     - Remove any trailing \n character from the message.
    
    Candidates for replacement were found using:
    
      pcregrep --buffer-size 10M -M '\bfprintf\b.*\n.*\bexit\b' `git ls-files`

commit 3fdacd02bb1a01200f394212850526439c1dcc20
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 3 21:21:37 2016 +0100

    Use 'error' function consistently throughout.
    
    Wherever we had code which did:
    
      if (something_bad) {
        perror (...);
        exit (EXIT_FAILURE);
      }
    
    replace this with use of the error(3) function:
    
      if (something_bad)
        error (EXIT_FAILURE, errno, ...);
    
    The error(3) function is supplied by glibc, or by gnulib on platforms
    which don't have it, and is much more flexible than perror(3).  Since
    we already use error(3), there seems to be no downside to mandating it
    everywhere.
    
    Note there is one nasty catch with error(3): error (EXIT_SUCCESS, ...)
    does *not* exit!  This is also the reason why error(3) cannot be
    marked as __attribute__((noreturn)).
    
    Because the examples can't use gnulib, I did not change them.
    
    To search for multiline patterns of the above form, pcregrep -M turns
    out to be very useful:
    
      pcregrep --buffer-size 10M -M '\bperror\b.*\n.*\bexit\b' `git ls-files`

commit 26cbef828ebf047e3529984aa465918773fdced3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 2 11:03:33 2016 +0100

    tests/qemu: boot-analysis: Don't force backend direct.
    
    Current libvirt overhead is 220ms.  That didn't matter when our launch
    time was 4000ms.  Now we're launching in 900ms, it really does.

commit 26161c2488e127566306283795261568d56cae6b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 2 11:01:30 2016 +0100

    tests/qemu: Standardize test info printed by boot-* tests.
    
    It now looks like:
    
    test version: libguestfs 1.33.16
     test passes: 5
    host version: Linux moo 4.4.4-301.fc23.x86_64 #1 SMP Fri Mar 4 17:42:42 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
        host CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz
         backend: direct
            qemu: /home/rjones/d/qemu/x86_64-softmmu/qemu-system-x86_64
    qemu version: QEMU emulator version 2.5.90, Copyright (c) 2003-2008 Fabrice Bellard
             smp: 1
         memsize: 500
          append: guestfs_boot_analysis=1 ignore_loglevel initcall_debug

commit 64c3ead8b5044283070417c0b25f535b4e9d4671
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 2 10:42:12 2016 +0100

    tests/qemu: boot-analysis: Display all times in ms.
    
    It was confusing to have a mix of seconds and milliseconds.  For all
    upstream testing (eg. with SeaBIOS) we are discussing everything in
    milliseconds, so use those exclusively.

commit f3709417dfb5ff307a6334f4c75a611a4b8caa84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 19:19:51 2016 +0100

    tests/qemu: Add boot-benchmark.
    
    Add a new test program called 'boot-benchmark'.  This is similar to
    'boot-analysis' but it simply boots and shuts down the appliance
    several times in a row and measures how long it takes, calculating
    mean and standard deviation.

commit d68e685b3eaf90fd4299840ab404c064ac55abbc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 17:46:53 2016 +0100

    docs: Link to boot-analysis program from guestfs-performance(1).

commit 48dab8d9f9c1d0d90a57c152b11f1d6813ff3a68
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Fri Apr 1 18:59:39 2016 +0300

    python: Fix bug in code generator
    
    When a struct containing FChar fields is defined
    in generator/structs.ml, the Python code generator will generate
    code referencing a dirent struct instead of the correct one
    thus breaking at compile time.
    
    This bug was left unnoticed because the dirent struct is the only
    one using FChar fields. Yet it prevents any other struct
    from using such fields.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit ce1225d70bc40bac0f19e2f231bb689c01bcf765
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 12:28:18 2016 +0100

    launch: Add a comment about why acpi=off (because it's slow).

commit 6c42104d368d0de6e4d450f0129086ebccc9a283
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 10:05:59 2016 +0100

    launch: Only use sgabios when verbose is enabled.
    
    The sgabios option ROM is slow.  Only use it when we're debugging.
    
    Thanks: Paolo Bonzini.

commit dd555c9cfb20b17cabf337171b8f12ec602306f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 10:01:32 2016 +0100

    launch: direct: Add a comment about use of -display none.
    
    No functional change.

commit 82c9408ded1d64e8f7a2647d886c9ad04fa38441
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 31 14:03:56 2016 +0100

    v2v: Document how to use 'cinder manage' for importing directly to Cinder.
    
    Thanks: Tom Barron.

commit 18e692af06c4f192959c9c9d875050cd6a3baa6b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 30 11:24:50 2016 +0100

    builder: Update Fedora 23 (i686) image.
    
    Contains a fix for RHBZ#1317843 and another dnf bug.

commit 965d3bf056636f66ac53fae9cff207fd470da0b8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 31 11:38:00 2016 +0200

    inspect: use os-release for CoreOS
    
    Look for /lib/os-release in the /usr partition and try to use it, if
    present, before using lsb-release later on.  This should not change the
    final result of the inspection, while using the os-release detection
    method also for CoreOS.
    
    Update the phony CoreOS image to use os-release instead, uploading the
    version found in the current stable version.

commit 6155e0125acb99923b85346611403354c714e934
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Wed Mar 30 22:18:08 2016 +0300

    Rename icat command in download_inode
    
    The "icat" name comes from the employed command line tool which might be
    replaced at any time with a different implementation.
    
    The command name is a bit confusing because it's similar to "cat" but
    act as "download".
    
    download_inode is more clear and descriptive.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit fed2a0158552f96cc1441092ec3b94703dc8c19c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 30 15:49:16 2016 +0200

    inspect: os-release: fix single-number version parsing (RHBZ#1321620)
    
    Use the proper length modifier for asprintf, instead of a padding
    modifier.  This fixes the parsing of versions in VERSION_ID which are a
    single number (i.e. "X" and not "X.Y", etc).
    
    Bug introduced with commit 32d19e3289bc259901f77398703f16cf6eabd510, but
    uncovered recently with the switch away from VLAs, i.e.
    commit 07c496c53c7835c0db882ef6761309db4952ebf6.

commit b076f58712dda43a1f74c5fb0fcb95e680be8559
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Mar 29 22:56:29 2016 +0300

    renamed daemon/tsk.c to daemon/sleuthkit.c
    
    In order to support the new features I am renaming the file with a better name.
    
    The file sleuthkit.c will contain the code depending on the sleuthkit package.
    
    The original tsk.c file will contain the logic built using libtsk
    which is the sleuthkit core library.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 793010c560b71883e7505916c0180596626d9cf1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 30 11:24:50 2016 +0100

    builder: Update Fedora 23 image.
    
    Contains a fix for RHBZ#1317843 and another dnf bug.

commit 69a7737056e6176a8e0863c1f1aec99f800fe2ec
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 30 10:15:49 2016 +0200

    appliance: init: generate /etc/machine-id
    
    Some of the systemd-tmpfiles snippets need the machine ID of the running
    system; the current lack of this file produces warning messages during
    the appliance boot like:
    
    [/usr/lib/tmpfiles.d/systemd.conf:26] Failed to replace specifiers: /run/log/journal/%m
    [/usr/lib/tmpfiles.d/systemd.conf:28] Failed to replace specifiers: /run/log/journal/%m
    [/usr/lib/tmpfiles.d/systemd.conf:29] Failed to replace specifiers: /run/log/journal/%m
    
    Thus create a new randomly-generated /etc/machine-id on boot.

commit 40859fba79965bd78ec34a7678daca4e228b7c88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 29 11:59:36 2016 +0100

    boot-analysis: Add --memsize, --smp and --append options.
    
    These options allow you to control the appliance memory size, number
    of vCPUs, and extra kernel options respectively.
    
    Note that using --smp is not usually a good idea.  Not only does it
    slow down the appliance, but it tends to break the boot analysis
    program because it makes runs (more) non-deterministic.

commit b4eb7182e86d0ff6e707d845b04ba13d889be8c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 25 17:13:58 2016 +0000

    v2v: Don't use List.sort_uniq, add util function for this instead (RHBZ#1321338).
    
    List.sort_uniq was added in OCaml 4.02, so this breaks compilation on
    earlier versions of OCaml.
    
    Thanks: Jean-Christophe Manciot

commit ffcfe8a5507a6e6ed6c273beac43c9c95a691009
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 24 18:41:20 2016 +0000

    builder: Add ubuntu ppc64le script.
    
    Thanks: Gustavo Romero

commit c2f2d7b44a980c809efc14e121c140fd80200e68
Author: Lars Kellogg-Stedman <lars@redhat.com>
Date:   Thu Mar 24 15:21:45 2016 -0400

    document behavior of --selinux-relabel
    
    the description of the --selinux-relabel option suggests that it
    perform an immediate relabel, when in fact it may (and probably will)
    instead simply touch /.autorelabel on the image, which schedules a
    relabel operation for the next time the image boots.  This can be
    surprising because it results both in an extended initial boot time
    *and* results in an automatic reboot (on some distributions).

commit fdb7f3ae04e09f8d6070084b57656f4d28163da2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 24 18:24:41 2016 +0000

    Version 1.33.16.

commit f8bf441d6fb96111892e0b5cfbd4cef9da623d87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 24 17:58:42 2016 +0000

    rescue: Fix test to deal with new --suggest output.
    
    Fixed commit 72fd0531ab8446dc00d565cf2f526f5c9bcee968.

commit 2d56e776dcc4ce5df51eb3ceaf65a22d912ef515
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 24 14:46:09 2016 +0000

    python: Add README documenting how to run a single test.

commit 1e8f0503a0166a01a7a6f2401daac0e7b942d55a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 24 10:48:03 2016 +0000

    rescue: Print chroot suggestion for Linux guests.

commit 6e470eb791c21f13ed35715c8059d25875adb256
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 24 10:46:31 2016 +0000

    rescue: Suggest using recursive bind mounts.
    
    Since /dev and other directories contain sub-mounts, suggest using
    --rbind instead of --bind.  This also allows us to remove the /dev/pts
    line.

commit 847ca75888babd9d3380ad53b62e0c64a33bedf0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 24 13:52:28 2016 +0000

    python: Misspelling in tests, libirt -> libvirt.

commit 76ba9178d08fa34c031e820165189a643c5bad07
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Fri Mar 18 19:15:39 2016 +0300

    v2v: better explain --in-place
    
    It seems that the documentation for --in-place mode of v2v wasn't clear
    enough, so try to explain it better.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Signed-off-by: "Richard W.M. Jones" <rjones@redhat.com>

commit 3c21ad03629600e1adede58b5414d95ec11e1b10
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Feb 9 17:02:37 2016 +0300

    v2v: in-place: request caps based on source config
    
    In in-place mode, the decisions on which interfaces to use are made and
    the source VM configuration is created by the outside entity.  So in
    that case v2v needs to look it up in the source configuraion, and try to
    follow.
    
    For that, the source VM configuration is used to populate requested caps
    object which is then passed to the convert routine.
    
    It's assumed that the configuration has exactly one type of storage
    devices and no more than one type of network and video adapters;
    anything else is rejected.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Signed-off-by: "Richard W.M. Jones" <rjones@redhat.com>

commit 9ed9d048f2b296cd0ebbd638ac3a2c5c8b47fded
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Feb 9 16:48:26 2016 +0300

    v2v: take requested caps into account when converting
    
    Give the caller certain control over what kind of interface to use for
    virtual disks, network and video cards upon conversion.
    
    For that, make convert functions accept additional rcaps parameter
    containing an object with optional capabilities similar to the ones
    produced on output, with None indicating that the decision is left to
    the convert function itself.
    
    To facilicate review, this patch unconditionally passes rcaps with no
    preferences; populating it with more sensible values is done in a
    followup patch.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Signed-off-by: "Richard W.M. Jones" <rjones@redhat.com>

commit bb2f87b75b8044752381b2b850bd4aa74bd8db00
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Fri Feb 5 16:54:07 2016 +0300

    v2v: introduce requested guestcaps type
    
    Introduce a type to contain the guestcaps that are to be put in effect
    in the converted VM: options of the block type, net type, and video.
    
    It'll be populated by the caller and passed into convert function to
    affect its choice of devices and drivers.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Signed-off-by: "Richard W.M. Jones" <rjones@redhat.com>

commit 04af2bc3cd2c355c3bfdab9779eeebbb41f0e66c
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Feb 9 16:26:05 2016 +0300

    v2v: collect source network and video adapter types
    
    Those will be useful when making decisions about what configuration to
    set on output.
    
    The data is also included in --print-source so the tests are adjusted
    accordingly.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
    Signed-off-by: "Richard W.M. Jones" <rjones@redhat.com>

commit 67c7b893971ac873627e6c04bcfba05e9878b1b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 18 18:00:51 2016 +0000

    tests/qemu: Add program for tracing and analyzing boot times.

commit c62a155c6a2a0ad61f200c5ce30e5d8d349007c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 20 15:50:31 2016 +0000

    conn: Pretend to be a serial terminal, so sgabios doesn't hang.
    
    This tedious workaround avoids a 0.26 second pause when using sgabios
    (the Serial Graphics Adapter).  It's basically a workaround for buggy
    code in sgabios, but much easier than fixing the assembler.

commit 357f816c6a80e7c437ad9cd586ea236e4bfb8fe2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 19 20:13:49 2016 +0000

    appliance: init: Don't run hwclock command.
    
    This command alone took 0.3 seconds which is about 10% of the current
    launch time.  It appears to be unnecessary.
    
    This reverts commit 508f1ee87e816bf6b6fc8e629ccbb2d61a971169.

commit efe84543002998a679784835a37c8b35bdcaa1a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 23 12:13:03 2016 +0000

    appliance: init: Mount selinuxfs along with other special filesystems.
    
    Move this earlier.

commit 0fbf462a1c38b3e1976d292e9c44b5bb21b8da51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 19 18:27:07 2016 +0000

    appliance: init: Move cmdline parsing earlier.
    
    Since commit bb5d30ab2af5720775c63179afdec3ad9efd510d, we don't
    require any external programs like grep to parse the command line.  We
    only use bash intrinsics.
    
    Therefore we can do it early (but after /proc is mounted).
    
    This allows verbose mode to enable set -x early on, so we can trace
    most things that the init script does.

commit cd55d54c1f0da53e6e9d468d0c1e29117ac8106b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 19 18:26:39 2016 +0000

    appliance: When using verbose mode, 'set -x' in the appliance init script.

commit 98a8420f08131ef92fbd40b6a3a5a508b8b6a8a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 22 14:51:19 2016 +0000

    launch: Add a virtio-rng device to the guest.

commit e18160da96422fdea8dde10299b10b994a435f8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 19 21:27:32 2016 +0000

    launch: Remove guestfs_int_print_timestamped_message function.
    
    This function was kind of like debug(), except that it didn't check
    the g->verbose flag and it only worked in the library (it would crash
    if used after fork).
    
    It also wasn't very useful.  The sort of boot analysis done by
    [forthcoming program] tests/qemu/boot-analysis.c means that
    timestamping (some) messages is even less interesting than before.
    
    Remove it and replace calls with debug() instead.

commit a2314ac7410b3f3f1786d86b5a526b0d6d5d326e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 22 14:04:26 2016 +0000

    launch: direct: Don't run qemu -version.
    
    Dr. David Gilbert pointed out to me that the first line of the
    qemu -help output includes the qemu version, so we don't need
    to run qemu -version at all.
    
    This saves about 0.04s on the launch time when using the direct
    backend.

commit 56a42a61df97e22cf58972f4d0b05c5e08dca21d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 22 09:43:50 2016 +0000

    launch: Factor out earlyprintk from the command line.
    
    Just code motion.
    
    In theory we could also add earlyprintk=ttyS0,115200 on x86, but I
    cannot get it to work.

commit ad3219d818c220193e3059d60c9da0774bd7c936
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 19 21:19:21 2016 +0000

    launch: direct: Remove dead code promising we were going to use virtio-console.
    
    We're never going to use virtio-console since, although it is faster,
    it's not available during early boot, and that is more important for
    debugging.

commit 985d56e1e8344a7ef052d529add1c33e5b061c7d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 22 15:48:53 2016 +0100

    appliance: use bash features for string matching in files
    
    Read the content of /proc/cmdline using bash features, and use its
    [[ ... ]] expression to find texts in a variable.
    
    This shaves off 5 grep invocations.

commit 83dc61f0ea916525495f0f3f59d92fcea37ccddb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 22 13:41:56 2016 +0100

    Reduce GUESTFS_PRIVATE usage
    
    Remove the GUESTFS_PRIVATE=1 define for some tools and tests which don't
    really use any private API.

commit 4e55672a735c56de0489cfc9599efb72b69a1fd8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 18 16:06:45 2016 +0100

    build: improve GUESTFS_FIND_DB_TOOL macro
    
    - find the unversioned name just once
    - add 5.3 and 5.2 as versions
    - add db_$TOOL-X and db_$TOOL-X.Y as patterns (found on FreeBSD)

commit eb3c897721d24fb15b9725218c0147665419fbb7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 18 15:37:10 2016 +0100

    build: check the path of true, and use it in tests
    
    Check for the full path of true, and use it instead of hardcoding
    /bin/true (which is still left as fallback).

commit 5f0306ce94213cee67fc5060065ad198b75842a0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 18 15:35:51 2016 +0100

    php: pass $(MAKE) to run-php-tests.sh
    
    Instead of hardcoding "make" in run-php-tests.sh, pass the actual name
    of make from the Makefile; the default is still "make", mostly to use
    the script without having to set $MAKE.

commit f6ba4875d724c403043d97371d83af8703e29eac
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 18 15:09:23 2016 +0100

    v2v: tests: use guestfs-hashsums.sh for MD5
    
    Use the common helper for MD5 checksum, instead of assuming md5sum(1).

commit 67524d94ee50276db577dfab02ea8e24860f6fa1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 18 15:03:22 2016 +0100

    v2v: tests: isolate SHA1 calculation in an own shared function
    
    sha1sum(1) does not exist everywhere, so wrap it in an own function so
    the right implementation can be chosen on each OS.  Also, wrapping it
    avoid using awk everytime.

commit b53996f1d56db54a7da46e74806f969fb842aa51
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 18 14:45:54 2016 +0100

    tests: move guestfs-md5.sh to test-data
    
    Move it to the test-data directory, giving it a more generic name so it
    can be used also for more than just md5; adjust qemu tests accordingly.
    
    This is just code motion, no behaviour change.

commit cfa27e54411c92635250876710e60daf7eb4ce72
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 18 11:37:32 2016 +0100

    build: check the path of fuser, and use it in FUSE code
    
    Check for the full path of fuser, and use it instead of hardcoding
    /sbin/fuser (which is still left as fallback).

commit 29c03ac185434f73b454121c50e15e7fba208d95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 17 10:05:00 2016 +0000

    appliance: Quiet some warnings about missing files.
    
    Try to make the appliance script as quiet as possible along
    the fast path.

commit 07feb1922e278f754ff42d45aa99489883599ac0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 17 10:04:25 2016 +0000

    appliance: Make it clear that the init script is a bash script.
    
    We have used /bin/sh here since 2009.  However this is a bash
    script and probably won't work well with other shells.

commit d5d7f4725f9cab767c4005e4c371c29a411bbd4a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 17 08:35:54 2016 +0000

    appliance: Pass "quiet" option to kernel when !verbose.
    
    The quiet option suppresses kernel messages.  On my laptop it improves
    appliance boot times by about 40% (3.5s -> 2.5s).
    
    The emulated UART is slow and has a fixed, small FIFO (16 bytes).  But
    it has the advantage of being a simple ISA device which is available
    very early in boot, thus enabling us to diagnose early boot problems.
    So the aim is to reduce our usage of this UART on fast paths.
    
    Of course when we are in verbose mode, we should not add this flag
    because we want to see all the messages.
    
    This change is not entirely invisible:
    
    (1) Progress messages use the "Linux version ..." string from kernel
    output in order to determine part of where we are in the boot process.
    This string will no longer be detected.  We should probably use a BIOS
    message or maybe drop this altogether.  I have added a comment to the
    code.
    
    (2) It is possible for programs to be listening for
    GUESTFS_EVENT_APPLIANCE events, and they will see fewer messages now
    (although what kernel messages programs see is never defined).

commit dc72dcb2df3a64209b757fe947da80e0227ca49a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 17 11:52:34 2016 +0100

    inspect: improve UsrMove detection (RHBZ#1186935)
    
    In case /usr is a symlink to /usr/bin, then we cannot rely on /usr/bin
    to exist, since /usr might be in a different partition.  Thus, in case
    /bin is a symlink, check it points to "usr/bin".

commit 59cc211863198a8ad2bdab0646b6ad97a55a829b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 17 15:25:00 2016 +0100

    inspector: define more multichoice tags in the RELAX NG schema
    
    Provide new <define> for the following elements: "distro",
    "package_format", "package_management", and "format", adding all the
    values so far possible for each.

commit 9ccdc3e5aa3d7eb84b0f2ff854e1cff0e737e292
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 17 10:39:11 2016 +0100

    builder: fedora: ensure images are up-to-date
    
    Update the system at the end of the installation, so the generated image
    is up-to-date.  This also removes the need to manually update dnf on
    i686 and x86_64.

commit 13a4fc50a482e215ca4bc94ab80557fefd448462
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 16 15:17:12 2016 +0000

    Version 1.33.15.

commit 170b25e5f78bbee4ce7efeb892c9a6392450ab1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 16 15:16:39 2016 +0000

    fish: Link with LIBTINFO_LIBS.
    
    Required on Gentoo.
    
    Thanks: Mark Pictor

commit 28819d7bd457f6e22cc95445d51c10a95ac6bb02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 15 18:57:18 2016 +0000

    docs: Fix cross-reference to fixed appliance section.
    
    The fixed appliance documentation moved from guestfs(3) to
    guestfs-internals(1).
    
    Thanks: Mark Pictor (mark999 on IRC)

commit 9d5ec788201c29cc30d557ad56cd0ee2765efb3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 9 15:05:43 2016 +0000

    Revert "configure: Move version and date together."
    
    You can't use AC_SUBST before AC_INIT.  It resulted in the
    RELEASE_DATE being an empty string.
    
    This reverts commit d53fd558ae00021f0f091d1685832b6c1e32b0a1.

commit 91470a583574b07649c42c5b50ab364953dd77bc
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Mar 8 20:14:16 2016 +0200

    sleuthkit availability check renamed
    
    >From 'available icat' to 'available sleuthkit'.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit d7565e32552953ed4dbdf93164979a9c58aaefd5
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Mar 8 16:04:20 2016 +0100

    configure: handle older version of ncurses
    
    ncurses didn't have pkg-config files in not-that-old versions. If those
    couldn't be found, then try the ncurses6-config and ncurses5-config tools.

commit b11e34097e7d3023e86eda8a592b2c661bee9c08
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Mar 8 16:04:22 2016 +0100

    fish: fix btrfs subvolumes display in error case
    
    The list of filesystems that is printed when there was an error prints
    the internal mountable string even for the btrfs subvolumes. Let's
    printing a valid -m option value instead.

commit 6bb09267fbdf1e54ecba4c826d5ef0530da99cea
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Mar 8 16:04:21 2016 +0100

    api: add mountable_device and mountable_subvolume
    
    These two functions allow the user to split the mountable strings
    into a device and a subvolume if any. See this thread on the mailing
    list for the rationale:
    
    https://www.redhat.com/archives/libguestfs/2016-February/msg00247.html

commit caf2324a7dc533e594988692c039041e062e07fe
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 8 09:47:30 2016 +0100

    appliance: pick sleuthkit on all the distros
    
    It looks like it has the same name everywhere, so move it in the common
    packages section.
    
    This updates commit 3bb65458ff078be4815c1b92d0e96acc80ee3b57.

commit 59e5ec4fc14411663a428e13237ba8f8cd998be3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 7 19:33:34 2016 +0100

    inspector: extend the OS "name" in the RELAX NG schema
    
    Put the definition of "name" in an own <define>, and add the missing
    operating systems so far known to libguestfs.

commit 0d54466198248e0458281b35c51afe105ad0d865
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 7 19:31:30 2016 +0100

    inspector: add --no-applications and --no-icon
    
    Add command line options to optionally disable the output of the
    installed application, and the guest icon.
    
    This makes the inspection slightly faster, producing a smaller XML to
    parse/process in case there is no interest in these details.

commit 58dfad99c168d32d718a963e9c4bedc561d6e135
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 7 20:11:02 2016 +0000

    Version 1.33.14.

commit c9763e52a85dcf1c8cd3d66e9266e3c302657d7b
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Mon Mar 7 21:22:20 2016 +0200

    added icat API tests
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 87bef4fb02872e9326fec844e7531b771b703925
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Mon Mar 7 21:22:19 2016 +0200

    added icat API to retrieve deleted or inaccessible files
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit b33143b77375bb0d44dd6201e20cfe72c1fafad8
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Mon Mar 7 21:22:18 2016 +0200

    added The Sleuth Kit package to the appliance
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit c9c6ce850417df8be1b267fd073bef9903da8281
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 6 18:37:40 2016 +0000

    Use less stack.
    
    GCC has two warnings related to large stack frames.  We were already
    using the -Wframe-larger-than warning, but this reduces the threshold
    from 10000 to 5000 bytes.
    
    However that warning only covers the static part of frames (not
    alloca).  So this change also enables -Wstack-usage=10000 which covers
    both the static and dynamic usage (alloca and variable length arrays).
    
    Multiple changes are made throughout the code to reduce frames to fit
    within these new limits.
    
    Note that stack allocation of large strings can be a security issue.
    For example, we had code like:
    
     size_t len = strlen (fs->windows_systemroot) + 64;
     char software[len];
     snprintf (software, len, "%s/system32/config/software",
               fs->windows_systemroot);
    
    where fs->windows_systemroot is guest controlled.  It's not clear what
    the effects might be of allowing the guest to allocate potentially
    very large stack frames, but at best it allows the guest to cause
    libguestfs to segfault.  It turns out we are very lucky that
    fs->windows_systemroot cannot be set arbitrarily large (see checks in
    is_systemroot).
    
    This commit changes those to large heap allocations instead.

commit e37ba79b1ff16d4edbedd16848be009ca2043147
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 7 17:25:21 2016 +0100

    inspect: list applications with APK
    
    Implement the helper function for guestfs_inspect_list_applications2 to
    be able to parse the list of installed applications with the APK package
    manager (used on Alpine Linux).

commit 4d7071b896a26a89bd10d084feeeb808ab147e2e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 7 16:17:32 2016 +0100

    build: fix reading of the java version
    
    Update the check for the first line (the one containing the version) to
    match also the message with OpenJDK; switch to awk so it is easier to
    extract the version inside the double quotes.

commit b0957ed39356fcbb1657a62f4d263626c2ff13cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 6 18:58:52 2016 +0000

    inspect: windows: Make is_systemroot check code more robust.
    
    We rely on this function for security to ensure the caller cannot set
    windows_systemroot to a very long or bogus value.

commit 66f27dcb4a93de50beefa42175635d03f30a19a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 6 18:34:14 2016 +0000

    lib: inspect: gpt_prefix is a constant string.

commit f2aa45f961456d527b2e4f956e519608d5dbbbf8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 6 18:23:26 2016 +0000

    lib: Minor whitespace rearrangement.

commit 0e46e2c9f095ece0edc070ff939e2e3561ec9111
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 6 18:22:30 2016 +0000

    lib: Fix incorrect comment in utils.
    
    The string is not freed by the caller.  A fixed buffer is provided
    by the caller.

commit b29975ae8f2f4ac86214489a44f98126866e9db2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 6 15:50:47 2016 +0000

    v2v: linux: Fix small typo in comment.

commit ea9b670d07c64497b8b0a6febc211282be12b7a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 4 10:20:06 2016 +0000

    v2v: Fix incorrect calculation of lc_basename.
    
    We should be using the lowercase path.  Prior to this patch
    lc_basename was not actually lowercase.
    
    Fixes commit f7249a0bccc43d5b5e11703ff432b0361b03292b.

commit 3513b2f2a02c7b196fc95978a7461cedcec014dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 3 15:41:14 2016 +0000

    v2v: Describe workaround for Windows >= 8 Fast Startup.
    
    Thanks: Nisim Simsolo

commit 0193cb39713f20157527a5e1cc5511c82c7e2098
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 3 14:20:46 2016 +0100

    mllib: factor out mounting of guest root
    
    Introduce and use a new inspect_mount_root function to mount all the
    mountpoints of a root in the guest, replacing the same code doing that
    in different tools.
    
    inspect_mount_root_ro is inspect_mount_root with readonly mount option.

commit 3f6e7228d98830cdf28c6fa64230eaab7913f914
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 3 11:08:56 2016 +0000

    configure: Move version and date together.
    
    I keep forgetting to update the date field when releasing.

commit 88d8b568a152a959b4ea065549299a13b8f062fc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 2 14:42:02 2016 +0100

    daemon: do not fail list-disk-labels w/o labels set
    
    If there are no labels set for the disks, the directory with the
    symlinks will not even exists, causing list-disk-labels to fail with
    ENOENT.  In this situation, act as if the directory was there, but
    empty.

commit ebc5d3c27a1fec3a871f55c29d2ace5848ac53e1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 2 11:14:19 2016 +0100

    daemon: ntfs: switch away from asprintf_nowarn in ntfsclone-in
    
    No custom formats (eg %Q, %R) are used.

commit a5d9e17dc555fba47f23642e496a29af7411b567
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 2 11:02:08 2016 +0100

    make-fs: print error message on mkfs failure
    
    This makes a bit easier to diagnose failures on mkfs, without the need
    to restart the filesystem creation with verbose output (which will
    produce a lot more output).

commit 4e556da0b6ae8218e5ac0296482bd045055605a8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 2 10:55:14 2016 +0100

    daemon: ntfs: fix format strings
    
    Use PRIi64 as format string for int64_t, so it builds and works fine
    also on 32bit.  Also switch from asprintf_nowarn to asprintf, since no
    custom formats (eg %Q, %R) are used.

commit 5742a7c500229e8bc0ce8688ce2df180616db8c1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 1 14:20:46 2016 +0100

    tests: move ntfs tests in a single directory
    
    Move test-ntfscat.sh and test-ntfsclone.sh in a single ntfs directory,
    much like the tests for other filesystems.

commit 5706d426650a7a13117a2c7a6d853cb4001e2800
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Mar 1 00:05:37 2016 +0200

    tests: Added test for ntfscat_i.
    
    Test is based on file signature, it checks whether the extracted file
    is the $MFT.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit e4f7fef3730ff2d56cfb6be7680f40748453de54
Author: Matteo Cafasso <noxdafox@gmail.com>
Date:   Tue Mar 1 00:05:36 2016 +0200

    New API: ntfscat_i
    
    Adding ntfscat_i command for downloading files based on their inode number.
    
    This allows the dowload of files unaccessible otherwise from a NTFS guest disk image.
    
    Signed-off-by: Matteo Cafasso <noxdafox@gmail.com>

commit 7a10dd44aea00e495bf92fe17d145829aabfa9ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Feb 28 16:10:41 2016 +0000

    docs: building: Document using clean-supermin-appliance rule.

commit 162d6f1792f0569225eb68b979dae69a4782b2c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Feb 28 15:55:27 2016 +0000

    appliance: Add comment and clean-supermin-appliance rule.
    
    Add a comment to appliance/Makefile.am describing the purpose of this
    directory.
    
    Add a 'make clean-supermin-appliance' rule which forces the supermin
    appliance to be reprepared from scratch.  See the discussion here:
    https://www.redhat.com/archives/libguestfs/2016-February/msg00264.html

commit 37d3b1e6ac5ae92391f2101a301aa08fa8cae85f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 27 14:57:52 2016 +0000

    builder: Add Fedora 23 (armv7l) image.

commit 20203679155f8be5b29bc2cfad2c41864ad62848
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 27 13:42:57 2016 +0000

    builder: armv7l: Specify virt-install --arch explicitly.
    
    Allow us to run this script on x86_64 by specifying the --arch option
    to virt-install, and removing the --cpu option.

commit 2cc1c30e6c1fe9906a8750a63f7bfa01deea8e33
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 27 13:42:02 2016 +0000

    builder: armv7l: Use latest available os-variant.

commit 685a5fd674d2a99d3d18ec07c4ff9baf6a493af5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 27 13:41:03 2016 +0000

    builder: armv7l: Use --vcpus=1 because TCG is not yet multithreaded.

commit 15656044f98b8232116442689f7daac9097c21e9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 26 17:59:59 2016 +0100

    java: drop empty lines at end of pod-generated text
    
    They are converted as additional empty paragraphs but adding nothing to
    the generated API documentation.  Also avoids warnings about them by
    javadoc.

commit 8f45d1e77e20fc20ae4acfdf801e163c871cbc99
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 26 17:41:49 2016 +0100

    doc: add info on per-function needed feature
    
    Document which feature, if any, is needed for a function; this should
    help users in properly checking feature availability when using certain
    functions.

commit 0b1f880a740208676f7d8d4365e60d8402b80a1b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 26 11:45:47 2016 +0000

    Version 1.33.13.

commit e5111aabc889a1b9c856488628fb46896cc897b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 26 10:05:21 2016 +0000

    v2v: -o libvirt: Preserve source <graphics> type (RHBZ#1312254).
    
    Old virt-v2v changed the <graphics> to VNC if the guest was using the
    Cirrus hardware and Spice if the guest used QXL.
    
    In commit 3d1cb74b3eee51c5d015032ad964892be914ea9c I got the logic
    backwards, using Spice if the guest used Cirrus and VNC if the guest
    used QXL, which obviously makes no sense.
    
    In this commit, I preserve the original <graphics> type from the
    source guest.  This has the advantage that the user can use the same
    method to access the guest after conversion.  If the source guest had
    no <graphics> element, then we force VNC (a safe choice), and if the
    source guest is a local disk that we use SDL, but this should only be
    used for testing.
    
    Thanks: Xiaodai Wang for the original bug report here:
    https://bugzilla.redhat.com/show_bug.cgi?id=1225789#c10

commit be8af75f3788741377aa8b24320a8a4c29563bd7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 26 09:53:53 2016 +0000

    v2v: -o libvirt: Refactor video and graphics elements.
    
    This is just a refactoring and doesn't change the meaning of the code.

commit 2c676220b2ae3d77b67f8fd6a23228e1a4aab235
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 25 11:37:16 2016 +0000

    fish: Set program name correctly for virt-{copy,tar}-{in,out} programs.
    
    Set the (libguestfs handle) program name correctly when running
    programs like virt-copy-in, so the program name is not "guestfish" but
    "virt-copy-in".
    
    Note this feature cannot be tested using the ./run script, since
    libtool (buggily) resets the program name to "lt-guestfish".  However
    I tested it on the installed copy and it worked there.

commit 459bf9f703db6c9d130a81f1ae9402aebe8296e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 25 08:48:50 2016 +0000

    perl: Don't embed API number in Sys::Guestfs.
    
    It means you have to rerun `make -C perl clean ; make' every time you
    add an API, and is useless anyway.

commit ca8f4ee652f5dc0c05fd5326770edf62b24c9132
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 25 17:42:57 2016 +0100

    listfs: ignore the default btrfs subvolume
    
    When listing the subvolumes of a btrfs filesystem, ignore the default
    subvolume: we get the content of it when mounting the whole device
    (without specifying any particular subvolume), so avoid listing it
    twice.

commit ea6392d905c8a1acf071ac37a8ed74323a8b455b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 24 13:33:16 2016 +0100

    src: print contents of structs and struct lists on tracing
    
    It eases the debugging, instead of getting just the name of the struct
    returned.

commit 1f35aff7f0bd8949ca5dcc603c1546e938970f41
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 24 12:40:23 2016 +0100

    fish: use the new structs-print.c to print structs
    
    Use of the new code to print structs, making sure the layout is the same
    as before.

commit c7bc5d0ebb43a8590d360830f8a2320ab91872a7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 24 12:29:27 2016 +0100

    src: generate code for printing contents of structs
    
    Extend the generator to generate a source (and the header for it) with
    functions that print the content of a guestfs struct.  The code is
    modelled after the code for it in fish.ml, although made a bit more
    generic (destination FILE*, line separator) so it can be used also in
    the library, when tracing.
    
    This just introduces the new code and builds it as part of the helper
    libutils.la.

commit 683f93160cacc228151c1c94345ccf038701293a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 23 09:15:14 2016 +0000

    daemon: btrfs: Use COMPILE_REGEXP macro to compile regular expressions.

commit 394cf5ee0b63de5450f0dec3413d14f47f1d7742
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 23 09:13:58 2016 +0000

    lib: Allow the COMPILE_REGEXP macro to be used everywhere.
    
    Since the daemon links to pcre and use regular expressions, and since
    the COMPILE_REGEXP macro doesn't depend on any aspects of the
    library-side code (eg. the guestfs_h handle etc), we can allow the
    daemon to use the COMPILE_REGEXP macro.  Move the macro to
    "guestfs-internal-all.h" to permit this.

commit 6b37615586bca18a18621d6889fa42237dcfda23
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 23 10:57:28 2016 +0100

    ruby: tests: use more asserts instead of manual checks
    
    Make more use of assert_equal/refute_equal instead of manually checking
    values and raising errors.

commit 0efb686f595b31f9a5c5ed0f79c579d11dcd441b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 23 10:43:36 2016 +0100

    Revert "ruby: Run tests one at a time, instead of in parallel."
    
    It seems the default behaviour of rake is to run tests sequentially, and
    not in parallel (there are separate gems to achieve that behaviour).
    
    Hence just invoke "rake test" to run all the available tests at once.
    
    This reverts commit 8f30c3c3f8c063f7c5ff8c6154d881e07a820251.

commit e3cd692cefa1729863b338d10443913d4e16c564
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 22 22:07:11 2016 +0000

    generator: Declare which input file(s) generate each output file.

commit f040da989948bfec014a1f448d150b96ea8b8e88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 22 21:53:43 2016 +0000

    generator: Make the 'this file is generated' warning clearer.
    
    Also rename the ~extra_inputs parameter as plain ~inputs.  We will use
    ~inputs more widely in following commit.

commit a9c90f8357dfc782c684a6c2a6c84c2360bd0756
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 22 22:45:28 2016 +0000

    generator: gobject: Remove parameters which are not used.
    
    Revealed by adding typed interfaces in the previous commit.

commit a6afbe6d5cde9a1e3912c16cd16cb65b204d186d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 22 22:06:29 2016 +0000

    generator: Add interfaces to all modules.
    
    Be explicit about what is exported from each module in the generator.

commit a713bdb19819b7c4430b2eaa2a3bada40e83e6ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 22 12:52:55 2016 +0000

    tests: Use LOG_COMPILER to run valgrind.

commit 85fbe97f147e55963f7bde328f37283cdd39f57d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 22 12:34:28 2016 +0000

    tests: Remove bogus use of $(VG).

commit 0bc8c483c7213e80df13e9a2def3174d0b306048
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 22 12:30:37 2016 +0000

    build: Describe how to set up check-valgrind rules correctly.
    
    Since we enabled parallel tests, you can no longer run tests
    under valgrind merely by doing:
    
      TESTS_ENVIRONMENT = $(top_builddir)/run --test $(VG)
      check-valgrind:
          $(MAKE) check VG="@VG@"
    
    The reason is that the parallel tests framework doesn't run
    ``$(TESTS_ENVIRONMENT) <test>''.  It inserts some other processes in
    between the environment and the test, so you end up valgrinding some
    unrelated process (currently the 'env' program).
    
    In run.in, remove out of date documentation for using $(VG).
    In guestfs-hacking(1), document how to do it properly.

commit 0216c6bc2d0ddc7e8a55724959e6186d5ca45c0f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 22 17:13:38 2016 +0100

    python: tests: fix long/int mismatch in test090RetValues.py
    
    Cast the value to the "int_type" representing the "long" value for
    test_rint64, so the test works again with Python 3.

commit 171479c1c0727d80007f009959f94073f7abe378
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 22 16:57:57 2016 +0100

    python: tests: move the 'int' type in tests_helper
    
    This way it can be used in other tests as well.
    
    Simple code motion.

commit ca754c85b2162f145eb905679539e753997c5d37
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 22 16:57:15 2016 +0100

    python: tests: refactor to use unittest's discovery
    
    Instead of running all the tests manually, the unittest module has a
    'discovery' mode to run tests by importing them from a directory: this
    requires the tests to have different filenames, since they need to be
    imported as modules now (hence an empty __init__.py is added), and the
    current naming does not match the convention.
    
    Using unittest as loader/runner brings another change: tests skipped as
    whole cannot be done anymore with exit(77), since they are not run but
    imported: thus introduce an helper module with decorators applied to the
    test classes to skip them according to the current checks.  This also
    gets us nicer recordings in the unittest log.
    
    Due to the relative imports (needed for the helper code), it is no more
    possible to execute tests anymore by invoking them manually; although
    it is possible to run single tests, still using unittest's runner:
    
      $ cd python
      python$ ../run python -m unittest discover -v t test010Load.py
    
    This does not change anything in what the tests do/check.

commit 973e4338f31c3d89e266ba763c602b5f605b5a16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 22 10:17:41 2016 +0000

    FAQ: Link to posting about compiling libguestfs from source.

commit 15b4eb48e5bd2116135d01873cb918d6de43a072
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 22 09:54:10 2016 +0000

    FAQ: cache=none, not cache=unsafe, prevents qemu from caching.
    
    Thanks: kaze on IRC.

commit 342fe3520461b9eb6490363604ea1cfc603deb80
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 19 12:46:22 2016 +0000

    build: installcheck: Ensure libguestfs.so is copied.
    
    If you ran 'make installcheck' when libguestfs-devel was not
    installed, then the installcheck would fail in many places with:
    
      gcc: error: ../../src/.libs/libguestfs.so: No such file or directory
    
    We should stop the installcheck script immediately if the .so file was
    not found.
    
    Also this commit ensures that src/.libs/libguestfs.so* not existing
    before installcheck is not fatal.

commit 81699fe580bcca174283237997705c4a85e33ca3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 19 08:57:15 2016 +0000

    v2v: windows: Change wording of warning about basic VGA display driver (RHBZ#1309619).

commit 2198ad04c50cd4c9df27fba846c5878f6d8241fd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 19 09:47:37 2016 +0100

    gobject: ship also run-tests-retvalues
    
    Fixes commit f7765ea6e437755e9c624a510d43210fbf4d4544 and
    commit 3787ebace472042c1c5b28014e3bc4266e81c1f5.

commit 4f575d6f06bcbbf157261ad2e4aa01961a1feb6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 18 14:41:43 2016 +0000

    v2v: RHEV: Treat Windows 8.1 x86 client as Windows 8 (RHBZ#1213324).

commit c3b5587bc72d4d31105ca590b4cd8bdd113b9721
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 18 14:41:43 2016 +0000

    v2v: RHEV: Treat Windows 8.1 client as Windows 8 (RHBZ#1309580).

commit 0298c542319682fbffc6048f12051c8bf8aa39cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 18 14:00:09 2016 +0000

    v2v: Make the error message actionable when cannot find libvirt pool.
    
    Make this error message useful and actionable by suggesting commands
    that the end user can run to find available pools, etc.
    
    I also had to extend the fixed size buffer we use for messages since
    the message got truncated.

commit 8c31a8f1979b69fc0a8b19f92ec89418bb0e18cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 18 10:06:27 2016 +0000

    v2v: OVF: In warning, display inspect.i_arch field.
    
    See: https://bugzilla.redhat.com/show_bug.cgi?id=1213324#c11

commit 08ff6b299be464e06f941e6b28d3e8658626bd2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 18 10:00:45 2016 +0000

    v2v: Add Windows 10 to OVF.
    
    See https://github.com/oVirt/ovirt-engine/blob/master/packaging/conf/osinfo-defaults.properties

commit 7ed13f63d35915a1050c8101d30f320e75e02be7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 16 12:30:00 2016 +0000

    v2v: glance: Allow Glance backend to import multiple disks (RHBZ#1308769).

commit 1307edd7c0156275ce1d1d86f868bf512cffe145
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 16 12:29:41 2016 +0000

    v2v: glance: Add "OUTPUT TO GLANCE" section to the documentation.

commit 3378ac836d681bf26397e7d1a844f3df490fb0bd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 17 10:26:35 2016 +0100

    gobject: ship correct .js file
    
    Fixes commit f7765ea6e437755e9c624a510d43210fbf4d4544.

commit 83d36e80ab8f3a3d64fa564341a050c264b78b66
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 16 14:42:44 2016 +0100

    v2v: update URL with glance metadata

commit 11f88d800dd956d29f8bbee7b79ee4bcc03d9b88
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 15 18:32:07 2016 +0100

    Start adding return values tests for bindings
    
    Introduce a new kind of bindings tests, 090-retvalues, to check all the
    possible return values in bindings; start implementing them for
    scripting languages such as GObject introspection, Perl, PHP, Python,
    and Ruby, reusing existing implementations where existing.

commit dedb22625043c129990037a15aad3a6025630003
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 15 10:40:11 2016 +0000

    v2v: Fix CompatibleIDs for Windows > 7 conversions.
    
    Thanks Joshua Pincus for finding the bug.
    
    I checked back with the original W2K8R2 guest which I had used for
    getting these registry entries, and there was a transcription error
    with two of the CompatibleIDs.

commit 1325ac501a7890ba724a1be962cc1a49490d82a8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 12 17:57:58 2016 +0100

    python: tests: use more targeted assert*() functions/checks
    
    - use assertIsInstance, assertNotEqual, and assertIsNotNone as more
      specific checks (will produce better logging)
    - use assertRaises when expecting exceptions being thrown
    - when testing internal_test_rhashtable, instead of checking type and
      elements of the return values just check the return value as a whole
      (easier and already getting all the work needed by unittest)

commit 2b1d4da97f75812134a080f2a1b568101119f7d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 12 15:57:51 2016 +0000

    Version 1.33.12.

commit 9735112d2e927ed3f3f3138e520a9fa471795c1c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 12 14:10:07 2016 +0000

    tests: Make '080' be an official test of the guestfs_version API.
    
    Useful because it tests returning a single structure.

commit bf877a02042456be69d6b1752d775ec7b94e119d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 12 15:07:51 2016 +0000

    python: tests: Use the 'unittest' module to run the test suite.

commit 31e50caa583027fb8e7eb2ebb8d18b14680f3407
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 12 13:41:26 2016 +0000

    daemon: lvm: Ignore LVs with the activationskip flag set (RHBZ#1306666).
    
    When listing logical volumes, ignore the ones which don't get
    activated automatically.  No /dev/VG/LV device node is created for
    these ones which confuses APIs that attempt to do 'guestfs_lvs'
    followed by opening the device node.  Note that 'guestfs_lvs_full' is
    unaffected by this change.

commit a73f1463773ff98cf6c39fa0e9e46be489b40699
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 12 15:10:07 2016 +0100

    php: restructure and expand tests
    
    Rename the existing tests according to the naming/numbering described in
    guestfs-hacking(1), and improve the current ones:
    - guestfs_php_001.phpt: rename to guestfs_020_create.phpt
    - guestfs_php_003.phpt: rename to guestfs_070_optargs.phpt
    - guestfs_php_bindtests.phpt: rename to guestfs_090_bindtests.phpt
    - guestfs_090_version.phpt: new, checks taken from the former
      guestfs_php_002.phpt
    - guestfs_100_launch.phpt: new, modelled after the equivalent in e.g.
      OCaml/Perl/Python
    - guestfs_php_002.phpt: remove, as what it did is now covered by
      090_version and 100_launch

commit 983e31ff24dbe09e0ca7436e06e292d080a30017
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 11 18:40:04 2016 +0100

    fish, sysprep: run FUSE-related tests only when FUSE is available
    
    They will fail anyway in that case, so run them only when the FUSE
    support is built in.

commit da532df69dff85580781e7abca9529aacd276a55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 10 14:44:35 2016 +0000

    v2v: Small documentation fix in permissions section.
    
    In vCenter 5.5 at least, it's 'Sessions', not 'Session'.

commit 2e221774a28eedbb9fc30aad4e6cf452672e904e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 10 14:43:09 2016 +0000

    Revert "v2v: Document that vCenter etc permissions must be set to "OK"."
    
    On further examining the incredibly confusing VMware dialogs, I don't
    believe this is true after all.
    
    This reverts commit e76128a20b65999073f1cc78a222526878632aa6.

commit 3180a1e08c2e56ba80c6f7b47d782dd5c5dcf0f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 10 13:17:52 2016 +0000

    v2v: Document that vCenter etc permissions must be set to "OK".
    
    And that READ_ONLY access is insufficient.  I believe this is a bug in
    libvirt, but it requires further investigation.  If it is resolved in
    libvirt then we can update this documentation again.
    
    Thanks: Ulhas Surse

commit d879b0ddf645f502740d936df17526c3ae4e1972
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 10 14:15:05 2016 +0100

    Update zanata.xml
    
    Update the Zanata configuration based on what Zanata itself proposes as
    project configuration.

commit 61b3da69424b37c6a8272255d02a46e843a2246a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 10 11:03:53 2016 +0000

    docs: Add recipe for FUSE-mounting a Windows guest with drive letters.
    
    Thanks: Pino Toscano, Hilko Bengen.

commit 2dc7444e88b3e4a7db4531b0a8623d7ba24072b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 10 10:43:09 2016 +0000

    docs: Alphabetize headings in guestfs-recipes(1).
    
    No change, just reorder a section so they are in alphabetical order.

commit 738add8adcde44d614d6bff561e1af816bda74e0
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Feb 9 17:42:00 2016 +0300

    v2v: move virtio_win to windows_virtio
    
    Now that all the stuff related to Windows virtio drivers has been moved
    into a dedicated module, it makes sense to move the definition of
    virtio_win there, too, and stop passing it around as a parameter.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 9e58d8f88accb634362ceb4d3ddb3f1b13974e96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 9 13:03:43 2016 +0000

    Version 1.33.11.

commit 0c5428fff99834bbb77f4c1f7a5ecb3155a1da77
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 9 14:18:15 2016 +0100

    tmpdirs: fix typo in variable name
    
    On mkdtemp error, free tmppath and not tmpdir (which is CLEANUP_FREE).
    
    Fixes commit 673a7a959c15e9a389a13620f3a10cb12a9537d0.

commit 5be4104dee42848b551c81c8e95b636b674054c1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 9 14:15:06 2016 +0100

    tmpdirs: centralize permissions handling
    
    Move to lazy_make_tmpdir the logic for making world-readable (but only
    for root) newly-created temporary directories, removing the non-fatal
    code doing that in guestfs_impl_launch.
    
    Followup of commit 772f649e595d202bdb67f05aeb62157c1104be89.

commit 98c07524129c715b2c1ddf93860755b5f2033055
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 9 11:36:23 2016 +0100

    lib: fix sockdir for root
    
    When running as root libvirt will launch qemu as qemu.qemu, which will
    not be able to read inside the socket directory in case it is set as
    XDG_RUNTIME_DIR under /run/user/0.
    
    Since normal users don't need particular extra access permissions for
    their sockdirs, restrict /tmp as only possible sockdir for root,
    changing the permissions only for this user (and making this operation
    fatal).
    
    Fixes commit 55202a4d49a101392148d79cb2e1591428db2681 and
    commit 7453952d2456272624f154082e4fc4244af8e507.

commit 921cccd15fcb7f7a54b990d25e4a53fc99b43e18
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 8 17:52:29 2016 +0000

    Version 1.33.10.

commit f0267f88507b0f0a83d0740ee36d8372e8cc382d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 8 16:55:19 2016 +0100

    tests: reduce sizes of scratch disks to 2 GB
    
    1 GB should be enough to create a btrfs filesystem, even with 64K page
    size; hence, make the /dev/sda and /dev/sdb test devices smaller so
    there is less space taken during the test run.
    
    Followup of commit 8ffad75e5b610274a664a00f1f1186070b602e18 and
    commit 9e9b648770f9b8dbe8f280e4b5d1f80c4d689130.

commit 0d7ba6938a89be96c5660a2718c547604b23f342
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 8 17:09:48 2016 +0000

    launch: Set sockdir mode to 0755.
    
    https://bugzilla.redhat.com/show_bug.cgi?id=610880
    
    Fixes commit 55202a4d49a101392148d79cb2e1591428db2681.

commit 89ddb046a7919d2f44eeb31bdbdb254414aec17f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 8 17:09:48 2016 +0000

    launch: libvirt: Debug sockdir not tmpdir.
    
    Fixes commit 55202a4d49a101392148d79cb2e1591428db2681.

commit e0f11d8c68612e12924a9ea0b2e7374e5c46847b
Author: Dawid Zamirski <dzamirski@datto.com>
Date:   Sat Feb 6 11:50:05 2016 -0500

    inspect: get windows drive letters for GPT disks.
    
    This patch updates the guestfs_inspect_get_drive_mappings API call to
    also return drive letters for GPT paritions. Previously this worked
    only for MBR partitions. This is achieved by matching the GPT partition
    GUID with the info stored in the blob from
    HKLM\SYSTEM\MountedDevices\DosDevices keys. For GPT partions this blob
    contains a "DMIO:ID:" prefix followed by a 16 byte binary GUID.

commit 6f6107f905bb6601c09eee3873a14e52122307d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 5 19:11:47 2016 +0000

    Version 1.33.9.

commit b14d65f2fc3f184ef6f60207095c5cee52722c71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 5 13:16:36 2016 +0000

    lib: Stop exporting the safe_malloc, etc. functions.
    
    As was forewarned in the comment, stop exporting these functions
    outside the library.

commit edc07b28e5abe97c5ee59147bb3b7cde0c6200a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 5 14:08:30 2016 +0000

    ruby: Stop using the safe_malloc, etc. functions.

commit b7dccbb02b09534674e17015cbedf6fb650455bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 5 13:35:29 2016 +0000

    perl: Stop using the safe_malloc, etc. functions.

commit 43244f2b0c7649096d722f3c0f88c85337d3a404
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 5 13:16:22 2016 +0000

    java: Stop using the safe_malloc, etc. functions.

commit 7dd5aecac0622df159b4e4d4ad9e88be1d5f31cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 5 13:15:59 2016 +0000

    python: Stop using the safe_malloc, etc. functions.

commit 98ab922e4708f4e2084f5f5b6ea7e222016bf060
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 5 13:15:48 2016 +0000

    ocaml: Stop using the safe_malloc, etc. functions.

commit 50ee3afef615e4ae8b6ff32a89ff6e58f51abc94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 5 13:04:57 2016 +0000

    java: Fix documentation of @throws.
    
    The javadoc @throws directive requires a string documenting
    when the exception is thrown.

commit b982dd701ca15dece5f9f15bfb2530b12770c3df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 5 09:16:52 2016 +0000

    v2v: Move the other OVMF paths into the core library.
    
    Refactoring change, continuing the theme from the previous commit.

commit d64a36d8f7ac43f2f25302b79dbb769d46a94a28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 4 18:22:10 2016 +0000

    aarch64: Use a common table of AAVMF paths.
    
    Previously the code had two places where an identical set of AAVMF
    paths were stored.  Put this information into one place.
    
    This is just refactoring.

commit 8308f268bf659da5c1928ed8b872a823d2a3719e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 4 10:49:31 2016 +0100

    customize: add globbing for --delete
    
    Support globbing in paths passed to --delete, telling glob to not
    return directories with leading slash.
    
    This re-adds back globbing for --delete in virt-sysprep, which was
    available before the integration with common code from virt-customize.

commit 96054d36265dbebc39857d5898ac6e0d46faf264
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 4 10:45:20 2016 +0100

    daemon: glob: add optarg to control trailing slash for dirs
    
    Add a new optional bool "directoryslash" to indicate whether the caller
    wants trailing slashes in names of directories, defaulting to true (the
    current behaviour); this helps with interoperability with other tools
    (such as rm).
    
    Related to RHBZ#1293271.

commit d6e50445fcc64d233f1d60d5123c02e77ca62645
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 3 18:09:56 2016 +0100

    sysprep, get-kernel: explicit the Guestfs parameter
    
    Help the OCaml compiler by expliciting Guestfs.guestfs as type for 'g'
    in some functions.

commit b1ea50e681c1c9f4f267b60990823ea5325135d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 3 21:35:48 2016 +0000

    v2v: Replace "=" by "_" in OVF .meta DESCRIPTION field.
    
    The current VDSM .meta file parser is incorrect:
    
      https://code.engineering.redhat.com/gerrit/gitweb?p=vdsm.git;a=blob;f=vdsm/storage/fileVolume.py;h=20573bd2a3fe6909a8474bd7c53c8d0fea79091c;hb=c1289fd70edcde0a0b3bc8e37ecad1e2a5babe1a#l285
    
    When parsing the key=value fields in the .meta file, it uses the
    Python expression:
    
      key, value = l.split("=")
    
    which throws an exception "ValueError: too many values to unpack" if
    the value part also contains an "=" character (because split returns
    an n-tuple with n > 2).  The correct way to split the string in this
    situation is to use l.split("=", 1).
    
    In commit 399e031c25a5385a3f918d0a604e2751bd34242f I changed the
    DESCRIPTION field in .meta so that in RHEL it would look like this:
    
      DESCRIPTION=generated by libguestfs 1.32.2rhel=7,release=1.el7,libvirt
    
    thus containing an "=" character in the value and throwing an
    exception in VDSM.
    
    Although this is a bug in VDSM which needs to be fixed separately,
    change any occurrence of "=" in the value to "_" to avoid this
    problem.
    
    Thanks: Derrick Ornelas for helping to diagnose this bug and finding
    the offending code in VDSM.

commit 561d1ac66393bd60e1e769bfe77353b0ff872e39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 3 17:10:15 2016 +0000

    tests: btrfs: Use a 2000 MB partition for btrfs test (instead of 200 MB).
    
    One of the mkfs-btrfs tests used two 200 MB partitions.  That isn't
    enough to create a btrfs filesystem on aarch64 (with 64K page size).
    Since we now have a 10 GB disk, we can make the test partition 10
    times larger.

commit 38cf0756df336f3d630e5f0ac3dd5a09b1837341
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 3 17:08:09 2016 +0000

    tests: btrfs: Don't test --leafsize, and use --nodesize 64K.
    
    In btrfs-progs 4.4, the --leafsize parameter is deprecated.  It's now
    just an alias for --nodesize.
    
    On aarch64, --nodesize 4096 does not work because it's smaller than
    the page size (64K).  Luckily we can test a 64K nodesize on any
    platform, so use that instead.

commit 1cfcf2199e8505d51aa4505068c2975fa6db6167
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 3 16:53:17 2016 +0000

    tests: Increase the size of the /dev/sda and /dev/sdb test devices.
    
    Previously these were rather small - just 500 MB.  This is too small
    to create a btrfs device on aarch64 (where page size may be 64K), and
    barely enough even on x86-64.  This change makes both these devices
    10 GB, and adjusts a few tests so they continue to pass.

commit 9d4048c0f2cd2883b49fc9ff610e4e27ec56997e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 3 13:32:05 2016 +0000

    Version 1.33.8.

commit 09b927de7e34ac30af84d848cdf63bd82f11afba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 2 12:08:35 2016 +0000

    resize: Use sparse copy for extended partitions unless --no-sparse.
    
    Thanks: Maxim Perevedentsev

commit 761b6a2fda13ba5331cb135bf03d913029cc94ec
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 3 13:24:37 2016 +0100

    generator: simplify generated code for always-available features
    
    Just refer to the dummy function directly, instead of using #define's.

commit 50a72bd4843e25fc0cf2489a46ce76ca4d7ad53d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 3 13:15:29 2016 +0100

    New API: get-sockdir
    
    Introduce a new read-only API to get a path where to store temporary
    sockets: this is different from tmpdir, as we need short paths for
    sockets (due to sockaddr_un::sun_path), and it is either
    XDG_RUNTIME_DIR if set, or /tmp; adapt guestfs_int_create_socketname
    to create sockets in that location.
    
    Furthermore, print sockdir and XDG_RUNTIME_DIR in test-tool for
    debugging.

commit d902fc3ad5bce50d76b39656a199a65a77cf8cb7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 3 12:51:26 2016 +0100

    launch: add internal helper for socket paths creation
    
    Introduce an internal helper to create paths for sockets -- will be
    useful for changing later the logic for placing sockets.
    Futhermore, check that the length of sockets won't overflow the buffer
    for their filenames.

commit 7ca811d06186ba3a347626503ff65ccc377adfd2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 2 12:44:13 2016 +0100

    lib: extract lazy tmpdir creation helper
    
    Extract the bit of code for lazy creation of a temporary directory, so
    it can be used for more directories as well.
    
    This is just code motion, with no behaviour changes.

commit bf2d0a530cf5e2a82b7b14470204338592baf651
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 29 17:56:22 2016 +0100

    launch: libvirt: cleanup sockets on shutdown
    
    Unlink the sockets in the shutdown callback, instead of right before
    creating a new ones.  This makes sure we are unlinking the right
    sockets.

commit c823e487fb71b5e85d07a2a7773c3209b4831481
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 29 17:50:42 2016 +0100

    launch: libvirt: move socket path variables
    
    Move the paths of the sockets used, from the libvirt_xml_params struct
    to backend_libvirt_data; this way, they will be usable also outside the
    launch callback.
    
    Simply code motion.

commit b630658e91f7f62848362060b0ae708e840f482b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 29 16:19:01 2016 +0100

    launch: direct: cleanup daemon socket on shutdown
    
    Unlink the daemon socket in the shutdown callback, instead of right
    before creating a new one.  This makes sure we are unlinking the right
    socket.

commit e945cae82d0d3c17e2d174bb75be35f5a9e3345e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 29 16:03:06 2016 +0100

    launch: direct: save the path of the daemon socket
    
    Save the path of the socket passed to qemu for communication with
    guestfsd; we will need it to clean it correctly.

commit aae9da425bfdddce6f714bdeb1a27126612e3663
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 29 16:01:21 2016 +0100

    launch: unix: check for length of sockets
    
    Error out early if the path to the socket will not fit into
    sockaddr_un::sun_path, as we will not be able to connect to it.

commit d32091a94c3f4611117ba32d30015d340a905595
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 31 16:00:00 2016 +0000

    FAQ: Add answer about unsupported use of NTFS in RHEL 7.2.

commit 0b6b2b0c737ea87aa4561bd6ee6cb096f163cfea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 31 14:22:14 2016 +0000

    v2v: Split with_hive into with_hive_readonly, with_hive_write.
    
    I find the code slightly easier to read if we get rid of the ~write
    flag, and instead split the with_hive function into two functions, one
    for readonly access, and one for write access.
    
    This is just code refactoring.

commit e612d290748ad2e21832fdb84faf3137c7178db0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 31 14:14:37 2016 +0000

    mllib: Add 'protect' function (like try/finally).
    
    Use the function in the virt-v2v [Windows] module.
    
    This is just refactoring.  There is no visible change in
    functionality.

commit e8bf6f3827432c57e913e06cc3e92ad4fcec1939
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 31 13:58:57 2016 +0000

    mllib: Move the maybe type (like Haskell Either) to common library.
    
    Just code motion.

commit 0fdfac32597581cc1002eaaaeb0b1aa2fbf1c65b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 29 20:57:49 2016 +0000

    arm: Disable -Wcast-align warning.
    
    Any modern system can handle unaligned memory access.  On armv7 it's
    slightly slower, that's all.

commit 9c6383efb66e5497fa3b5a5f784e015d4b2980f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 29 12:50:12 2016 +0000

    v2v: windows: Remove unused code left over by previous commit.
    
    As this code wasn't exported in the module interface, it cannot have
    been used anywhere.
    
    Fixes commit b76f27142560d47648cc3cba1a19f753a78bafcb.

commit 81fd4ed6b8f39aae4c4b3d0c2b9a9617d8821e84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 29 12:39:05 2016 +0000

    v2v: Remove items from TODO which have been implemented already.

commit a94e9952e4d63a857d9293873b27689710ac046e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 29 10:26:27 2016 +0000

    Version 1.33.7.

commit f56d677414f920912814a633f8055627831487d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 29 09:46:48 2016 +0000

    v2v: windows: Move all virtio driver installation code to common module.
    
    Add a common module `Windows_virtio' and move all the code related to
    finding and installing Windows virtio drivers to this module.
    
    This is just code motion and code refactoring, there is no change in
    functionality.

commit 14190ac1f72c2d68f77aeb1553eda02e49ae8257
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 28 18:23:55 2016 +0100

    inotify_add_watch: pass IN_ALL_EVENTS as mask for test
    
    Instead of pass 0x3fffffff as mask value, pass a simplier 0xfff, which
    is the value of the IN_ALL_EVENTS define.  This will still catch all
    the inotify events, and avoid a EINVAL error with Linux 4.4.

commit ffd86ea8c5e89f9f9be13e783b1f6675b3a13a76
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 29 08:56:10 2016 +0000

    v2v: windows: Update comment about device number key.
    
    Thanks: Vadim Rozenfeld for finding the TechNet documentation
    related to this key.

commit 6eb3da8adcc07b3f7256e62d7c5964ba67bf32f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 29 08:52:09 2016 +0000

    v2v: Add location of SUSE UEFI binaries.
    
    Thanks: Jim Fehlig

commit 7abd69930462827e355f9adfaa9cc1d8dfaf7ba8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 22:03:32 2016 +0000

    ruby: Rename internal C functions with more consistent naming.

commit 1ebb2e6c8bd18946c88e3bae77a4001645d42b21
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 21:53:38 2016 +0000

    lua: Rename 'guestfs_lua_' functions to 'guestfs_int_lua_'.
    
    Actually these are all static functions, so they don't really need the
    'guestfs_' prefix at all, but using a prefix avoids any possibility of
    a collision with a standard C function.
    
    This is a mechanical refactoring.

commit db0ae7713986e74d50bcd2be8fd774071db6dc84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 21:49:47 2016 +0000

    python: Rename 'py_guestfs_' functions to 'guestfs_int_py_'.
    
    Purely mechanical change, done by a Perl script (hah!)

commit 2e520039bb27251e0c8a475dd4e501115d222591
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 21:38:18 2016 +0000

    java: Rename internal C function without guestfs_ prefix.

commit 34062719c188e9d4b7f27d07304209125a5c62c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 21:25:18 2016 +0000

    ocaml, virt tools: More consistent naming for C functions.
    
    For functions linked to virt tools, make sure the name of the function
    actually matches the virt tool.  Because of the history of moving
    functions across tools, some names no longer matched.
    
    For mllib, use `guestfs_int_mllib_' prefix.
    
    For OCaml bindings, use `guestfs_int_ocaml_' prefix.
    
    This commit is by no means complete.  There are many other C functions
    in other language bindings which could do with being more consistently
    named.
    
    There is no functional change, this is just refactoring.

commit b4a257eafd414fdf12fc8c5be2042d152b1a2a77
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 21:03:22 2016 +0000

    docs: Remove reference to double underscore, which is no longer used in internal identifiers.

commit 0176ab3a81edcb179f2bd3223b3804c61f0b2869
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 21:00:54 2016 +0000

    docs: Rework headings in guestfs-hacking(1) manual page.

commit 1b146c6b3a4f5b03c4273d0c0b641ef033f6dc12
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 20:58:08 2016 +0000

    docs: Move section about local* files to guestfs-building(1).
    
    Since it is part of the instructions for building libguestfs, it goes
    better in the guestfs-building(1) man page.

commit 73beb863316dd93e16e402b8c66bd17a06dad3a8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 28 15:38:11 2016 +0100

    lvm: support lvm2 older than 2.02.107
    
    lvm2 2.02.107 adds the -S/--select option used in lvs to filter out only
    public LVs (see RHBZ#1278878).  To make this work again with versions
    of lvm2 older than that, only on old versions filter out thin layouts
    and compose the resulting device strings ourselves.
    
    The filtering done is much simplier than what "-S lv_role=public" will
    do, but should be good enough for our need.

commit a0165adb8ac6f510405e3a159349b73dca483f01
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 13:55:20 2016 +0000

    v2v: linux: Find dracut if it is located in /usr/bin.
    
    In Fedora 23, dracut moved to /usr/bin.  However we only looked for
    /sbin/dracut, so we didn't find it.  You would have seen a failure
    like this:
    
      virt-v2v: error: unable to rebuild initrd
      (/boot/initramfs-4.2.3-300.fc23.x86_64.img) because mkinitrd or dracut was
      not found in the guest
    
    Look for dracut in /usr/bin as well.
    
    Thanks: Arnaud Bougeard.

commit 5de7a34ba504ab8f2b92a245c57b8393864954b3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 28 14:23:02 2016 +0100

    python: stop using parens-less print in tests
    
    print "" is no more available in Python 3, and print(...) is available
    since Python 2.7; as one of the tests was using print(), use this form
    everywhere so the tests can run fine with Python 3.

commit d512d7d66e79e45fc77c2d939e93124393190116
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 13:00:28 2016 +0000

    v2v: windows: Don't hard code "oem1.inf" string.
    
    Find the next free "oem%d.inf" string.
    
    Thanks: Vadim Rozenfeld for clarifying what we should be doing
    in this case.

commit 5ae606f142b56821b8ac9b685471f751b03ef04f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 13:00:16 2016 +0000

    v2v: Abbreviate a couple of comments.
    
    No functional change.

commit b48c9df974f2aacb28ed4540931a73465663dc8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 28 12:37:33 2016 +0000

    GCC 6: Avoid warning about logical OR of "equal" expressions.
    
    The warning (see below) is fairly useless.  This modification to the
    code avoids it.
    
    inotify.c: In function 'do_inotify_read':
    inotify.c:219:32: error: logical 'or' of equal expressions [-Werror=logical-op]
           if (errno == EWOULDBLOCK || errno == EAGAIN) /* End of list. */
                                    ^~

commit b591c8574e96a8ffe9407c65c7326bdb253ee13b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 27 17:36:03 2016 +0000

    Version 1.33.6.

commit 72bc3138d7ff5eee5389dc1850edd8afb84da32a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 27 12:03:23 2016 +0000

    p2v: tests: Don't supply os-version in test.

commit 8850c69b954178306ae3ea2ea24ef8941414f75d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 27 14:23:48 2016 +0100

    actions: mark btrfs test case of vfs_minimum_size as TestRunOrUnsupported
    
    The btrfs implementation of vfs_minimum_size requires
    btrfs-progs >= 4.2, erroring with ENOTSUP otherwise; thus mark the btrfs
    test case of the vfs_minimum_size tests as TestRunOrUnsupported, so it
    will not cause failures if the available btrfs-progs is not enough.

commit fe94decde46e69651e281bc9bb8518300b1d4fd7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 27 14:17:22 2016 +0100

    generator: add TestRunOrUnsupported test type
    
    Create a new TestRunOrUnsupported test type, which represents a test
    sequence where a failure with ENOTSUP in the last command only marks the
    test as skipped.  To be used mainly when testing features available only
    with some versions of helper tools used in the appliance, for example.

commit fa40449d66c029ab6db35d4f5985725193013d82
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 27 14:09:16 2016 +0100

    btrfs: also check return value of sysroot_path in btrfs_minimum_size
    
    Followup of commit 79ac68030f82ade1e686484e4f77d8e05a38c41b.

commit 6d9ca112fe013ba0a473447e0d8b891821dfd1fb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 27 13:45:24 2016 +0100

    btrfs: fix leak in btrfs_minimum_size
    
    Make sure the result of sysroot_path is properly free'd.

commit da4e5e3c7ae4ab34af752115b84f055df9064fec
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 27 13:29:16 2016 +0100

    btrfs: fix wrapping in message in btrfs_minimum_size

commit 50093a3a48e484b6831b774f791bd71ca4cdb400
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 27 11:48:53 2016 +0000

    p2v: virt-p2v-make-disk: Make os-version parameter optional.
    
    Having to choose the os-version of the virt-p2v disk was confusing.
    Users thought it had something to do with the physical machine being
    converted.
    
    In some cases, virt-p2v-make-disk can now choose a suitable os-version
    for the user.  Usually it's the latest numeric version of Fedora or
    Debian, depending on the host distro.  If we don't recognize the host
    distro, we bail and ask the user to choose, but this is still an
    improvement.

commit 5f4b433584e8d9725d5a02830663cef2c8037757
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 27 11:48:17 2016 +0000

    p2v: Use $program consistently in virt-p2v-make-disk script.

commit a7626b26326aa358993e1d7933893a09128c6820
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 27 11:38:09 2016 +0000

    p2v: Fix typo in virt-p2v-make-disk manual page.

commit 0a6ad0696c008e6ca81d38addb7d6f84b0322c3f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 26 22:18:42 2016 +0000

    docs: Refresh the guestfs-testing(1) man page.
    
    Require libguestfs >= 1.22.  Testing ancient versions isn't useful.
    
    Add a virt-builder test section.

commit 8ad53a3878f7cd926446821078b00e9e5d37eb70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 26 21:49:04 2016 +0000

    docs: Fix headings in guestfs-security(1).

commit 77dc7eef7438d94952940426b8247434638f0c48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 26 21:45:17 2016 +0000

    docs: Add security contact information.

commit c0167a26fd5abddad03089429f6451e751ff7989
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 26 21:38:12 2016 +0000

    docs: Refactor list of manual pages in guestfs(3).

commit 232ad5039d615015ed1aea046c82ac9c314e298b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 26 21:24:33 2016 +0000

    customize: Remove "useless" sprintf.
    
    Actually the OCaml compiler rewrites all printf functions at compile
    time to a series of primitive string operations, so the use of sprintf
    here doesn't really matter.  Still, it's a bit tidier not to use
    sprintf where it's not needed.
    
    Also this commit contains some code reformatting.
    
    This is just refactoring.

commit 9ce6258a9561c24f967dde926702e044ac275a2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 26 15:34:09 2016 +0000

    p2v: User can click on an interface name to identify the physical interface.
    
    When the user clicks on the second column of the list of network
    interfaces, run 'ethtool --identify <if_name> 10', which (on supported
    cards) flashes a light on the physical interface for 10 seconds,
    allowing it to be identified by the operator.

commit f39a19a90ca9872736daa5386e8fd7d4b7cc1b9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 26 16:01:02 2016 +0000

    customize: Add support for the APK (Alpine Linux) package manager.

commit 9479e2438b6d1cac0f73801a1dabc2765d3c2e3a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 26 18:49:55 2016 +0100

    inspect: resolve symlinks when detecting architecture
    
    Resolve the paths of the binaries we are looking in the guest to
    identify the architecture. This way we can identify also busybox-based
    guests such as Alpine Linux, where all the "base" binaries in /bin are
    symlinks to busybox.

commit 368fc84f06fb02ed0e9940710501601be7c83eeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 26 14:04:38 2016 +0000

    Version 1.33.5.

commit 06a3311945d89e7e7b9c24bf048b62087887c105
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 26 11:25:54 2016 +0100

    daemon: fold xfs_admin stdout to stderr
    
    Apparent newer versions of that report everything on stdout, including
    error messages; since we only print something on failure, fold stdout to
    stderr so we can see everything on failure.

commit 2cca79319c7c1f55e17d728177cb05f650197f9e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 26 11:23:25 2016 +0100

    xfs_admin: do not set lazycounter in tests not checking that
    
    This flag cannot be disabled (yet) in V5 xfs filesystems; since 2 out
    of the current 3 tests of xfs_admin check other results than that flag,
    avoid setting it when not needed.

commit 669071d3ca3c339b168eb926926cc18827a0749d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 26 11:21:46 2016 +0100

    daemon: improve debugging for "stdout on stderr" flag
    
    When the COMMAND_FLAG_FOLD_STDOUT_ON_STDERR flag is passed to
    command*(), indicate that as stdout=e in debugging message.

commit 22563ad6f48f0b4b4b72364cef1c25149ffb3971
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 25 19:53:42 2016 +0100

    btrfs_subvolume_show: fix root/toplevel check w/ btrfs-progs >= 4.4
    
    In trfs-progs 4.4 the error message has been changed, and our check did
    not work anymore.  Yes, parsing user messages really sucks...

commit 0ca414ee496e4bac157b6ff49d4d3876ef2cd085
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 25 19:08:14 2016 +0100

    actions: expand partitions for btrfs_image test
    
    Apparently with newer btrfs-progs (seen with 4.4) 100M are not enough
    for a btrfs filesystem; hence double the size of the partitions
    created in the test of btrfs_image, so now 200M are enough for btrfs.

commit 1c802eaa394f44e08ffa3669a859ecabf8c0a162
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 24 15:11:49 2016 +0000

    p2v: Use new miniexpect methods to access the handle fields.

commit 408a93245402890c086de3e1cdcbd07508782f78
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 24 15:06:35 2016 +0000

    p2v: Resynch miniexpect with upstream.
    
    Upstream miniexpect commit 3df4c0d3e4192cb6bb8e9ed7126346ab6aa98043.

commit 5502fc81613573151d290ca2baa0528ac7d4213d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 24 15:05:43 2016 +0000

    p2v: Handle mexp_close returning -1 correctly.
    
    If a system call fails, this function returns -1 and sets errno.  This
    case was not handled correctly.

commit c012f46eda812d58c600f5c1c9011b87066c3f7d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 22 22:19:22 2016 +0000

    arm: Remove all DTB (device tree) code.
    
    In commit af762e43424382d895d3a10aa6632adc601fdbad (2015-03-05)
    I stopped libguestfs from using the supermin -dtb parameter when
    building appliances.
    
    It has not been necessary for quite a long time to specify a DTB,
    since qemu itself creates a device tree structure in the guest
    (appliance) memory from the devices presented to the guest.  Qemu does
    this on the fly each time the guest starts.
    
    As I promised in the commit mentioned above I would remove this code,
    and this commit does that (for libguestfs only).

commit 1337c0f532418ee37a86381f11ce2dac01bbc349
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 22 21:51:18 2016 +0000

    launch: libvirt: Reword an SELinux debug message.

commit 007228eb94bfc96682d180304a8eb8755ceb2619
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 22 21:47:48 2016 +0000

    launch: libvirt: Refactor destroy_domain function.
    
    Small rewrite of commit 7e2f2b0b2410587b81fd42bf741e3a36a5e75f6f.  No
    functional change.

commit c5ec132a06b6b21c0a3272bd796dd7ad473fc14b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 22 15:43:53 2016 +0000

    docs: Tested clang, and userspace probes now work.

commit 68243fc5824f837eb1024cfe926688074aee931e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 22 13:16:03 2016 +0000

    Version 1.33.4.

commit 78a608c37936223dd77ba0632603ec7279e3ab6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 22 13:08:24 2016 +0000

    daemon: Link with cleanups.c.
    
    And remove the cleanup_* functions from guestfsd.c.
    
    This fixes commit d94860d7e8357b70d2a301f381fc41aca49c4369.

commit eb3d7f8e0bf9092d9967c1f37d41ca7cbbea6c68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 22 12:52:33 2016 +0000

    Minor fixes to "daemon: Split out command* functions and CLEANUP_* macros."
    
    This updates commit d94860d7e8357b70d2a301f381fc41aca49c4369.
    
    Thanks: Pino Toscano.

commit 0b3e32d24b4ad6081ef3d57f153aec5b2f085869
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 22 12:42:57 2016 +0000

    Version 1.33.3.

commit 904b4a4e4dcefc9072b1c51cb394979883ab0436
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 4 16:28:08 2015 +0000

    daemon: Split out command* functions and CLEANUP_* macros.
    
    This allows the command* functions and CLEANUP_* macros to be used
    independently from the daemon.

commit df9e16399e75e2171ae917570e54c5ca7226e99c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 4 16:19:43 2015 +0000

    daemon: Rename daemon/command.c -> daemon/sh.c.
    
    Simply a file rename, no other change.

commit 97994495702112ae05bd8873820a7f4cddacf126
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 21 13:37:19 2016 +0000

    p2v: Display architecture in the About dialog.

commit a9d56f52f1efd6024dd95ac081f561054b365a93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 18 12:12:58 2016 +0000

    p2v: virt-p2v-make-disk: Allow --arch parameter to be supplied.
    
    This allows you to build a 32 bit virt-p2v USB key, even on a 64 bit
    host.
    
    Because of problems with the Fedora build system it's unfortunately
    not easy to build a 32 bit virt-p2v binary, so this patch punts on
    this issue and assumes that the user can supply the binary themselves.

commit 1a4ba05243cee1991f8eddfd216374d25b813478
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 21 12:35:42 2016 +0000

    p2v: Fix paths to data files in documentation.

commit 72f17b79e9f5fec57ad4191f599177f5b4198a61
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Wed Jan 20 13:02:11 2016 +0300

    New API: part_expand_gpt.
    
    This action moves second(backup) GPT header to the end of the disk.
    It is usable in in-place image expanding, since free space after
    second GPT header is unusable. To use additional space, we have
    to move second header. This is what sgdisk -e does.
    
    However, sgdisk -e may perform additional actions if the partition
    table has unexpected params (e.g. if we call sgdisk -e /dev/sda1,
    it may fix partition table thus destroying the filesystem).
    To prevent such cases, we do a dry-run at first and fail if
    additional actions are scheduled.

commit 7960836eaa18829c2e6dae29c28dea8254abd00e
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Wed Jan 20 11:39:43 2016 +0300

    convert_windows: uninstall Parallels Tools on first boot
    
    If present, Parallels Tools may stand in the way of proper running the
    windows guests in non-Parallels hypervisors, so we're better off
    uninstalling them on the first boot into the new environment.
    
    With this patch, the uninstall records for Parallels Tools are looked up
    in the registry and, if found, corresponding firstboot actions are
    registered, taking special care that those actions are run fully
    unattended.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 2c83a51336578866b658558a1e9c2a4d75047a89
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 20 17:25:09 2016 +0000

    Version 1.33.2.

commit 2e1a82fd00a48e124734e8e4f9b450de55aade65
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 20 17:05:53 2016 +0000

    tests: regressions: Allow test-big-heap to work on machines with less memory.
    
    This test would fail on machines with around 4 GB of free memory.
    Adjust the test so it would now work on such machines (it will however
    still fail on a machine with around 2 GB of free memory).

commit a8cc880e815b5a4acc51c75917192f94545faf60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 20 16:34:34 2016 +0000

    docs: Add requirement on ncurses.
    
    Previously missing from the requirements list.

commit 98832e4a4e84a4063ebe92e5dcbb2c44f2fb76fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 20 12:17:12 2016 +0000

    docs: Add guestfs-building(1) man page.
    
    This contains instructions for building libguestfs from source.

commit 60ddcb5d8dca5458e4191f68f93d8a75b13fe4fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 20 12:02:22 2016 +0000

    p2v, v2v: Move HACKING documentation to guestfs-hacking(1) manual page.

commit c9fb5bef4ee31f7a16306052b421131e9508635e
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Tue Jan 19 15:03:01 2016 +0300

    resize: preserve GPT disk GUID.
    
    Changed disk GUID makes some OSes fail to boot.
    To enable virt-resize to support such OSes we
    have to preserve disk GUID.

commit 6b31df4d439021705a6d43c7f1f03bdd137be708
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Tue Jan 19 15:03:00 2016 +0300

    New API: part_set_disk_guid_random.
    
    Provides a way to set a new randomly-generated GUID to disk.

commit b67cdd3620d3dfb9af9438d9af014bc4044ac855
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Tue Jan 19 15:02:59 2016 +0300

    New API: part_get_disk_guid and part_set_disk_guid.
    
    Some OSes (e.g. Windows Server 2012 R2) fail to boot if the disk
    GPT GUID has changed. To preserve disk guid e.g. during virt-resize,
    we need a way to get/set disk GUIDs.

commit a5513383ae6ae901ea961b7680cb97cec2982275
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 19 14:09:33 2016 +0000

    lib: Handle slow USB devices more gracefully.
    
    Libvirt has a fixed 15 second timeout for qemu to exit.  If qemu is
    writing to a slow USB key, it can hang (in D state) for much longer
    than this - many minutes usually.
    
    The solution is to check specifically for the libvirt EBUSY error when
    this happens, and retry the virDomainDestroyFlags operation
    (indefinitely).
    
    See also the description here:
    https://www.redhat.com/archives/libvir-list/2016-January/msg00767.html
    
    Similar to the following OpenStack Nova commit:
    http://git.openstack.org/cgit/openstack/nova/commit/?id=3907867
    
    Thanks: Kashyap Chamarthy and Daniel Berrange.

commit 63c4904d5809749d5bd2292d725c7d4e5e0f80ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 19 16:01:46 2016 +0000

    launch: libvirt: In error messages, display err->int1, don't display domain.
    
    The err->domain field is essentially random from the point of view
    of libguestfs.
    
    The err->int1 field has some useful information in some circumstances:
    it has the errno value from the failed system call.

commit 2ddbab9a4c73267070e83dc1717390bde79a10ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 19 12:58:06 2016 +0000

    Revert "p2v: virt-p2v-make-disk: Allow --arch parameter to be supplied."
    
    This won't work unless we also build a 32 bit virt-p2v binary.
    
    This reverts commit d723b352f8c10fb5244f17889cf68e13dd85c037.

commit 9cbabdcc909e2d207ae5c1daf9dace584afccd3f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 15 11:27:48 2016 +0100

    daemon: resolve paths for ll and llz
    
    Resolve in the guest the given path, so absolute symlinks can be listed
    using appliance tools without resolution errors.
    Also remove the note about the possibility to escape the sysroot using
    ll and llz, since realpath won't return paths outside sysroot.
    
    Fixes part of RHBZ#1293276.

commit 9955b59918cdf7f1f4bf92368ad45bfc075fc2f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 18 17:06:36 2016 +0000

    p2v: virt-p2v-make-disk: Use a more robust way to get the latest kernel version.
    
    Fedora/i686 does not have a package called 'kernel', so the command
    'rpm -q kernel' fails.  In any case the method used wasn't exactly
    very robust.
    
    The new method is based on how febootstrap used to do this.
    
    This updates commit d723b352f8c10fb5244f17889cf68e13dd85c037.

commit 7eea1a0ad929343a0fd971138c5054eb76083294
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Mon Jan 18 18:09:05 2016 +0300

    Add -f option to resize2fs -P in vfs_minimum_size.
    
    Sometimes the user wants to know minimum size
    for dirty (e.g. mounted) filesystems. In this case,
    resize2fs -P will require calling e2fsck -f, while
    "in general, it is not safe to run e2fsck on mounted filesystems".
    
    Since resize2fs -P does not modify filesystem, we force it
    to display (probably approximate) minimum size.

commit 34b579ebde43a0e1d3bb7fa7ca1abc867b96c832
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 18 12:12:58 2016 +0000

    p2v: virt-p2v-make-disk: Allow --arch parameter to be supplied.
    
    This allows you to easily build a 32 bit virt-p2v USB key, even on a
    64 bit host.

commit 2dc304612f06b17ec35c8be99bb54a8b759a8080
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 14 17:04:50 2016 +0000

    Update gnulib.
    
    The version we picked just before 1.32 was released suffers from:
    
      test-mbrtowc.c:49: assertion 'ret == (size_t)(-2)' failed
    
    on RHEL 7.  See this thread for details:
    
      http://comments.gmane.org/gmane.comp.lib.gnulib.bugs/35567

commit a5ea9725b7f3f20b3c2ce90be2ff8dbb5459a1fa
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 14 12:40:31 2016 +0100

    builder: allow a specific template for --list
    
    Allow the user to specify a template in --list mode, which will be the
    only result in the resulting output (instead of all the available
    templates).
    
    This makes it easier to find out the details of a specific template.

commit 1e483e898783571f7cff7d1da8d228f1177b5dc5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 14 11:51:13 2016 +0100

    builder: move os-version search in own function
    
    Simple code motion, no behaviour changes.

commit c4117e7e2679801c31ea9a63e2f66c84b02b0703
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 15 12:52:48 2015 +0000

    tests/mountable: Allow test to be skipped.

commit 51857abce08a752a53c2ed30dbc4b74dd43a1d8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 11 14:06:42 2016 +0000

    Version 1.33.1.

commit 3f955818314fc0016052280f44865a051f7766ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 4 14:48:59 2016 +0000

    podwrapper: Add --warning flag for manual pages of CLI tools (RHBZ#1293527).
    
    This doesn't add --warning flags to the translated pages,
    which is a bug to be fixed at some point.

commit bd95ad48e19327a7cf398e688e89b06c641adfde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 4 14:21:11 2016 +0000

    podwrapper: Generate consistent WARNING sections (RHBZ#1293527).

commit de31d98d1dbf4ef8bd954632c508e7c62b9ec905
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 4 14:20:20 2016 +0000

    podwrapper: Enforce that every manual page must have a DESCRIPTION section.
    
    For every user command line tool (eg. guestfish or virt-cat) require
    that the manual page has a DESCRIPTION section.  This doesn't apply to
    non-CLI man pages (eg. guestfs-perl, guestfs-faq).

commit 934352caf48e628cfbeab18fe4ce777d95292403
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 2 21:14:57 2016 +0000

    customize: Document missing command line parameters in the synopsis.
    
    I noticed that the --attach option was not covered in the synopsis.
    This commit documents all of the missing command line parameters in
    the synopsis.

commit 25cc8874b20626475225bbb7150eca9c50118783
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 9 18:00:28 2016 +0000

    build: Require qemu >= 1.3.0 and yajl.
    
    Require qemu >= 1.3.0, the first version that supported
    `qemu-img --output=json'.
    
    This means we require yajl (for parsing the JSON output of qemu-img),
    and that in turn has consequences elsewhere.

commit cbc4d24f298c1ce72203438ee9dee06a700c168e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 11 13:38:36 2016 +0000

    v2v: Unquote path when removing VirtualBox Guest Additions (RHBZ#1296606).

commit ded7b49c4a570abdaa47ff8cc06f660c05773719
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 8 12:34:34 2016 +0000

    p2v: Break long lines when displaying virt-v2v output in GUI.

commit 12947d25901084df9567569af35d1e93f7a4029f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 6 17:05:28 2016 +0000

    tests: Allow test-disk-create.sh to be skipped.

commit a032656e1a39d03b3340f7b062902f04d3a614a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 6 16:04:46 2016 +0000

    regressions: test-big-heap: Allow this test to be skipped.

commit a318c79b7fdd58fd7ec7e0c849bbe9d3c3712263
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 6 16:04:23 2016 +0000

    regressions: test-big-heap: Add comment about a failure of this test.

commit 57ec2be622adf5b667c0e3f075aad8fe730f3e57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 6 11:45:27 2016 +0000

    Version 1.33.0.

commit 810c9e7b168094e15c36a23bb60206cb069fd085
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 6 11:35:34 2016 +0000

    hacking: Fix git push command for pushing stable branch.
    
    This fixes commit 5218f54a544cd147cb72640506ce8be845116bd2.

commit 9a9f6f48aa10ec089fdab988eebecb19654e1c36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 6 11:29:26 2016 +0000

    Version 1.32.0.

commit d35cd9157b3001507bb7e6f991a1b850eb2bfaca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 6 11:13:18 2016 +0000

    website: Prepare website for 1.32 release.

commit 0278aa63843b89fc4eb4b9456179d9456b7475f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 6 11:18:20 2016 +0000

    hacking: Document simpler way to create stable branch in git.
    
    I will try this method for the 1.32 release.

commit dbcde960dc29d24debce3bd5827c6ee6ebec49d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 6 10:46:43 2016 +0000

    Finalize release notes for libguestfs 1.32.

commit cd8e6b7d5e0a9bd7dad8f4849bf5d03692073639
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 6 10:53:24 2016 +0000

    Update PO files from Zanata.

commit 16bafad736c24d927d1edd2c375eafe06a9f151b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 4 15:33:45 2016 +0000

    daemon: Fix ext2 labels error message (RHBZ#1294956).

commit 9001d993972936febb67bc2ae1f7ad8b9eb7e55a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 2 21:17:34 2016 +0000

    Update copyright dates for 2016.
    
    Run the following command over the source:
    
      perl -pi.bak -e 's/(20[01][0-9])-2015/$1-2016/g' `git ls-files`

commit 4c1968fe341653fd53729ee55d0ec2fdfc193b1b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 19 21:30:50 2015 +0000

    builder: Update Fedora 23 ppc64le image which was broken.
    
    This updates commit d92758d8bbfe50dd063451050104ca0d58f8d4d0.

commit aa103cd71595d122101e723ca8d48718897147b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 19 13:32:25 2015 +0000

    builder: Add Fedora 23 ppc64/ppc64le images.

commit b27cebe0f47756669320fadef7640b8c7ac41167
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 19 09:57:36 2015 +0000

    builder: Fix Fedora ppc64/ppc64le build scripts to use correct version.

commit f154e3ad6b3a8693ce25745fa46e21baf1caece6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 18 17:10:25 2015 +0100

    tests: add a couple of iSCSI-related test cases

commit 127adb69ad53bd82613bacdf001c56e570472457
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 1 14:52:35 2015 +0100

    drives: allow authentication for iSCSI
    
    Now that both the direct and libvirt backends handle authentication with
    iSCSI correctly, we can allow this in the library.

commit 5d7226f62961c2b1e87101f7045288498213bf56
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 1 14:28:36 2015 +0100

    launch: direct: manually compose iscsi:// URIs
    
    Move the creation of iscsi URIs away from make_uri, composing them
    manually: this is needed because libxml assumes colons (':') to separate
    user and password for the authority part, while with iscsi URIs the
    separator is percentage ('%'), which would be percent-encoded by libxml.

commit 9708b64d776efee6fa1ee731b3789ebf0a7dda84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 17 11:18:02 2015 +0000

    daemon: Improve debug information from command*.
    
    Do some fake quoting so people don't get worried that we aren't
    quoting the commands we run.  See:
    https://www.redhat.com/archives/libguestfs/2015-December/msg00080.html

commit be53a57df4947be5d0133d67c73ec37e04803d8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 17 11:15:14 2015 +0000

    daemon: Make command*f flags parameter unsigned.
    
    It's a bitmask, so unsigned is the right choice.  eg. We can more
    easily print it using %x.
    
    This patch changes the size of the fd mask and the values of the
    COMMAND_FLAG_* constants, but since these are internal definitions
    that doesn't matter.

commit ed9e63d98e6b34c922e337b51a2fff1302bc0d2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 16 13:26:45 2015 +0000

    Version 1.31.30.

commit 91018adbf77a031ef151663d26a27b7e1e4c7bd1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 16 13:23:51 2015 +0000

    po: Add pt_BR to list of linguas.
    
    Commit e6f7d237820fc554dfdffd8a6fee903aabd3e69f added new po files for
    pt_BR to po/ and po-docs/ (they are only very minimal).  However they
    were not added to the list of linguas, so amongst other things the
    files were not included in EXTRA_DIST automatically.

commit 595adba853bde478ba64d567079db8e64c053fd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 16 13:19:13 2015 +0000

    po: Fix two faults in the uk.po file.
    
    ./uk.po:1049: 'msgid' and 'msgstr' entries do not both end with '\n'
    ./uk.po:9638: format specifications in 'msgid' and 'msgstr' for argument 2 are not the same
    
    This updates commit e6f7d237820fc554dfdffd8a6fee903aabd3e69f.

commit 42e5e940d839234bae6d49fdbcbf05a05acba9bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 16 12:44:51 2015 +0000

    hacking: index.html.in is now stored in git under website/ directory.

commit 8ceaa69aa04a7898e8bdba5f60bae45f9d9f0cfa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 15 18:40:36 2015 +0000

    builder: Add CentOS 7.2 image.

commit 69143f48131111a08d7b00ffbf769f3e425a2cff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 15 18:20:04 2015 +0000

    builder: website: Update comment in centos.sh script.

commit ab27a73d777721a1d9b1d1f7878987d10af416b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 15 16:59:06 2015 +0000

    fish: tests: Don't open phony fedora.img for write in parallel.
    
    Two tests opened the phony Fedora image in parallel without the
    readonly flag.  This occasionally resulted in strange errors
    (especially observed in test-inspect.sh).  Add the --readonly flag to
    avoid this.

commit da6ab95bb2760ccb91523043f205896bd5852727
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 15 15:57:11 2015 +0000

    Update release notes.

commit 829dca560c4d59bac1d49cf4ca0d371a1c49d135
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 15 14:31:22 2015 +0000

    Update gnulib to latest.

commit f6a7452cc968eb3ab06e22cee0f04ae12d27a898
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 15 12:04:54 2015 +0000

    Add latest translations pulled from Zanata.

commit 8eb8015de3eef2cbf32c280f712d76edb402ccdd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 15 11:12:40 2015 +0000

    Update translations and send to Zanata.

commit 1eb973faa97701f7e2109084d9d302bc95a1728a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 15 11:12:27 2015 +0000

    Update BUGS.

commit e5decb7e98e8583701c72bcf584a4d5fe71c6571
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 15 15:00:11 2015 +0100

    daemon: improve internal commandrvf
    
    - add a flag to request chroot for the process, which is done only as
      very last (before chdir) operation before exec'ing the process in the
      child: this avoids using CHROOT_IN & CHROOT_OUT around command*
      invocations, and reduces the code spent in chroot mode
    - add failure checks for dup2, open, and chdir done in child, not
      proceeding to executing the process if they fail
    - open /dev/null without O_CLOEXEC, so it stays available for the
      exec'ed process, and thus we don't need to provide an own fd for stdin
    
    Followup of commit fd2f175ee79d29df101d353e2f380db27b19553a, thanks also
    to the notes and hints provided by Mateusz Guzik.

commit b12729a61c4998b5e199e825eee5f8e46d4daca7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 14 22:38:52 2015 +0000

    build: Disable -Wstack-protector warning.
    
    Fires with gcc 5.3.1 (on Fedora 23).  It's a completely useless
    warning since it just tells you that a function couldn't use the stack
    protector.

commit b7a951c698dea1e1b1d2b2b79c586d8cf950f8bc
Author: Kashyap Chamarthy <kchamart@redhat.com>
Date:   Mon Dec 14 19:49:00 2015 +0100

    guestfs.pod: Update reference to libguestfs internals

commit 2f8aa64364ab5313fa01637ecd619d1b3c728b06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 11 15:48:05 2015 +0000

    customize: Capitalize the first character in --sm-credentials help text.
    
    Prior to this commit:
    
    $ virt-builder --help
    [...]
      --sm-attach SELECTOR         Attach to a subscription-manager pool
      --sm-credentials SELECTOR    credentials for subscription-manager
      --sm-register                Register using subscription-manager
    
    Really the generator ought to check this.

commit 7e4727e0e41656ee7604d84c76f7b19e5fb186d1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 10 14:00:26 2015 +0100

    inspect: recognize the PLD Linux distribution
    
    Just basic identification, with name and version read from
    /etc/os-release.

commit 3130cfb606121837813cba1aaa09f62dea54de22
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 6 16:23:34 2015 +0000

    perl: Add missing backslash in CLEANFILES rule.
    
    This fixes commit a2edda266e891a4771870f89e87c886318ef80d6.
    
    Thanks: Jean-Christophe Manciot.

commit 30422ae05d9deff480fd25676ef8c6ddf1dfe9a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 5 23:45:07 2015 +0000

    Version 1.31.29.

commit 28b60df7dbb950d6689107b818ae6121090a31ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 5 23:40:20 2015 +0000

    builder: Add Fedora 23 i686 image (RHBZ#1288733).
    
    This includes the DNF fix, see
    commit 59ea51d358e4e4d8c8ef6535760fcfc9bfe0a3a3.

commit 42f1ffed54dbc6ce1f4e4402e3d815fa159281ea
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 4 11:02:51 2015 +0100

    builder: create temporary images in the cachedir (RHBZ#1288201)
    
    Temporary images can be quite big, more than the space available in
    $TMPDIR when it's on a tmpfs; hence, place them in our cachedir
    instead.

commit 358fefc460982c4c5ae890a421c4c8bc79f10989
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 27 09:52:49 2015 +0000

    resize: Add a regression test for RHBZ#1285847.

commit 2a57169283f6c34ac2dd6d674bf948d883486d8c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 27 10:25:17 2015 +0000

    resize: Work around regression in sfdisk (RHBZ#1285847).
    
    'sfdisk --part-type' used to merely set the MBR ID byte in the
    partition.  However since sfdisk was rewritten, it now "helpfully"
    corrupts the first sector of the partition if you change the type byte
    from an ordinary partition to an extended partition.
    
    So we need to change the order in which we sets the partition type
    byte, to do it before copying the partition content.
    
    This fixes a major regression in the way that virt-resize handles any
    guest with logical partitions (specifically Ubuntu guests).

commit cfe7a6ad938171f343382cedc0894561a7b47721
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 27 15:11:44 2015 +0000

    POTFILES: Escape dot in regular expression.

commit 0a55082b43dc1a58a9027b11a4141c5ca669b31c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 1 13:02:00 2015 +0000

    builder: Rebuild Fedora 23 image with new DNF (RHBZ#1280029, RHBZ#1278382).
    
    We also need to add a small hack to the build script to ensure the
    latest dnf is really included.

commit d4cd9dfd0e5a710ec5b9af6f9ab0833b82917aed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 27 09:00:01 2015 +0000

    builder: pxzcat: If write fails, display correct error message.
    
    If uncompressing a template to a filesystem which is nearly full,
    virt-builder displays an error which points to the wrong (source) file:
    
    $ virt-builder fedora-22
    [   1.2] Downloading: http://libguestfs.org/download/builder/fedora-22.xz
    [   1.7] Planning how to build this image
    [   1.7] Uncompressing
    /home/rjones/.cache/virt-builder/fedora-22.x86_64.1: No space left on device
    /home/rjones/.cache/virt-builder/fedora-22.x86_64.1: No space left on device
    /home/rjones/.cache/virt-builder/fedora-22.x86_64.1: No space left on device
    /home/rjones/.cache/virt-builder/fedora-22.x86_64.1: No space left on device
    
    (The error message is usually printed once by each thread, so it is
    printed several times.)
    
    Change the error message to point to the output file, which might be a
    temporary or the final file depending on the build plan:
    
    $ virt-builder fedora-22
    [   1.1] Downloading: http://libguestfs.org/download/builder/fedora-22.xz
    [   1.6] Planning how to build this image
    [   1.6] Uncompressing
    fedora-22.img: No space left on device
    fedora-22.img: No space left on device
    fedora-22.img: No space left on device
    fedora-22.img: No space left on device

commit b28c5815bd9d68f8185c87e0ba627c9da38076db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 24 22:59:36 2015 +0000

    Version 1.31.28.

commit 3cfce57bd1ca542610e46ddbe12101b53dee4302
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 7 12:20:23 2015 +0000

    daemon: Allow --channel fd:N
    
    In this case, the daemon has been passed an open file descriptor which
    it uses directly for the channel.

commit 8cab3eab4bf74f0e53f82facd8336dd6def3e415
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 24 13:35:26 2015 -0500

    launch: direct: aarch64: Add gic-version=host to -M option.
    
    On ARM machines with vGICv3, we need to use the extra -M
    parameter gic-version=3 (or gic-version=2 for the old vGIC).
    
    qemu can detect this feature for us if we pass gic-version=host,
    so add that to the -M option.  Unfortunately we cannot detect if
    qemu itself supports this parameter, but this change only affects
    aarch64.
    
    Thanks: Wei Huang

commit c211d1677613b048433bf59657333c1e0351a12b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 24 15:40:43 2015 +0000

    builder: rhel: Fix path in rhel-aarch64.sh.

commit 6242d46a54fd19b2e755a793237658a0811aac6d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 23 17:09:14 2015 +0100

    fuse: fix return value of guestunmount for unmounted paths
    
    Exit with 3 as return value when fusermount fails, because the specified
    mount point is not considered mounted for the user.  This is in line
    with what the guestunmount documentation says.
    
    Adapt the test-guestunmount-fd test to the updated return value.
    
    Thanks to: Maxim Perevedentsev.

commit b1e3654856ab380bb7471072609b3dff47d09d13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 24 11:14:37 2015 +0000

    fish: ps_restore is only used when HAVE_LIBREADLINE is defined.
    
    Thanks: Keresztes Péter-Zoltán

commit afdf45bb811294409601a46bb49c4eb40facfcc6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Nov 19 17:34:11 2015 +0100

    daemon: always provide stdin when running chroot commands (RHBZ#1280029)
    
    When running commands in the mounted guest (using the "command" API, and
    APIs based on it), provide the /dev/null from the appliance as open fd
    for stdin.  Commands usually assume stdin is open if they didn't close
    it explicitly, so this should avoid crashes or misbehavings due to that.

commit b358fa234b2721df267ccedb0565512150c45ad1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Nov 19 11:09:31 2015 +0100

    build: disable -Winline
    
    Older GCC versions (e.g. < 4.9) may complain about inline functions that
    cannot be inlined (growing the generated code). It is not really a
    problem for us, so just suppress again the warning.
    
    Followup of commit c37c554fc56151b709882b382bb5fa26d9083449.

commit 8febcfd24972061b2ded48e982cf6e65c196e30f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 20 10:27:53 2015 +0000

    v2v: Add full stop after multi-line error message.

commit ceaa89ebd7cd1d8a53edc1e4a7d9a35f7e0de719
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 20 09:41:09 2015 +0000

    v2v: Clean up the documentation for virt-v2v-copy-to-local.
    
    Don't duplicate the instructions in two different man pages.
    Put the conversion steps into virt-v2v(1) only.
    
    This updates commit 87adc301634034473013b341de5e6cf0a1eb3994.

commit baa41cf96f72c91a8fcb9c2df408186875b7bd82
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 20 08:22:01 2015 +0000

    v2v: Fix valgrind of virt-v2v-copy-to-local.
    
    This fixes commit 87adc301634034473013b341de5e6cf0a1eb3994.

commit 84f6676c41987c47c611d2ba808def56d49611b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 19 22:53:18 2015 +0000

    build: Add virt-v2v-copy-to-local to installcheck.
    
    This updates commit 87adc301634034473013b341de5e6cf0a1eb3994.

commit ff3032f074221315cf7dfa419a9419b47155ee47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 19 22:51:17 2015 +0000

    Version 1.31.27.

commit 898bd1ad7516980a79538d08cdc24073d3148c71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 19 14:26:43 2015 +0000

    v2v: Add a new tool virt-v2v-copy-to-local.
    
    This allows certain guests which virt-v2v cannot access to be copied
    off the remote hypervisor and converted.  Essentially this just
    automates the process of copying the guest's disks and adjusting the
    libvirt XML.
    
    This also adds a test of the new tool.

commit 6d8123d8d5a0ab13acf118c8d73a24bfb62940ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 19 19:10:33 2015 +0000

    v2v: xml: Add a binding for XmlUnsetProp.

commit 327ad4afb2c793353cc3453fd9453c52b1a55500
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 19 17:18:39 2015 +0000

    v2v: vcenter: Split out map_source_to_https from map_source_to_uri.
    
    Split the map_source_to_uri function up so that we can get at just the
    https://... URI.
    
    This is almost refactoring.  It doesn't quite handle the case where we
    are passed a source path from the libvirt VMware driver that doesn't
    match the expected "[datastore] path" format, but probably if we hit
    that case it's a bug anyway.

commit e31eb5c2691530106cd0700747edf9628bd0b4cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 19 13:08:26 2015 +0000

    v2v: Detect conversions where the source disk has zero size (RHBZ#1283588).
    
    If you try to convert a guest that has a zero-sized disk, it
    will currently fail in a rather strange way.  Usually you will
    see errors in the debug output:
    
      [    0.562714] sd 2:0:0:0: [sda] Read Capacity(16) failed: Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
      [    0.563884] sd 2:0:0:0: [sda] Sense Key : Not Ready [current]
      [    0.564587] sd 2:0:0:0: [sda] Add. Sense: Logical unit not ready, manual intervention required
    
    followed by virt-v2v failing with:
    
      libguestfs: trace: v2v: inspect_os = []
      virt-v2v: error: inspection could not detect the source guest (or physical
      machine).
    
    Additionally, because of a problem with the ssh driver in qemu (or
    perhaps, with sftp-server on the remote side) it is not possible to
    use the ssh driver to open a block device path on the remote server.
    The drive will appear as zero-sized, triggering the above error.
    
    Therefore detect this situation, and emit an error (see below).  Also
    add a section to the manual describing the workaround required for
    converting RHEL 5 Xen guests which are located on block devices.
    
      virt-v2v: error: guest disk sda appears to be zero bytes in size.
    
      There could be several reasons for this:
    
      Check that the guest doesn't really have a zero-sized disk.  virt-v2v
      cannot convert such a guest.
    
      If you are converting a guest from an ssh source and the guest has a disk
      on a block device (eg. on a host partition or host LVM LV), then
      conversions of this type are not supported.  See "XEN OR SSH CONVERSIONS
      FROM BLOCK DEVICES" in the virt-v2v(1) manual for a workaround.

commit 61ddcfd6d4976ee285fdd0dc02bde7d2a2674893
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 16 22:11:05 2015 +0000

    p2v: Cancel conversion if user closes the running dialog.
    
    If the user tries to close the running dialog during a running
    conversion, act as if the cancel button was pressed (cancelling the
    conversion).
    
    If the conversion has finished/been cancelled, then this closes the
    dialog and exits virt-p2v, as now.
    
    Cancelling the conversion in this way ensures that qemu-nbd and ssh
    subprocesses are cleaned up.

commit 06351f4f74664e96a4d3ce20f49901397db6111a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 16 22:29:50 2015 +0000

    p2v: Add a conversion_is_running() function.
    
    This thread-safe function can be used to determine if the conversion
    is running (maybe in another thread).

commit 3d8483580ac94c876625c49166404aee84567dc9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 16 22:24:38 2015 +0000

    p2v: Make cancel_conversion() properly thread safe.
    
    Rename 'stop' variable as cancel_requested, and defend it with a
    mutex.

commit e761f5bcedcc342ef0b33a4dcca5c1b21894d222
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 16 21:41:21 2015 +0000

    p2v: Tidy up in man page.

commit b0b34e07eab98fa4e56cfe91bc4957b0abf5b156
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 16 11:34:00 2015 +0000

    p2v: Send physical server 'dmesg' output to debug dir on conversion server.
    
    If the virt-p2v ISO doesn't contain the correct drivers for the
    hardware on the physical server, that can cause peculiar conversion
    problems.  This was hard to diagnose because we could not see the
    'dmesg' output from the physical server.
    
    Upload 'dmesg' output from the physical server (more precisely: from
    the virt-p2v ISO's kernel running on the physical server) to the
    virt-v2v conversion server debugging directory, so that this
    information is available for debugging later.
    
    Unfortunately this involves yet another copy of the 'read_whole_file'
    function.

commit 46a5e18839ec24c4d24b8f6cb871833f013517b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 15 22:42:36 2015 +0000

    v2v: OVF: Use common generated_by string.
    
    Instead of creating a special 'Exported by ...' string just for this
    module, use the Common_utils.generated_by string.  Since the string is
    just descriptive, this should make no difference.

commit 78df7aaff064ff3b66735be5b265a8cde34fc226
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 15 22:18:36 2015 +0000

    v2v: Move mpstat struct into Types module.
    
    Strangely the Types module already defined mpstat, but it was not used
    and redefined in v2v.ml.  Apart from that, this change is just
    refactoring.

commit 4f208d2155282fd0e43d9cd674d22a269237457c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 15 21:52:57 2015 +0000

    v2v: windows: Fix a few comments.

commit e2b04892e10d504f26005825bb7a848fe7ca80d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 15 21:51:30 2015 +0000

    v2v: Add comment.

commit 74567a31df250de3d66fdf5acc363aa560fee8e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 15 21:45:04 2015 +0000

    v2v: Move the get_node function to the Windows module.
    
    Just refactoring - however this does make the function safer by having
    it return an option type instead of throwing a [Not_found] exception.

commit 3ee59ec443e6c1aa359a752f8f7e19d6d8ca3c66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 15 21:29:50 2015 +0000

    v2v: Refactor some uses of Windows.with_hive.
    
    This changes:
    
      let f root = .. in
      Windows.with_hive ... f
    
    to:
    
      Windows.with_hive ... ( fun root -> .. )
    
    No functional change, just refactoring.

commit a295a6c3be26d9c8457af1c53f9177fa4499e21a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 15 21:22:53 2015 +0000

    v2v: Move the with_hive function to the Windows module.
    
    Just refactoring.

commit 4207cf5334a17084af11806bfcc2f74fd8203315
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 19:14:43 2015 +0000

    Version 1.31.26.

commit bb720e2ef1ad3dbf2ea837779297f929fbfa15f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 19:10:35 2015 +0000

    build: Remove ChangeLog from make distclean.
    
    Adding this causes 'make dist' to fail with:
    
      make[1]: *** No rule to make target 'ChangeLog', needed by 'distdir'.  Stop.
    
    This updates commit a2edda266e891a4771870f89e87c886318ef80d6.

commit 74b5f5919ef88dffd0720e4be6a1acbd0d949711
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 11:46:20 2015 +0000

    inspection: Fix detection of the kernel version of Windows ≥ 10 (RHBZ#1281578).
    
    See the description in the bug report:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1281578
    
    Thanks: Richard Tollerton for alerting me to this change in the way
    that Windows version numbers are stored in the Registry starting with
    Windows ≥ 10.

commit b08bf6785e7fa0656815755a71a8a23b73d36e58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 12:23:18 2015 +0000

    daemon: lvm: Change the separator character to ':'.
    
    The separator character (currently comma) was picked arbitrarily to
    allow us to parse the output of commands like 'lvs' for APIs such as
    'lvs-full'.  Unfortunately the choice of comma conflicts with the 'lvs
    -o modules' column, since the list of modules is separated by commas,
    breaking our parser.
    
    Change the separator to another arbitrary character (colon) which
    hopefully is not used by any column.
    
    See also:
    https://bugzilla.redhat.com/show_bug.cgi?id=1278878#c11

commit da4d6f10eb107cf6d463a1d58edd005d6cb3c7b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 12:03:39 2015 +0000

    daemon: lvm: Only return public LVs from guestfs_lvs API (RHBZ#1278878).
    
    When a disk image uses LVM thinp (thin provisioning), the guestfs_lvs
    API would return the thinp pools.  This confused other APIs because
    thinp pools don't have corresponding /dev/VG/LV device nodes.
    
    Filter the LVs that are returned using "lv_role=public".
    
    Thanks: Fabian Deutsch

commit 0d8e810777b286d67a3834e1bea1c1023f01c1de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 8 22:10:38 2015 +0000

    build: Enable some more warnings.
    
    After fixing some warnings (see prior commits), we can now enable
    them in configure.ac.

commit 40450a0f5957f6cf8921ac6f1cc6fe8af332ce6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 8 21:53:28 2015 +0000

    Avoid "function 'asprintf_nowarn' can never be inlined because it uses variable argument lists".
    
    Move this to a separate translation unit and don't inline it.

commit 7d1c99e543beecc5392404851f2f5c0849cac4da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 8 21:49:24 2015 +0000

    Avoid various "declaration of <var> shadows a previous local"
    
    I enabled the -Wshadow warning temporarily in order to do these fixes,
    but had to disable it again afterwards.  The reason is that this warns
    about shadowing globals, which is sort of a good thing, but because we
    have a global called "verbose" just about everywhere, and at the same
    time we baked a function argument called "verbose" into several
    unchangable APIs, well, we're stuck without being able to use this
    warning.

commit 7b34f56c45dda68fb5918e0cb84774f4595ff030
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 8 21:42:51 2015 +0000

    Avoid gcc warnings about infinite loop.
    
    This seemingly redundant change avoids a gcc warning/error:
    
      error: cannot optimize possibly infinite loops
    
    See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=34114#c3 and
    following for an explanation.
    
    Of course gcc is completely wrong and stupid here, because there's no
    possibility on current or future hardware that an array of size
    SSIZE_MAX could be allocated since it would by definition occupy at
    least all addressible memory (if it was an array of bytes, which this
    isn't), leaving no room for the code that is being compiled.

commit d02b51877502bd664f918dc77e982055d5e7eab0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 8 22:10:03 2015 +0000

    gobject: Ignore gobject/docs/guestfs-scan.c.
    
    I'm not sure what/why this file has suddenly appeared.  It may
    be something to do with updating gtk-doc.
    
    Whatever - ignore it.

commit 4aef6751ea15dc98c94f6e4e0d8334fe23333165
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 20:34:46 2015 +0000

    sparsify: Make the interface between cmdline.ml and sparsify.ml explicit.
    
    We could go a bit further here and push the cmdline struct
    into Copying.run and In_place.run.

commit a39295e689eddad817a43b59af7e1be1a4bcc86a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 11 16:10:13 2015 +0000

    dib: Turn a few progress messages into info messages.

commit ebc55953bee03132d36289bf1428b3cb98ecb06b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 20:34:46 2015 +0000

    dib: Make the interface between cmdline.ml and dib.ml explicit.

commit 72fcbd4f8f33c89b1da5c9772cb7ea4bddf95ce7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 19:52:21 2015 +0000

    builder: Make the interface between cmdline.ml and builder.ml explicit.

commit 2d7b725fef2babf7f6aefa6050c4b2c910a971dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 12 22:38:59 2015 +0000

    inspector: --xpath: Copy node to new document (RHBZ#1281577).
    
    'virt-inspector --xpath' can segfault.
    
    When run under valgrind, it shows this error:
    
    ==2254== Invalid free() / delete / delete[] / realloc()
    ==2254==    at 0x4C29D6A: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==2254==    by 0x53BA198: xmlFreeNodeList (tree.c:3690)
    ==2254==    by 0x53B9F65: xmlFreeDoc (tree.c:1247)
    ==2254==    by 0x405BFA: do_xpath (inspector.c:808)
    ==2254==    by 0x405BFA: main (inspector.c:250)
    ==2254==  Address 0x1030a037 is 311 bytes inside a block of size 1,048 alloc'd
    ==2254==    at 0x4C28C50: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==2254==    by 0x545DE86: xmlDictAddString.isra.0 (dict.c:270)
    ==2254==    by 0x545E961: xmlDictLookup (dict.c:923)
    ==2254==    by 0x539C6DC: xmlDetectSAX2 (parser.c:1067)
    ==2254==    by 0x53B0B92: xmlParseDocument (parser.c:10725)
    ==2254==    by 0x53B1276: xmlDoRead (parser.c:15295)
    ==2254==    by 0x40587D: do_xpath (inspector.c:772)
    ==2254==    by 0x40587D: main (inspector.c:250)
    
    The cause appears to be that when copying the matching node(s) found
    by the xpath expression, we have to copy them into the new document
    (using xmlDocCopyNode instead of xmlCopyNode).
    
    This bug has existed since this functionality was originally added in
    commit d1ee71782ace98a11c5aabaf1f9fd5f601e08367.

commit 15a5c29bd3192a3a2ea0c04ccde3a6099f9ebc68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 12 22:13:36 2015 +0000

    inspector: Whitespace changes.
    
    Just break up a few long source lines.

commit c3a00e2b5813a3ca9d926b4e469029b0b3018473
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 12 18:12:04 2015 +0000

    builder: Add Fedora 23 aarch64 image.

commit 0deab38300fa5edc2e286a7978326a796faee1ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 12 16:41:36 2015 +0000

    builder: fedora-aarch64.sh: Switch to using Gerd's edk2.

commit 88e65f6a5baa26ad04cd69ff0d718bbdd787a967
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 20:34:46 2015 +0000

    customize, dib, resize, sysprep: Use 'may' pattern in various places.

commit 743ff460a5b9b701cf027d1cb7a3854de6e85df2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 20:10:44 2015 +0000

    mllib, v2v: Allow open_guestfs to set the handle identifier.
    
    Extend open_guestfs to take an optional ?identifier parameter.
    
    Use this parameter in virt-v2v which is currently the only place where
    we use the handle identifier.

commit 768d2dd9aa644978a2b01a5d732f48b60aefd834
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 20:21:15 2015 +0000

    v2v: Use the 'may' pattern in the Changeuid module.

commit 748a9384e79b36218989546726c185ee3fe1913d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 20:16:08 2015 +0000

    builder: Use the 'may' pattern in a few places.

commit 8f510d991f8664c2157b1b905c0994f331fe07dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 20:07:56 2015 +0000

    mllib: Add Common_utils 'may' function.
    
    This higher order function encapsulates the following pattern:
    
      match x with
      | None -> ()
      | Some x -> f x
    
    (replaced with: `may f x`)
    
    This is taken from OCaml lablgtk (Gtk bindings) where this pattern is
    used frequently.
    
    See also: https://ocaml.org/learn/tutorials/labels.html

commit ebf2431d7b7f48f1b0d9ebbe966ac3c1824a9949
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 19:52:21 2015 +0000

    v2v: Make the interface between cmdline.ml and v2v.ml explicit.

commit ccc1af875a588de6619021a2654854562f8ec954
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 10 08:50:17 2015 +0000

    v2v: Add --compressed option to produce compressed qcow2 files (RHBZ#1279273).

commit 2fff35b18160851f75a85b7857d996f2aa1aaf2d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 10 11:38:40 2015 +0100

    OCaml tools: use open_guestfs everywhere
    
    Instead of creating Guestfs handles and manually apply common options
    (e.g. debug and trace), use the open_guestfs in Common_utils.
    This also applies the common options to handles which didn't set them
    before, so we can inspect also their messages if needed.

commit f3f6c0dd2218d0f1559480a4e7a1318bee2c4413
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 9 18:33:52 2015 +0100

    customize: allow editing symlinked files
    
    Resolve also symlinks when checking whether a path passed to --edit is a
    file: the file editing code supports symlinks anyway (properly changes
    the target file, instead of overwrite the symlink with a real file), so
    it is safe to allow this operation in customize/builder.

commit 67aec1c01a3ef7171a26973fe3f8f72c2514ba79
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 9 18:26:05 2015 +0100

    customize: check for file existence with --edit (RHBZ#1275806)
    
    Check that a path provided to --edit exists already; while the is_file
    call later will fail for non-existing files, with an explicit check a
    better error message can be provided.

commit e777d526415367869297722d23a203c7f74ee5a7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 9 16:42:32 2015 +0100

    v2v: test-v2v-i-ova-two-disks.sh: fix sha1 filename
    
    Run sha1sum on the compressed filename (with .gz extension, after the
    gzip run), and reference that file in the .mf file.

commit 1727dd2c872b678fb896da66c09ac82fdf19bebc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 9 11:38:49 2015 +0100

    lib: do not manually include libvirt.h in .c files
    
    guestfs-internal.h includes it already, so rely on that.

commit 6681d47361c7c318fc52c93d67eb6f81b3e2ec66
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 9 11:29:49 2015 +0100

    lib: enable the libvirt code consistently everywhere
    
    With commit bc2b41778405cc6a376a670703ce63e3678bf1fb
    HAVE_LIBVIRT_BACKEND is defined based on the libvirt version (using its
    version macro), although libvirt.h is included only after that check:
    because of this, variables in the guestfs_h struct after the
    HAVE_LIBVIRT_BACKEND block would be used wrongly if libvirt.h was not
    included before guestfs-internal.h, like in the recently added
    available.c (all the other places using libvirt features in the handle
    already happened to do so).
    
    Considering guestfs-internal.h already includes libvirt.h, move its
    inclusion up, right before the libvirt version check.

commit 3627446c62879722aacdfc62d7848990a28733cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 8 20:36:47 2015 +0000

    todo: Remove virt-p2v --inject-ssh-identity as it has been implemented.

commit 1fa4662bab8b00a569528e0c5924647519a50403
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 22:24:39 2015 +0000

    lib: find_or_cache_feature function can return a const pointer.
    
    This updates commit 38598e2ba54f80182221faa6b517349e85ad133a.

commit fcacea918423d727110db07102be3ce9ea1e2815
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 21:38:28 2015 +0000

    lib: Fix whitespace in src/available.c
    
    This updates commit 38598e2ba54f80182221faa6b517349e85ad133a.

commit 4718e547344ac43ee1788fc6ba752e5dd3827dee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 17:30:53 2015 +0000

    Version 1.31.25.

commit 7df4e5ec45d917c0f7e3e4ac6867d2cf507ea46e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 6 17:13:34 2015 +0100

    tests: rhbz1232192.sh: fix VIRT_TOOLS_DATA_DIR
    
    Followup of commit f933a3c9c7a764270a5fa7f9bc9d7e0f37282302.

commit 6ee9766fda98b8469756075ac25b2ea07d18527d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 6 16:14:22 2015 +0100

    tests: replace run-xml-to-junit.* with automake2junit.ml
    
    Replace the custom XSLT + script to turn output from $RUN_OUTPUT_FILE
    (from previous run.in versions) with a OCaml script to analyze .trs and
    .log files of the automake test framework.
    
    The final result should be the same, just with classname= for each test
    set to the "path" (subdirectories) to that test.

commit 4ca06012e2b213d912c099d73108f047e175db5a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 6 16:10:04 2015 +0100

    build: use a custom test driver
    
    Use a custom test driver for running the tests: based on the test-driver
    provided by automake, it adds the running time of the test in each .trs
    file.

commit dd325ce85770c0d25a3691aaca74a1a497152fda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 14:29:33 2015 +0000

    build: Drop serial_tests.
    
    Use (implicitly) parallel tests on new enough automake.  The tests run
    a bit quicker with this change.  On my laptop, I measured 27 mins down
    to 18 mins.
    
    Change the ./run function so that ./run --test no longer spools the
    test output to a file.  That is not necessary when using parallel
    tests, since the test harness does the same thing.
    
    Note: This commit removes the $RUN_OUTPUT_FILE functionality.  We will
    change the CI integration in a future commit so it uses the .trs and
    .log files.

commit 05e60d17bc3abcd803c4dbf195b2db1dd8784222
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 12:12:53 2015 +0000

    inspect: windows: Fail hard if we cannot detect Windows architecture (RHBZ#1278371).
    
    The user did not have the 'file' command installed, and when they
    attempted to do a v2v conversion of a Windows guest, inspection
    succeeded, but the Types.i_arch field was found to contain "unknown".
    virt-v2v conversion failed to locate the correct virtio drivers as a
    result.
    
    The 'file' command is required, and there's no other reason we should
    not be able to detect the architecture of any Windows guest, so fail
    hard in this situation.

commit 4590e17775dc702748ad9e4cd21763f487b1074b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 12:09:15 2015 +0000

    generator: Another minor indentation fix in src/actions-*.c files.

commit 6c3cb3518d7d8096cc3dffbe5cc051b2d55796fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 09:41:06 2015 +0000

    v2v: tests: No QXL drivers on the ISO.
    
    There are no QXL drivers on the ISO, so don't expect the QXL driver to
    be installed.
    
    This fixes commit 8c735a84c7a50e1ed85542e589c02af3e9ff8534.

commit 87c7494f135c88e1be89acd24a49c31e6a11990c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 5 15:56:31 2015 +0000

    test-data: Copy DriverVer from real *.inf files to fake *.inf files.
    
    We want to test if virt-v2v can find drivers using the *.inf files.
    For this to work, one field is important:
    
      [Version]
      DriverVer = 07/17/2013,6.1.0.10018
    
    Copy the [Version] section header and DriverVer field from the real
    *.inf files to our fake *.inf files, which is enough for testing.
    
    See also:
    https://www.redhat.com/archives/libguestfs/2015-October/msg00352.html
    
    Note that the fields are case insensitive and may or may not contain
    spaces.

commit d965cce40f597cae888b382c7d51ac8c34426b82
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 5 15:43:43 2015 +0000

    test-data: Make fake virtio-win ISO.
    
    The virtio-win ISO has a different layout and superset of drivers
    compared to the virtio-win RPM directory.  Previously we simply put
    all the RPM files into the fake ISO.  Instead create a fake ISO which
    has the same layout and (fake) drivers as the real ISO.

commit 01534ce158eedcc5b44f2c1ced536ea1bce95b01
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 5 15:37:00 2015 +0000

    test-data: Add further (all fake) virtio-win driver files.

commit eb6059d5e47a32107cc346297e422721f5a26f52
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 5 14:56:40 2015 +0000

    v2v: Move fake-virtio-win and fake-virt-tools under test-data.
    
    There is no change, this just moves the test files.

commit b7e1cf04a7e227f6ff3a8da63639710d8849b756
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Nov 5 16:07:12 2015 +0100

    actions: refactor available & feature_available
    
    Refactor the internal_feature_available to return the result for just
    one group, so it is easier to know on the library side what was the
    actual error, and which group refers to; drop internal_available, as no
    more needed after this.
    
    On the library side, implement in available and feature_available the
    real logic to iterate through the requested group, and error out or
    return whether the groups are available. This also introduces caching
    for the features, so each needs to be queried just once in each
    appliance run.
    
    The result of this is that there should be much less communication with
    the daemon to know about available features; the downside is that
    queries for more than one group at once, not already cached, will be
    cause more queries to the daemon.

commit 3d9b80b78d6bfd79914006e91be88f8add2d3458
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Nov 5 13:46:52 2015 +0100

    actions: turn available & feature_available as non-daemon
    
    Rename the current available and feature_available into internal daemon
    functions, and provide non-daemon functions wrapping them at library
    side.  This will make it possible to e.g. add caching for them.
    
    Should be only refactoring, no actual behaviour change.

commit 6c0586814823b7a83d422892e2c90e8fe34fc89d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 5 13:58:12 2015 +0000

    v2v: Improve the error when virt-v2v is run on a blank disk.
    
    The error messages changes from:
    
      $ virt-v2v -i disk /tmp/blank.img -o null
      [...]
      [  14.6] Inspecting the overlay
      virt-v2v: error: no root device found in this operating system image.
    
    to:
    
      $ virt-v2v -i disk /tmp/blank.img -o null
      [...]
      [  15.2] Inspecting the overlay
      virt-v2v: error: inspection could not detect the source guest (or physical
      machine).
    
      Assuming that you are running virt-v2v/virt-p2v on a source which is
      supported (and not, for example, a blank disk), then this should not
      happen.  You should run 'virt-v2v -v -x ... >& log' and attach the complete
      log to a new bug report (see http://libguestfs.org).
    
      No root device found in this operating system image.

commit 76895318889489e02ed2ce70a7df313d33ccc533
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 5 13:48:38 2015 +0000

    tests: Change more conflicting temporary output file names.
    
    Various tests cannot be run in parallel just because they happen to
    use conflicting names for temporary output files (eg. "test.out").
    
    Change these tests to use unique temporary names, so the tests could
    be run in parallel.

commit b7cc141b5a5cb519a2c624c4c89a6567cabda5b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 4 21:25:32 2015 +0000

    test-data: phony-guests: Don't use *.tmp.* temporary files.

commit 618995e7291c179236b5f2897bf2904b3929e9e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 5 13:44:07 2015 +0000

    v2v: Check if i_type, i_distro or i_arch contains "unknown".
    
    That indicates that inspection failed, so we should error out early.

commit 56cf918e7a30f59d05537c567fb235e748c31a08
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 5 08:59:29 2015 +0000

    v2v: vCenter: Document additional permission needed for conversions (RHBZ#1277274).
    
    This updates commit 4e2433862505762b926d9eaf2201ddf666fa73a5.
    
    Thanks: Alessandro on https://bugzilla.redhat.com/show_bug.cgi?id=1277274#c6

commit 91da8de3ce1226ec983baa1d83369bf1bef16bb2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 4 19:01:50 2015 +0100

    actions: set features for vfs_minimum_size tests
    
    Limit the scope of two tests of vfs_minimum_size to the features they
    require (btrfs and xfs).

commit 15c8ec98b474836768373ce8c7900593a735b7dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 4 17:45:28 2015 +0000

    Version 1.31.24.

commit 1383dcfb1063b95607ab2879fb4652f59a2263b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 3 15:26:34 2015 +0000

    sparsify: Let --in-place capture ^C and shut down gracefully (RHBZ#1277122).
    
    When virt-sparsify receives a user quit signal (eg from ^C) it
    currently kills virt-sparsify and qemu instantly, meaning any mount +
    fstrim in progress is uncleanly stopped.  The (minor) side effect of
    this is that the guest filesystem may require a journal replay or fsck
    on boot.
    
    Let virt-sparsify capture the user quit signal and shut down
    gracefully.
    
    It is not thought that the previous behaviour could cause guest
    corruption; see
    https://lists.nongnu.org/archive/html/qemu-devel/2015-11/threads.html#00402
    for discussion.

commit 4dd0794dd6b54bb115387bc51326fafdda8748f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 4 16:21:35 2015 +0000

    v2v: vCenter: Document the minimum set of permissions needed for conversions (RHBZ#1277274).
    
    Thanks: Alessandro on https://bugzilla.redhat.com/show_bug.cgi?id=1277274#c2

commit 237dfd77fe01eb34f45627974a92a37074f95c28
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 4 14:52:29 2015 +0100

    lib: include few more headers
    
    - include <sys/un.h> for sockaddr_un, on any OS (removing the Mac OS X
      blocks)
    - include <fcntl.h> for O_* flags
    
    This commits reverts a couple of changes in these files done in
    commit 3b17152ec399acb35b23331d2c3b4f424a68824a.

commit 07b90f65269f754b157d75a678aaead312834017
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 4 13:35:30 2015 +0100

    Revert "launch: add missing headers on Darwin"
    
    This reverts commit 3ce4e95c5a21c92f943c5731c3fa7e522d20ba56.

commit 9870149da2bbab4c886fd172cd9c2fe5b174f9c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 4 13:03:17 2015 +0000

    builder: Add fedora-23 image.

commit f5894eb94fd20c95b8e46c6673ff50b3c501e731
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Wed Nov 4 12:05:31 2015 +0000

    launch: add missing headers on Darwin
    
    Including sys/un.h for sockaddr_un and sys/fcntl.h for
    O_CLOEXEC/O_NONBLOCK.

commit 5210017dce78b9bc64430a4bdcb914787d34ce14
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 4 09:47:12 2015 +0000

    sparsify: Don't mark virt-sparsify --in-place as "experimental".
    
    Thanks: Gil Klein.

commit c697086a8aac45f59004f4465ed1948d4f59e72a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 3 15:36:45 2015 +0000

    builder: Document using 'qemu-img amend' for RHEL 6 compat (RHBZ#1204131).

commit 03af3f37abfecf4f9842c5a12de1b86f9ae21c07
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 31 23:41:56 2015 +0000

    build: Make 'make clean' remove more files.
    
    Remove man pages and other pages which 'make clean' did not remove
    before.
    
    To evaluate which pages could be removed, I did a full build and
    check, and then ran 'make clean' followed by 'git clean -xdf'.  By
    examining the output of the git clean command I could see which files
    were being missed.
    
    Files that are _not_ removed by make clean or make distclean:
    
     - generator-built files
    
     - Makefile, Makefile.in, .deps, .depend
    
     - any ./configure output files (maybe they should be?)

commit 63be7c326a7060b88c551ae16d5ef396c80b73bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 31 23:29:08 2015 +0000

    build: Remove unused intltool-* files.
    
    None of these files have been touched since the initial intltoolize
    command (commit 29204fe10d6ad46bace50e82557cb95e8a0f3529, May 2009).

commit 4c4aadb4766cbb1ef1a8f73eae5b22e29e449eff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 2 23:30:07 2015 +0000

    p2v: Don't present the vdsm output driver to the user (RHBZ#1277074).
    
    Thanks: Ming Xie.

commit 399e1877a0789b253532a962755030c603dd3eb3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 31 22:59:28 2015 +0000

    tests: Remove fuzz testing of inspection.
    
    It's a nice idea, but has never actually found a problem.  After using
    afl to find bugs in qemu-img, it's pretty clear to me that no
    successful approach could be run in the short time demanded by the
    libguestfs test suite.  Afl tests run for days, weeks or even months.
    
    A better approach may be to use a proven fuzz tester (such as afl) on
    the inspection code; or to run this code for days on end on a separate
    testing machine.
    
    This reverts commit c2dcd1096424e6ff37a2e634c364f27b193376e7.

commit 4b5d650682743137387afd5abb8c2a9fb49a9977
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 31 22:53:14 2015 +0000

    df: Close parenthesis in comment.

commit e199a96440ee18a647478171ea686f4725cdf687
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 31 22:08:06 2015 +0000

    build: Make 'make clean' remove a few backup files.

commit 5fa9cd4353bfa344723dc02034bcdc35b2877745
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 31 16:51:07 2015 +0000

    website: Add guestfs-hacking, guestfs-internals, guestfs-security to website.
    
    Also move guestfs-performance to the right place on the website.
    
    This updates commit 2eb01004bf4b2918139f36107e0a671aa7a87a19
    and commit d07515b947c152fb311f9bef2f8238da1cca38e8
    and commit 74fba6e6924cb25404921ca63345388aeaa659c5
    and commit 15b8b6453dbeaca0283e68ff433191c8211d5f92.

commit 606fffccfe207e20192a23d4ecbb14b8565b899c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 31 16:22:19 2015 +0000

    website: Put website into a separate directory.
    
    Move the random set of HTML files we build from html/ into
    the website/ directory.
    
    Also in the website/ directory, put the index.html file from
    http://libguestfs.org, which was previously not under version control.
    It is generated from index.html.in so we can automatically add the
    current version and release date.
    
    Also in the website/ directory, put various CSS file, images, etc.
    which are required by the website and were also previously not under
    version control.
    
    Change the 'make website' rule to 'make maintainer-upload-website'.
    As the name suggests, it is only useful for the maintainer, and will
    fail with an error for anyone else.

commit 6c59633dc4f793bb63a4a94bfd4fd618057fb4a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 31 11:08:14 2015 +0000

    Version 1.31.23.

commit 9da91f9a9326edd7bc901c9590e03c631cd88218
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 23:02:54 2015 +0000

    docs: Minor fix to description of 'test-data' subdirectory.
    
    Fixes commit dc1d0880b02525d26d12d2356e627419bdcffbaa.

commit 41a123ea1b65a1b853b85646eafcdc6f9285460c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 22:49:50 2015 +0000

    website: Copy guestfs-hacking, guestfs-internals, guestfs-security to website.
    
    Make sure the three new man pages are copied over to the website.
    
    This updates commit d07515b947c152fb311f9bef2f8238da1cca38e8
    and commit 74fba6e6924cb25404921ca63345388aeaa659c5
    and commit 15b8b6453dbeaca0283e68ff433191c8211d5f92.

commit c9e9477676f61ac040185bc62d3eeacaa9e4d205
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 21:42:54 2015 +0000

    build: Reorder build sequence.
    
    When I conceived commit dc1d0880b02525d26d12d2356e627419bdcffbaa, I
    thought it would be a good idea to build test-data files, including
    the phony guest images, during the 'make' phase.  Previously these
    were built early in the 'make check' phase.
    
    However this has two disadvantages: (a) We run the appliance
    unnecessarily during builds.  For example, it is not necessary to
    build the phony guests if we are going to do an 'installcheck'.
    (b) Even if we are testing, the critical first time we run the
    appliance is not in 'quickcheck' or 'tests/qemu', but some random
    guest build.
    
    Reorder the build sequence to fix this, and also a few other things.
    
    This updates commit dc1d0880b02525d26d12d2356e627419bdcffbaa.

commit 04831c9ac3c6eb5f8aadc73a298b3d21f2869fad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 21:39:54 2015 +0000

    test-data: Remove bogus comment.
    
    The way we now build the blank guest images is safe to be run in
    parallel.

commit e5a62697ce02bdb1f9c9d435002b46d08656040c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 18:50:18 2015 +0000

    tests/regressions: Fix rhbz1174551.sh so it works when debugging is enabled.
    
    This test failed during release testing.  It turned out to be because
    the tests are run with LIBGUESTFS_DEBUG=1 LIBGUESTFS_TRACE=1 which
    causes other messages to be printed.
    
    Updates commit b5a6f899cdf383e07871952dd7378b0787c43687.

commit 813a01d03130d2286ba5267874b53f7d80a9616b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 16:28:28 2015 +0000

    Version 1.31.22.

commit 818af619ed1dc632ed884d86d456833ac624aae0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 13:08:45 2015 +0000

    tests: Move the tests/data and tests/guests directories to test-data.
    
    Create a new top-level directory called test-data, which will carry
    all the test data which is large and/or shared between multiple tests.
    
    There are actually several new subdirectories created:
    
    test-data/binaries: The pre-built binary and library files for random
    architectures that we use to test various architecture detection
    features (was part of tests/data).
    
    test-data/blank-disks: The blank disks which are used for disk format
    detection (was part of tests/data).
    
    test-data/files: Other miscellaneous test files from tests/data that
    are not included in the above.
    
    test-data/phony-guests: The phony guests (was tests/guests).
    
    test-data: The top-level directory builds the 'test.iso' image file
    that is used for testing the C API and in miscellaneous other tests.

commit f93c3ca5395c5ee5962a7d84d6d694aa1a4e71e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 15:09:37 2015 +0000

    tests/regressions: Display errors in rhbz1174551.sh.
    
    Updates commit b5a6f899cdf383e07871952dd7378b0787c43687.

commit ec155fa3f894e7ab3f37227827f062cca9746da8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 10:52:30 2015 +0000

    Version 1.31.21.

commit 12b2d314811ac05178dca961d97314c8ecc44de3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 10:26:20 2015 +0000

    v2v: windows: Create Windows module, and move functions around.
    
    Create a Windows module, analogous to the Linux module we already
    have.  Move utility functions related to Windows into this module.
    
    In particular:
    
     - detect_antivirus function moves here, and the Detect_antivirus
       module goes away entirely
    
     - copy_virtio_drivers / virtio_iso_path_matches_guest_os moves here,
       and the virtio_iso_path_matches_guest_os can now be hidden
    
    This is just refactoring, but allows us to make deeper changes to
    copy_virtio_drivers.

commit c60deac40a4f771e24d8561780d38206e1a00712
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 21:08:52 2015 +0000

    v2v: utils: Refactor xpath_* functions.
    
    No change, just refactoring.

commit 23a5957d512f7da8ad6598a32ac7e3fa3cd8c0aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 19:06:32 2015 +0000

    v2v: utils: Add a utils.mli file defining the interface.

commit c82b66a6d40d4b8d3f8463b0a93ddaa0261bec98
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 19:06:19 2015 +0000

    v2v: utils: Remove unused function compare_app2_version_min.

commit d0b95f4983fe2cae926e4fc594ed1808750f0778
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 19:06:04 2015 +0000

    v2v: utils: Comment fix.

commit e9c64cdfccdd88030e7f2af6ad4b4a455d16a3ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 19:04:55 2015 +0000

    v2v: utils: Move three utility functions to where they are used.
    
    The three utility functions xml_quote_attr, xml_quote_pcdata and
    uri_escape were only used in a single module.  Move them close to
    where they are used.
    
    This is just code refactoring.

commit fe030dbe0e8f569d6ebf0b607fdacea5b3483c11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 18:34:36 2015 +0000

    v2v: utils: Don't open Types module.

commit 1610f7d4413b6743b906ec376c990cff92028d32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 18:35:35 2015 +0000

    v2v: Move the open_guestfs function into Common_utils.
    
    Removes the somewhat ugly inclusion of this function in Types.  Also
    means we can use this function elsewhere.

commit 27ec6568d7af9d379b915ea25b6257ae208490cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 18:42:08 2015 +0000

    ocaml: Rename Config module as Guestfs_config.
    
    Unfortunately Coccinelle places a Config module in the ocaml libdir,
    and this confuses ocamlfind (only when Coccinelle is installed).
    Since this is a private module that only libguestfs tools use
    internally, just rename it from Config -> Guestfs_config.

commit 4de5c91163ae914697ebb4437a291f4be7838c5a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 14:55:56 2015 +0000

    docs: Group guestfs(3) 'SEE ALSO' into sections.

commit 9fb59fe3cc64e98588d6f0497de64a1fae36a17a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 14:04:57 2015 +0000

    docs: Move security documentation to guestfs-security(1).

commit 40a7d6eb2364eb15b2d3dcfc4dc9e13d373a6fd9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 14:04:57 2015 +0000

    docs: Move architecture and internals documentation to guestfs-internals(1).

commit e89413cf64524db30fa5f7ab818d4e3d1f568738
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 14:04:57 2015 +0000

    docs: Move 'extending libguestfs' documentation to guestfs-hacking(1).
    
    Start to split the huge, monolithic guestfs(3) manual page.

commit b379935a3a01124e2ea43ff0e68099c1a9d22149
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:58:19 2015 +0000

    configure: Move FUSE checks to separate file.
    
    This is moved earlier because it's now part of the C library.

commit d9968162a96dd6e69249b69c573d03da94e00d75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:58:19 2015 +0000

    configure: Move misc. library checks to separate file.

commit 90836ae31c8239a3295b03787d8abb9ac4edac88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:58:19 2015 +0000

    configure: Move appliance checks to separate file.

commit 8fd1cccb1e84613618fbb9dfc7f26ce346e84918
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:58:19 2015 +0000

    configure: Move daemon checks to separate file.

commit 82d64f39c05eb2c65b9e5f902a8d9d22c9c83e43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:58:19 2015 +0000

    configure: Move C library checks to separate file.

commit f5bf3a13d92b29336c89d37f94afa33cb1fbcfd4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:58:19 2015 +0000

    configure: Move basic C compiler environment checks to separate file.
    
    Also gnulib stuff.

commit b92cc8117ef5531dd39b947c0d68ce43bfe06b8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:42:22 2015 +0000

    configure: Move detection of external programs to a separate file.
    
    Do this early since these tests generally don't depend on anything
    else (the external program is either there or its not), and because
    other things depend on some of these tests.

commit d629ac8e1b5596074a3154d9ea23eb916c78ef4e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:34:52 2015 +0000

    configure: Move qemu detection to separate file.

commit 0ac6990a489ec543a36f120e3479fe0298cc134d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:27:24 2015 +0000

    configure: Move bash completion detection to separate file.

commit ad2b4d35d253a864c17bb3c3f9b25a6b592952d8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:26:01 2015 +0000

    configure: Move Perl program / man page detection into m4/guestfs_perl.m4.

commit 00054b68da49b51ac38e74f03c99f647866ae529
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 29 12:26:01 2015 +0000

    configure: Move (old, Perl) tools detection into m4/guestfs_perl.m4.

commit d9dc1e7b668712e1547f7175bdae56e93d02fa72
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 27 21:53:09 2015 +0000

    configure: Move language binding detection to separate files.
    
    The extra files don't have to be added to EXTRA_DIST, as it appears
    that autotools already knows that it has to add them.

commit 1a6d5d19599d7635572aa41c6dbb34d7a7ba097e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 09:39:28 2015 +0000

    Revert "resize: add function find_partitions"
    
    This reverts commit 5aa7e99cb9bba7eb7ab0d826fe76b29d9b1c9b2e.

commit 67026a76ee61084440455fdfd3fc7a1eac488a63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 09:17:30 2015 +0000

    Revert "resize: add function calculate_target_partitions"
    
    This reverts commit 21677c5b46468609d393a724ea629d948c87aec7.

commit 284969283034a6d15e4ae175153893c4fbb6720c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 09:13:01 2015 +0000

    Revert "resize: add function mbr_part_type"
    
    This reverts commit fc34e2d16c2d13d6ae7a381ba931e345ab5ae56d.

commit 9fcc7130a985532b1226d25624ba488d4ddc8995
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 09:10:15 2015 +0000

    Revert "resize: add p_mbr_p_type as member of type partition"
    
    This reverts commit 6e989fd709fea37430398cbb7c01c52cd44bd1ac.

commit b2acb0e60bb8867858224ba0ec6b0f4a6ad82a33
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 30 08:50:10 2015 +0000

    v2v: windows: Don't do NTFS heads fix if i_root is not a partition (RHBZ#1276540).
    
    The error was:
    
    libguestfs: trace: pread_device = "NTFS    "
    libguestfs: trace: part_to_dev "/dev/sda"
    guestfsd: main_loop: new request, len 0x34
    guestfsd: error: device name is not a partition
    guestfsd: main_loop: proc 272 (part_to_dev) took 0.00 seconds
    libguestfs: trace: part_to_dev = NULL (error)
    virt-v2v: error: libguestfs error: part_to_dev: device name is not a
    partition

commit 86eada7238f50f04a098135040c12069e90bfafb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 27 18:00:45 2015 +0000

    builder: Add Debian 7 sparc64 image.

commit bac5578cf5ed36e78073725da5c68415232386ca
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Tue Oct 27 18:20:45 2015 +0300

    Added xfs support to vfs_minimum_size.

commit ae465d75eeb4a7d204e218c2e40b943f78af1bd7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 23 18:27:04 2015 +0200

    builder: run virt-resize with --unknown-filesystems=error
    
    This way, we can make sure that if a template needs to be expanded, the
    result will have all the filesystems correctly expanded, fitting into
    the new sizes of their partitions.

commit 2879db73656524cc94a2f7ef44daa5ce3c010845
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 23 18:16:47 2015 +0200

    resize: add --unknown-filesystems
    
    Introduce a new option to control how virt-resize behaves when asking to
    expand a filesystem, either unknown to libguestfs or that virt-resize
    cannot expand. The default keeps the current behaviour, i.e. just warn.

commit a769c7a1670f7b71f6e717e7ad73f95e9cd86a56
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Tue Oct 27 17:55:40 2015 +0300

    Added btrfs support to vfs_minimum_size.

commit 5f169b12a02bdf6e33274cf9020613d7dc541de9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 26 13:07:28 2015 +0100

    build: look for Module::Build instead of ExtUtils::MakeMaker
    
    Module::Build is now used for building the Perl bindings, so look for it
    instead of the old module.
    
    Followup of commit f98e0f115b661c3e5d38a7d4d19fc2968867aaf0.

commit 2a53ea23946d80f6fab004e0e408b11ebaf82141
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 25 17:07:01 2015 +0000

    Version 1.31.20.

commit d32a3ea1b0163721fbb90b6893e06c60dcdca46e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 25 17:01:10 2015 +0000

    perl: Fix location of generator_build Guestfs.xs.
    
    Also add MANIFEST to EXTRA_DIST.
    
    This fixes commit f98e0f115b661c3e5d38a7d4d19fc2968867aaf0.

commit ecb3518a29acbefed52bb3877a4e594ce2040e23
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 23 14:11:21 2015 +0100

    perl: Switch to using Module::Build.
    
    Replace ExtUtils::MakeMaker with Module::Build.
    
    'perllocal.pod' and 'bindtests.pl' are no longer incorrectly
    installed.
    
    This change also removes the following phony deps: appliance src_deps
    test_images.  No other language binding needs explicit dependencies
    for their tests, they just rely on the top level build order being
    correct (ie. SUBDIRS in /Makefile.am).

commit fa024ff874e6a6240846db6527cca9faae4a9f70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 24 12:34:24 2015 +0100

    ocaml: Allow 'make install' to be run twice.
    
    'ocamlfind install' doesn't like to install the same package if it is
    already installed.  It will give errors like:
    
      ocamlfind: Package guestfs is already installed
    
    or:
    
      ocamlfind: Conflict with file: /usr/lib64/ocaml/guestfs/mlguestfs.cmxa
    
    Fix this by removing the old installed files before running
    'ocamlfind install'.  An alternative would be to use
    'ocamlfind uninstall', but this seems more direct.

commit cb2e2eab7cb356d556c42edb2415afb3f97409e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 24 12:31:31 2015 +0100

    builder: Allow 'make install' to be run twice.
    
    The error is:
    
    ln -s xdg/virt-builder /tmp/p/etc/virt-builder
    ln: failed to create symbolic link '/etc/virt-builder/virt-builder': File exists
    
    There is no 'LN_SF' macro, but according to the documentation at
    least, it should be safe to add a '-f' flag since it will work for
    both the 'ln' and 'cp' variants of the macro.

commit 95db73d8ed44dacc3484df687ddb5c201757f9ed
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Thu Oct 22 20:04:32 2015 +0300

    Bugfix in number parsing in vfs_min_size.

commit 917b4f0a39e8764e76e98449a1cb6739e57c7ec1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 22 14:39:03 2015 +0200

    v2v: -o libvirt: dump XML for libvirt if verbose
    
    When running in verbose mode, dump the XML we created for libvirt:
    this way it is easier to debug mismatches between what we want to setup
    in libvirt, and what actually gets defined.

commit 11075ac442e3914a14546a30d57a568ad59e49ef
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 22 14:10:16 2015 +0200

    v2v: -o libvirt: fix <video> element (RHBZ#1225789)
    
    Create the correct tags for <video> in the libvirtxml, so all the
    attributes are in a <model> child of <video> instead of <video> itself.
    
    Adapt the XML of test-v2v-i-ova to the different expected XML.

commit d11367be3dfd17a44d18bc53db54664968700e61
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 22 11:20:35 2015 +0200

    po-docs: generate virt-dib and virt-get-kernel docs

commit 24f153781b154b5b56faaa91ca948885523575e5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 22 11:13:48 2015 +0200

    build: isolate common po-docs logic
    
    Move most of the content of either po-docs/ja/Makefile.am or
    po-docs/uk/Makefile.am to po-docs/language.mk, and use it exclusively
    instead of the former contents of the languange-specific Makefile.am.
    This way, either adding a new documentation or enabling a new language
    will not require copying over the same make code.

commit 11f688913016d2fab2d5e83540fe89fa152f60e6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 21 15:52:31 2015 +0200

    v2v: fix identifier
    
    Set the "virtio_win" identifier to the right Guestfs handle.
    
    Fixes commit f7249a0bccc43d5b5e11703ff432b0361b03292b.

commit f6297d38a903da4d271ad795a00eae5856f24d34
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 21 15:50:00 2015 +0200

    v2v: use open_guestfs everywhere
    
    Use the common open_guestfs to open Guestfs handles, so we get
    debugging, tracing, and other common options set.

commit 334536548d89bec012aed3fa12538f966a6e7f1f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 21 15:39:21 2015 +0200

    v2v: move open_guestfs to Types
    
    Move most of open_guestfs to Types, so a common function to open a
    Guestfs handle is available.  Since it does not do all the things the
    old open_guestfs did, the two operations have been moved to the only
    place requiring them.
    
    This function has been placed in Types and not Utils, as will be needed
    by other functions in Types; Utils uses Types, so this avoids a circular
    dependency.

commit 85ca0f70610238a661564154c6609456e656d42c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 21 15:45:27 2015 +0100

    p2v: Set the virt-p2v ISO timeout to 60 seconds (not 6 seconds).
    
    Thanks: Dennis Gilmore.

commit 36181a48215c4a6bbe99edaff2292602bdb9ca4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 21 15:20:06 2015 +0100

    p2v: Add dracut-live to the kickstart (RHBZ#1168223).
    
    Thanks: Dennis Gilmore for working out what was missing.

commit ef58bd6190a232140981219f8ff45005b998207d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 21 11:18:32 2015 +0200

    actions: turn some params into FilenameList (RHBZ#1174551).
    
    Use FilenameList as type for lists of file names, as used in some
    listing-alike APIs.  This way we can ensure anything different than just
    file names in those lists is rejected outright.
    
    As a consequence, test-big-dirs.pl does not need to prepend the
    directory name anymore before calling listing-alike APIs: previously
    they didn't fail, but the returned lists contained only invalid
    elements (and only their size was checked).
    
    Furthermore, add a new regression test for it.

commit 9fafd2a95ce552a46da2af4165c63f07952f991e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 21 11:04:50 2015 +0200

    generator: add a FilenameList parameter type
    
    Mostly like StringList (so it can used in current StringList
    parameters), but checking client- and daemon-side that the elements are
    file names.

commit b9f0b45568acd3f9e1b788d8e2ccdb9325a0dbab
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 21 10:51:05 2015 +0200

    tests: use fake-virt-tools also in tests outside v2v
    
    We have phony tools for v2v tests, introduced with
    commit c1af1ba32f126b7be275bcc8cd4ea4e5af27a88e; make use of it also in
    tests related to v2v outside the v2v directory.

commit 70f7dbccdc200a4c7346a15183cd0be047690081
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 21 11:23:30 2015 +0100

    docs: Move guestfs-release-notes(1) to docs/ subdirectory.
    
    I have also removed the text equivalent of this file.  Originally I
    added this because it was thought good to have the release notes
    available in a format that doesn't require any special tools to read.
    But:
    
     - POD files are basically text.
    
     - Debian tooling generates the text file in a slightly different way
       from Fedora tooling, resulting in git marking the file as being
       updated when it isn't really.
    
     - github can format and display POD files.

commit f1b9e3d9f0777b9251b5c5c4c1cf1b973b15d6c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 21 11:12:23 2015 +0100

    Move miscellaneous documentation from examples/ to docs/.
    
    Wasn't very logical putting these doc files in the examples directory.

commit 5510f7c22d9be7d02cce968644289eafddae0fdb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 21 10:36:07 2015 +0100

    guestfs-performance: Add a note about Xen dom0.

commit 1aefe93f679a45897f64cfd7459a02371d4282ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 21 10:35:03 2015 +0100

    guestfs-performance: Use lowercase in =head2 sections.
    
    Makes it easier to read.

commit 8d82c40188e5c616fcfee15bfeb45e471e963fc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 20 23:53:21 2015 +0100

    Version 1.31.19.

commit 0e41ef6dfa0f47c1c47234cb95f2424bd6f6289f
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Tue Oct 20 18:45:56 2015 +0300

    Include resize2fs_P into vfs_minimum_size.

commit 27887c3f414a021796c9523338ea10862a24370d
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Tue Oct 20 18:45:55 2015 +0300

    New API: vfs_minimum_size
    
    This call provides the way to get minimum size of filesystem.
    This is needed for shrinking. The return units are bytes.

commit 6a15ff30099485e563e1cd8042f8544536f16bc7
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 19:07:36 2015 +0300

    v2v: add test for --in-place
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 8087e925f8ebe7bd917138adfaf8e3e0d26181ea
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 19:07:35 2015 +0300

    v2v: document --in-place
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit e4783edd66c4a602db69eac2d21bf0ecc211cf2d
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 19:07:34 2015 +0300

    v2v: add --in-place mode
    
    In this mode, converting of the VM configuration, setting up the
    rollback path for error cases, transforming the VM storage and so on is
    taken care of by a third-party toolset, and virt-v2v is only supposed to
    tune up the guest OS directly inside the source VM, to enable it to boot
    and run under the input hypervisor.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 16486bb7d50c063582de5ae88c88ba4e768f8933
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 19 15:17:46 2015 +0200

    Add a regression test for RHBZ#1011907 / RHBZ#1165785
    
    Test case adapted from Hu Zhang's RHBZ#1242853, thanks.

commit 8fd965b79a69aa8dab056367e22b77ad4bb79231
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 20 16:56:00 2015 +0100

    Version 1.31.18.

commit f1e81889143ff7f119377cdf243877fb986c3d95
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 16:08:18 2015 +0300

    v2v: factor out opening and populating guestfs handle
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit b6e345b6778de32469612d7518c88c20e6814b8a
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 16:08:16 2015 +0300

    v2v: factor out preserving overlays for debugging
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 9a0213c573913894d91366f7e756e2d972f777e9
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 16:08:15 2015 +0300

    v2v: factor out copying of output data
    
    Factor out copying the overlays to final disk images into a separate
    function.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 56136348fb7babb5db7c271826997ab4915f32e1
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 16:08:14 2015 +0300

    v2v: factor out determining the guest firmware
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 02ddc9bdf7f4099d9b985369dd83b0ed7062ed8c
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 16:08:13 2015 +0300

    v2v: factor out actual guest transformation
    
    Factor out perfoming the actual convertion of the guest, which includes
    determinig the appropriate guest os specific conversion module and
    running its conversion routine.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 41bde6ffeaf5f33c49a3733b0149f6ec110248e4
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 16:08:12 2015 +0300

    v2v: factor out size checks
    
    Factor the size checks out to separate functions.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 24379de0ac95286c5f98f81e8679ce2e34261dcb
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 16:08:11 2015 +0300

    v2v: factor out populating targets list
    
    Besides, it doesn't need guestfs handle open so move this step earlier
    in the process.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit d16c92a60593f7f1fe2a2e51b14e632597cfb039
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 16:08:10 2015 +0300

    v2v: factor out overlay creation
    
    Iterating over source disks and creating temporary overlays for easy
    rollback fits nicely into a separate function.  In addition, determining
    their size doesn't need to wait until the guestfs is launched: the size
    can be obtained via disk_virtual_size() method.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit d4b197899bbb4e1eaee98f24a0b9806a8b732b2e
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Tue Oct 20 16:08:09 2015 +0300

    v2v: factor out opening input VM
    
    Opening the source VM and amending the properties in its internal
    representation in accordance with command-line options fit nicely into
    two isolated functions.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 7bf11e9b1679738440fb0387233ea0657059c2ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 16 10:22:00 2015 +0100

    inspect: Include more information for augeas parse errors (RHBZ#1229119)
    
    If Augeas fails to parse a file, more information is available in at
    least these fields:
    
    ><fs> aug-ls /augeas/files/etc/fstab/error
    /augeas/files/etc/fstab/error/char
    /augeas/files/etc/fstab/error/lens
    /augeas/files/etc/fstab/error/line
    /augeas/files/etc/fstab/error/message
    /augeas/files/etc/fstab/error/pos
    
    Pull out some of these fields and add them to the error message.
    The new error message looks like this:
    
      virt-v2v: error: libguestfs error: /etc/fstab:17:4: augeas parse failure:
      Iterated lens matched less than it should
    
    This updates commit 279addeb7dd4f5f2446a3995eb7704980c08b5ff.

commit 39ce2e612836486b98547a517f8de424f3930395
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 15 22:34:13 2015 +0100

    lib: Define HAVE_LIBVIRT_BACKEND where you have too old libvirt to run the backend.
    
    In the case where libvirt was installed, but is too old to run the
    backend, the libvirt backend would be compiled out but still
    referenced by the library.
    
    Fix this by splitting the definition of HAVE_LIBVIRT (libvirt is
    installed at all) and HAVE_LIBVIRT_BACKEND (libvirt is new enough to
    run the libvirt backend).
    
    Reported by: Efstratios Skleparis.

commit d5192234888aa0c49ca8a95808c751792e4843d6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 15 18:14:49 2015 +0200

    inspect: check for errors in files parsed with augeas (RHBZ#1229119)
    
    During the inspection phase, check for errors after aug_load: if any of
    the errors happened in any of the requested files, then report the error
    straight away; ignoring the error means that information would be
    silently lost.  For example, a malformed /etc/fstab would have caused
    the inspection to not handle any of the additional mount points, giving
    cryptic errors later on when trying to access files in any of the mount
    points.
    
    Now guests with invalid files such as /etc/fstab, /etc/mdadm.conf, and
    /etc/sysconfig/network will cause the inspection to fail, instead of
    being reported with a single mount point ('/').

commit 327a94217794d47b94fc06dfa7eddc997cc7fc26
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 15 16:24:25 2015 +0200

    mllib: move is_regular_file there
    
    Move the is_regular_file function, implemented in virt-dib and virt-v2v,
    to Common_utils.

commit a82ae20a9f3c0f7b3d370d4498c437080fbcf696
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 15 14:32:02 2015 +0100

    v2v: Curry Changeuid.func.

commit 2fd399245b87f6d2482dd87ddf0e583e70c2681a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 15 14:31:24 2015 +0100

    v2v: Rename Kvmuid module to Changeuid.
    
    It has nothing to do with KVM.

commit b7a17dd1802b6e93cf15a83031d8aefd7e2f9ad0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 15 14:24:10 2015 +0100

    Version 1.31.17.

commit c9a07b1a5b62dd05c28f8b3fda80f526e6818983
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 15 13:23:29 2015 +0100

    v2v: Add unit test for virtio_iso_path_matches_guest_os.

commit 016e4847a328ced8a75e413973000394480c62e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 15 12:25:01 2015 +0100

    v2v: Rename match_vio_path_with_os -> virtio_iso_path_matches_guest_os.
    
    Just refactoring.  Having the function name begin with 'match' was a
    bit confusing because it can look similar to a match statement.

commit f5e4610c39b76382e2d087a46199a9c55b3be7f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 14 16:44:52 2015 +0100

    lib: Add comment and regression test for case where main process has large heap.
    
    Thanks: Dan Berrangé for identifying the problem.

commit 86c3f0c6ed7bd7252ba8be540aba4e4fb2425e60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 14 16:25:56 2015 +0100

    lib: info: Move common code for setting child rlimits.
    
    This is almost just refactoring, but I also set the memory
    limit to really 1 GB, and not 1×10⁹.

commit 7215f519bb8cb2ffd5e02a24421acf8305012f90
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Wed Oct 14 19:55:44 2015 +0300

    v2v: drop useless forced gc
    
    Now that virtio driver copying is localized in a single function and the
    auxiliary guestfs handle doesn't leak outside of it (and thus an extra
    qemu instance doesn't survive beyond that function's runtime) there's no
    need in the forced GC which used to trigger closing of that handle and
    termination of that qemu instance.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 287f15478bbf99d6dd8ebf5ca76bb4b89f5c3930
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Wed Oct 14 19:55:43 2015 +0300

    v2v: copy virtio drivers without guestfs handle leak
    
    Refactor copying of virtio windows drivers into the guest so that the
    matching of the drivers to the guest os flavor and copying the files
    happens one next to the other in a single function, and no guestfs
    handle (nor any other irrelevant info) is leaked outside.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit b67b3faf1fcf0d915de81af03a02cae567f150f5
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Wed Oct 14 19:55:42 2015 +0300

    v2v: consolidate virtio-win file copying
    
    Copy the appropriate driver files from the virtio-win storage into
    %SYSTEMROOT%\Drivers\VirtIO once they are discovered, and stick to using
    those copies later on.
    
    This way the knowledge of where the drivers come from originally is
    consolidated in one place, so the lifetime of the associated entities
    becomes easier to control (to be implemented in followup patches).
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit a09297168882addebc0c75a4a08d239e0ecaa65b
Author: Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Date:   Wed Oct 14 18:13:29 2015 +0300

    New API: resize2fs_P
    
    Added support for getting ext2/3/4 filesystem minimum size.
    This is needed primarily for shrinking images.

commit 89878c9b063cb143681572c5ecf8197b9bcf556d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 14 14:45:48 2015 +0100

    v2v: test harness: Suggest using make check -k.

commit 4104ce9ca39334fe9bb61b65dcd449933e9ce033
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 14 14:45:29 2015 +0100

    v2v: test harness: Use I<> quoting around command line parameter.

commit d5a7218688d71261ca81edb11f899cbb69fd83d3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 12 16:38:50 2015 +0200

    builder: fix conversion of double to OCaml (RHBZ#1270011).
    
    Create the OCaml value for double using caml_copy_double, which is
    the correct way, simplier, and works.

commit 245f3dd5dfcada87d1f792f06b5a8d4de89156da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 9 17:55:19 2015 +0100

    Version 1.31.16.

commit 40ecff086ddd38b05854b33342ce76e3d99894e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 9 17:46:36 2015 +0100

    v2v: -i libvirt: Fix comment.

commit 8f8a9c556df98b858629a1055a2d80471cdec2d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 9 12:45:02 2015 +0100

    v2v: Refactor the map_source_to_uri function.
    
    Move this function to the VCenter module.  This is easier since it
    doesn't have to do dcPath calculation (see previous commit).
    
    The readhead parameter is no longer labelled.

commit c5cb14aa1950c41705b2da10f386242a462197dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 9 12:22:52 2015 +0100

    v2v: Use libvirt-supplied <vmware:datacenterpath> if available.
    
    In libvirt >= 1.2.20, the VMware libvirt driver supplies the correct
    dcPath to use via <vmware:datacenterpath> in the libvirt XML.  If
    libvirt passes us this element, use it.
    
    This code still allows the user to override dcPath using the --dcPath
    option on the command line, but that's mainly for safety so we can fix
    any problems in virt-v2v or libvirt in the field.  As we get more
    confident in libvirt and as libvirt 1.2.20 is more widely adopted, we
    will be able to deprecate this parameter entirely.
    
    Thanks: Matthias Bolte for adding the <vmware:datacenterpath> element
    to libvirt in
    https://libvirt.org/git/?p=libvirt.git;a=commit;h=636a99058758a0447482f3baad94de8de3ab1151

commit 6fbd0e5fc159d1033d6dccbc4fd8173361487f88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 9 11:53:02 2015 +0100

    v2v: Move VCenter functions to library module.
    
    This refactors useful VCenter functions out of the large
    'input_libvirt_vcenter_https.ml' file.

commit b5b14b66936b71b811477a655ffa5074245e8e64
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 9 11:38:19 2015 +0100

    v2v: Move curl functions to library module.
    
    This refactors the curl functions used to talk to vCenter into a
    library module.

commit 86e15ba3a69066ef356a3f7b6679012197f98b49
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 9 13:20:57 2015 +0100

    v2v: Fix bogus comment.

commit b5da7376b4676c3c0d762ec7d7bbf2fd4a1b3790
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 9 12:32:48 2015 +0100

    inspect: Don't free uninitialized string.
    
    libguestfs: trace: v2v: read_lines "/etc/os-release"
    [...]
    libguestfs: trace: v2v: read_lines = ["NAME=Fedora", "VERSION="20 (Heisenbug)"", "ID=fedora", "VERSION_ID=20", "PRETTY_NAME="Fedora 20 (Heisenbug)"", "ANSI_COLOR="0;34"", "CPE_NAME="cpe:/o:fedoraproject:fedora:20"", "HOME_URL="https://fedoraproject.org/"", "BUG_REPORT_URL="https://bugzilla.redhat.com/"", "REDHAT_BUGZILLA_PRODUCT="Fedora"", "REDHAT_BUGZILLA_PRODUCT_VERSION=20", "REDHAT_SUPPORT_PRODUCT="Fedora"", "REDHAT_SUPPORT_PRODUCT_VERSION=20"]
    
    At this point libguestfs segfaulted.
    
    It seems as if 'major' is not used here, so don't try to free it.
    
    This fixes commit 32d19e3289bc259901f77398703f16cf6eabd510.

commit df35020f2c0fdbe77977d18d098ae73b400d54cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 8 22:05:19 2015 +0100

    Version 1.31.15.

commit b1e47588df8075807d74a0a7c4535b4329069b9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 8 21:49:37 2015 +0100

    handle: Free g->identifier on close.
    
    This fixes commit f6e13aeb65b37ae7fd4222bf16dfb2f9b03d188d.

commit 21e803a2364881accb261f268f56ad7045c3763f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 8 20:09:03 2015 +0100

    v2v: Add xpath_int64 functions, and use them to read memory values.
    
    On 32 bit platforms, reading the memory values can cause some numbers
    to be read as negative numbers.  Fix this by treating memory values as
    64 bit integers throughout the parsing and calculation.

commit 409dc91e1e89689c29651b602bdc033131b21703
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 8 19:51:43 2015 +0100

    Version 1.31.14.

commit 07043753900dae7092624020735c1a9133edde57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 8 16:44:47 2015 +0100

    test/qemu: Fix free/close of log file.
    
    The log file was not being closed at the right time, resulting in the
    process running out of open files.  Also the log filename buffer was
    not freed.
    
    This fixes commit 7bbf5cab2884c27987b590d75f6577a8f9dabf73.

commit 441f67423403eca89d99f9ab0503c5085f89ba9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 8 16:49:44 2015 +0100

    v2v: Use handle identifier in a few places.
    
    Set the handle identifier of the main handle to "v2v".
    
    Whenever we open a second handle for any substantial operation, set
    the handle identifier for that handle too.
    
    This should make traces clearer.

commit c548e9ed10256ae49cb7dcda4a72e66e90252e8e
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Thu Oct 8 16:50:36 2015 +0300

    v2v: add test for v2v with virtio-win drivers on iso
    
    For that, add autofoo machinery to generate the iso out of the fake
    virtio-win drivers introduced in the previous patches, and pass the
    resulting image in $VIRTIO_WIN to v2v in a new test otherwise similar to
    test-v2v-windows-conversion.sh.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 5d8d81ded0cea70cbad000180dbdd39c613d1661
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Thu Oct 8 16:50:35 2015 +0300

    v2v:tests: use fake virtio-win drivers
    
    In order to test the copying of virtio-win drivers into the guest during
    v2v, create a set of fake virtio-win drivers and make use of them in the
    corresponding v2v tests.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit ed5ba89983c636f6fa0c9c82c9ad43b246c350c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 8 15:19:26 2015 +0100

    tests/qemu: Add qemu-boot --log option.
    
    This option can be used to direct output from each individual
    boot test to a different file.  Usual usage is:
    
      qemu-boot --log /tmp/output.% -v -x -n 1000

commit dafaf8590d4cf1c9cdfa6b4ff3bf8ab138642098
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 7 18:01:09 2015 +0100

    Add the thread identifier to various multi-threaded programs and tests.

commit 9f847b2f464114e75d588689b78d529e4d333570
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 7 17:53:58 2015 +0100

    New APIs: set-identifier, get-identifier
    
    Add a per-handle identifier.  The main effect of this is to change
    trace output from:
    
      libguestfs: trace: foo
    
    to:
    
      libguestfs: trace: ID: foo
    
    which makes it simpler to follow traces from multi-threaded programs.

commit 994dc5ebd66459da47dbb8a903a410fd093ef11b
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Thu Oct 8 16:50:34 2015 +0300

    v2v:test:win: actually check the eventual layout
    
    v2v/test-v2v-windows-conversion.sh used to query if the expected
    directories and files were present in the VM upon conversion; however it
    would ignore the results of that query.
    
    That lead to the test passing even though the checks failed.
    
    To fix it, parse the output of guestfish and verify that all is-file and
    is-dir commands report the expected "true".
    
    The approach taken is slightly more elaborate than what is being used in
    other components, but it allows to generate comprehensible reports in
    case of test failure, and facilitates future expansion of the set of
    checks including negative ones.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit f20f31765b158ec638bf2b1fc1217f67c0fba9db
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Thu Oct 8 16:50:33 2015 +0300

    v2v: add fake rhev-apt.exe
    
    Without rhev-apt.exe the code path where firstboot scripts are created
    isn't taken, so it isn't tested and v2v/test-v2v-windows-conversion.sh
    is supposed to fail (it actually doesn't but for another reason,
    addressed in a followup patch).
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 894cac6e7a1b3edb6cc858f39a1808a1aaa5ab83
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Thu Oct 8 16:50:32 2015 +0300

    v2v:tests: use fake rhsrvany.exe
    
    The tests that depend on rhsrvany.exe being available, actually don't
    need it to be the real one: all they want is the file being present.
    
    So, instead of skipping the tests if the real rhsrvany.exe is not found,
    store a fake one in the repository, and point $VIRT_TOOLS_DATA_DIR at
    its location.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 87fc215c2b19779e04d5cf2021c75f508f1fd38f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 8 16:31:54 2015 +0200

    build: use libintl where needed
    
    Followup of commit a5426cce5faa0fde0de1b62c8646cb8a9992ef2b.

commit 17cdcb368dae72115c7fbd86f2ad8b12b8047298
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 8 13:34:03 2015 +0200

    fuse: test-fuse: close files even on errors
    
    Make sure to close the open files even when test_fuse() returns earlier
    because of failures, otherwise the mountpoint is still in use by open
    files when later guestunmount is called on it.

commit 5b7b92f9b989cae3095d739ee0fb237e3bff26b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 7 17:26:01 2015 +0100

    v2v: Skip test-v2v-o-libvirt.sh on !x86_64.

commit fed808a06b619426bd4c87f62900531da2fb45da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 7 14:24:37 2015 +0100

    Version 1.31.13.

commit ffd9caf4b101482e761affaf936795ad598bb502
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 7 14:16:00 2015 +0100

    ocaml/examples: Fix use of event_callback in debug_logging.ml.
    
    This fixes commit 8bbc5e73cb5b56b5cfbe979ac0e1c14d1701a0d8.

commit 35e0389e9bcc83a5e6f6cd2894afb274c730bb54
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 7 14:15:05 2015 +0100

    ocaml/examples: Remove all programs in 'make clean'.
    
    Previously the debug_logging program was not being deleted.

commit 6f3caf8f6292640042dbbc7d9ac74106f56e8788
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 7 14:02:56 2015 +0100

    Version 1.31.12.

commit c3d3c3c20b68bed62b96fb45388007ec59fd77ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 7 13:25:32 2015 +0100

    configure: Check that OCaml version >= 3.11.

commit cac66d9e2d754e0e77c761090e058515f5fd9608
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 14:53:43 2015 +0100

    ocaml: Add regression test for failure of implicit close.

commit 19f67fef86a1301871fc60b9908c4c48a83869a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 15:42:39 2015 +0100

    ocaml: Allow Guestfs.t handle to be garbage collected.
    
    ** NB: This is an API break for OCaml programs using Guestfs.event_callback. **
    
    Because of the way I implemented Guestfs.event_callback which had the
    Guestfs.t handle as the first parameter, we had to store the (OCaml)
    Guestfs.t handle in the C handle's private data area.  To do that, we
    had to create a global root pointing to the handle.
    
    This of course meant that the handle could not be garbage collected
    (thanks Roman Kagan for spotting this).
    
    This changes the API of Guestfs.event_callback so that a handle is no
    longer passed.  The OCaml handle can now be garbage collected again.
    
    For programs that need the Guestfs.t handle in the callback function
    (which turns out to be *none* of the OCaml programs we have written),
    you can do:
    
      g#set_event_callback (callback_fn g) [Guestfs.EVENT_FOO];
    
    In this case, since the closure passed to Guestfs.set_event_callback
    is still registered as a global root, that will capture a reference to
    the handle, so the handle won't be able to be garbage collected until
    you delete the callback.

commit 549edb4729d5984dde8ce7f00b56f7b4a1321853
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 15:00:00 2015 +0100

    ocaml: Use generational global roots.
    
    These are considerably more efficient than ordinary global roots, but
    with the caveat that the program is not allowed to modify them without
    calling a special function.  We don't modify them, so this change is
    safe.
    
    This requires OCaml >= 3.11, but we have that on RHEL 6
    (since we dropped support for RHEL 5).
    
    See also:
    http://caml.inria.fr/pub/ml-archives/caml-list/2008/03/c3bf86990088236ceeb9a0f0f4c35390.en.html

commit 24a5921bbc433b875803130f4fc67e09e3d7bbc1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 13:26:04 2015 +0100

    mllib: Replace various ad hoc string_* functions with String.*
    
    This is just a straight refactoring.  Various ad hoc string_*
    functions that appeared in Common_utils have been renamed and placed
    in the String.* namespace.  The old vs "new" functions are:
    
    string_prefix  -> String.is_prefix
    string_suffix  -> String.is_suffix
    string_find    -> String.find
    replace_str    -> String.replace
    string_nsplit  -> String.nsplit
    string_split   -> String.split
    string_lines_split -> String.lines_split
    string_random8 -> String.random8

commit adfbf4d15427be8a94410b164c702853e3527326
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 12:36:05 2015 +0100

    mllib: Hide unsafe lower/uppercase functions.
    
    The ones in the OCaml stdlib assume ISO-8859-1 bytes and strings, and
    so can end up corrupting UTF-8 strings.

commit c702463cce01b2c02b7936b434dc1ff65807524f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 12:46:16 2015 +0100

    mllib: Add (Char|String).(lower|upper)case_ascii functions.
    
    These functions come from upstream OCaml (4.03) where they were
    written by Gabriel Scherer under a compatible license.
    
    See also:
    http://caml.inria.fr/mantis/view.php?id=6694
    http://caml.inria.fr/mantis/view.php?id=6695

commit 1078a3d39c98e231525f1116e076bf0b037e0f4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 12:30:43 2015 +0100

    mllib: Override Char and String modules from stdlib.
    
    In Common_utils, override the Char and String modules from stdlib.
    This hides the original (stdlib) modules, and means that whenever you
    use Char.foo or String.foo you are in fact calling the
    Common_utils.Char.foo or Common_utils.String.foo function.
    
    As it stands, this change does nothing, but it will allow us to drop
    unsafe functions (like String.lowercase) and add extra functions.

commit 8355a79cd6393a4ceccbd09d56c1e52b3be89481
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 12:23:21 2015 +0100

    mllib: Don't alias G = Guestfs in Common_utils module.

commit 54fd50099517f8672f9be9d2f578ebfc5010d0c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 11:47:08 2015 +0100

    tests: Don't leave a libguestfs tmpdir lying around after running test-launch-race.pl.
    
    Calling _exit(2) in the child process has the side effect that
    tmp/libguestfsXXXXXX is not cleaned up.  Clean it up by ensuring the
    handle is properly closed before _exit.

commit fff4a0a04dcb9f03a5b5132f90bc60c80b56866b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 11:35:54 2015 +0100

    tests: Fix test-launch-race.
    
    This test has been broken for a while.  It is meant to test that when
    the appliance cachedir is empty, two simultaneous runs of libguestfs
    (both rebuilding the full appliance) will not cause conflicts, because
    (eg) the locking in either supermin or libguestfs is not working.
    
    However the test only set $TMPDIR, but the ./run script sets
    $LIBGUESTFS_CACHEDIR which overrides $TMPDIR, so it was simply reusing
    the existing appliance, and hence not testing anything.
    
    Fix this by clearing $LIBGUESTFS_CACHEDIR.
    
    Note the test now takes a lot longer to run since it does a full
    appliance rebuild.

commit dab77aef369be5f3a2ce400c07bc72e9a64bbc44
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 6 11:22:21 2015 +0100

    builder: Remove duplicate planner transition.
    
    Seems to be a copy and paste bug in
    commit 62cc7d3361127b4e007f8e23028213852be09124.

commit 7cb2f024c333f3308b3031854577abdd167aa4b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 5 22:00:13 2015 +0100

    clean: Remove null.* and sockets from builddir tmp/ subdirectory.

commit 7f916954e2bbb79b0b9f89f0fb991b1f3e67bfe2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 5 20:39:21 2015 +0100

    Update translations from Zanata.
    
    However I reverted the Catalan file since it did not appear to be
    newer than the version provided in
    commit 6404114515f23660516013f4aa132dc32fdcba71.

commit 5ebc85bc937900b1cddc78fa9e9008d96cf8053d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 5 17:13:18 2015 +0100

    Version 1.31.11.

commit 2c3d5a437817590aa82c979b4854a45cb5af028e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 5 14:39:33 2015 +0200

    p2v: fix mode for gtk_label_set_line_wrap_mode
    
    Accoding to its documentation [1], it takes as second parameter a
    PangoWrapMode and not a GtkWrapMode.  While the change should reflect
    the actual value intended, it should slightly change the label wrap
    mode: GTK_WRAP_WORD is 2, which corresponds (as int value) to
    PANGO_WRAP_WORD_CHAR.
    
    [1] https://developer.gnome.org/gtk2/stable/GtkLabel.html#gtk-label-set-line-wrap-mode

commit 2d5a7b5be3ce9858c948daed6b7a668b9fa1ffde
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 5 14:37:32 2015 +0200

    daemon: use str_udevadm in udev_settle
    
    There is GUESTFSD_EXT_CMD defining a string for udevadm (so it is marked
    as "used tool" in the appliance), but it is not actually used when
    starting udevadm.
    
    There should be no behaviour change.

commit e3a7c46ef203489f7408af39574988ebd66d9ce2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 5 14:05:52 2015 +0200

    Fix shebang in perl scripts
    
    Instead of hardcoding the location of perl (assuming it is installed in
    /usr), use /usr/bin/env to run it, and thus picking it from $PATH.
    This makes it possible to run these scripts also on installations with
    perl in a different prefix than /usr.
    
    Also, given that we want enable warnings on scripts, turn the -w
    previously in shebang to explicit "use warnings;" in scripts which
    didn't have it before.

commit a8885cc03be3fb3dac2f93fc4784cb6765aa62ab
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 5 13:43:00 2015 +0200

    lib: include <sys/socket.h> for accept4
    
    Apparently implicitly pulled by something else on Linux, it is not when
    building on e.g. FreeBSD.
    
    This reverts the change to this file of
    commit 3b17152ec399acb35b23331d2c3b4f424a68824a.

commit fe2f5cdb740101355998fa9a37bdece6428faf51
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 5 13:28:32 2015 +0200

    Revert "lib: Don't need to include <rpc/types.h>."
    
    The include is not needed with GNU libc, where rpc/xdr.h includes it
    [1].  But this does not happen on other libc's, for example the
    FreeBSD [2] and Mac OS X [3] ones.
    
    Hence put it back, with an extra comment about this.
    
    [1] http://linux.die.net/man/3/xdr
    [2] http://www.freebsd.org/cgi/man.cgi?query=xdr&sektion=3&apropos=0&manpath=freebsd
    [3] https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man3/xdr.3.html
    
    This reverts commit ada85d15669886f0456ffecf1b13fc7a7df38e5c.

commit 6fd1b7c0087c87b0b3890ecd3fcad0c88a087540
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 5 13:35:40 2015 +0100

    Remove multiple hacks that only apply to RHEL 5.
    
    We don't support RHEL 5 upstream (see the 'oldlinux' branch for a
    version that works with RHEL 5).  Therefore remove a bunch of hacks
    that were only needed on RHEL 5.

commit 579614d5417b9aa46df744ff4eefbe67bf1b4fa5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 5 11:40:16 2015 +0100

    Fix whitespace.
    
    Because of previous automated commits, such as changing 'guestfs___'
    -> 'guestfs_int_', several function calls no longer lined up with
    their parameters, and some lines were too long.
    
    The bulk of this commit was done using emacs batch mode and the
    technique described here:
    
      http://www.cslab.pepperdine.edu/warford/BatchIndentationEmacs.html
    
    The changes suggested by emacs were then reviewed by hand.

commit 60d12a7df49824139765a3b64c710ec5a4eadb95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 5 11:55:31 2015 +0100

    Change 'fprintf (stdout,...)' -> printf.
    
    Result of earlier copy and paste.

commit b843cbae1f27c1f26ae4771cae35a9806372fe6e
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Mon Oct 5 15:40:05 2015 +0300

    v2v:utils: ignore files w/o extension
    
    When searching for virtio drivers, it makes no sense to fail if we
    encounter a file without extension.
    
    Ignore such files instead, just like we do for the files whose extension
    doesn't match that of a driver-related file.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit 6267627547630ab176d3871e20a37d8abaa77b8c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 5 11:41:03 2015 +0200

    actions: fix documented limit for btrfs labels
    
    Our documentation of set-label says that labels for btrfs are limited
    to 256 characters, while btrfs-filesystem(1) says:
    
      Note
      the maximum allowable length shall be less than 256 chars
    
    which is indeed true, as trying to set a label with 256 characters
    fails. Hence, fix our documentation to say that the limit is actually
    255 characters.
    
    Related to RHBZ#1164708.

commit 21618a15f2117646d1f03f035e462edc1e63bddb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 4 20:03:46 2015 +0100

    Version 1.31.10.

commit eb16e940d918cc3b7f0d4544496c8d4ec3f9029d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 2 15:22:19 2015 +0100

    launch: direct: Use a single -machine [type, ]accel=... option.
    
    Previously we used (on arm): -M virt -machine accel=...
    
    After this change, we use: -machine virt,accel=...
    On x86 there is no change.
    
    The -M option is an abbreviation for -machine, and we can combine the
    two options together.  (Qemu combines the two options internally, but
    it's more predictable if we do it ourselves).
    
    Upstream qemu has supported the -machine option for over 5 years, and
    in fact we implicitly relied on it (despite what the comment in the
    code said).

commit 8f3a63723dbd700ead60ede2c7bfa991dad2d23c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 2 15:22:20 2015 +0100

    launch: Change comment.
    
    Making -machine configurable would be a really bad idea.

commit 1af5c115cca77210065326946ca617ad822f77ac
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Fri Oct 2 18:16:48 2015 +0200

    customize: remove zypper's gpg keys auto-import
    
    This option was considered unsecure, found a fix on the generated
    opensuse images instead.

commit 81fc84b84f8999beda809c0afe0fdd32e72ddf77
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 2 14:52:14 2015 +0200

    ruby: improve rdoc markup
    
    - fix the syntax of hyperlinks
    - replace the deprecation text with a simplier named list item, so it's
      more visible
    - use a named list item for the pointer to the C documentation of each
      API
    - add a named list item for the version of each API

commit a0d2204a8016d59d9cac49bd7aebfb82b200031c
Author: Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>
Date:   Thu Oct 1 20:06:31 2015 +0200

    add Catalan in po/Makefile.am

commit 6894ed11a5054b81f9f15e1b9554e30b6c62f111
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 14:46:15 2015 +0100

    build: Remove ./configure --enable-valgrind-daemon.
    
    If you've ever tried to use this option, you'll know that it didn't
    work well.  It broke random things (probably RHBZ#1020216, definitely
    RHBZ#1023630), and caused random failures generally, while often not
    actually failing when valgrind itself found problems.

commit 6f8072a322bf9f40ea95b1149d71f12766753017
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 1 14:17:52 2015 +0100

    ocaml: Conditionally remove bindtests.* when doing 'make install'.
    
    Commit f6a790b67d7c8f79532f61d20d11ec8d3a4e003b changed the Makefile
    so it only builds the tests when you run 'make check'.
    
    If you didn't run 'make check' then (in particular) bindtests won't be
    built, and so when you install it cannot be removed.
    
    The simple fix for this is to make the removal of bindtests.*
    conditional.
    
    This fixes commit f6a790b67d7c8f79532f61d20d11ec8d3a4e003b.

commit 640270bfdca5bfb8aafaf76b6337bc40acc6f4a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 1 14:11:40 2015 +0100

    Add missing generated files to generator_built and EXTRA_DIST.
    
    Use the generator_built variable to list any files which are built by
    the generator.  This ensures they get automatically rebuilt.
    
    Three files were missing from EXTRA_DIST, so they were not included in
    the tarball, meaning you would have needed OCaml to build from the
    tarball.  You would have seen this when building:
    
      cd .. && /builddir/build/BUILD/libguestfs-1.31.9/generator/generator
      written gobject/docs/guestfs-title.sgml
      written customize/customize-synopsis.pod
      written customize/customize-options.pod
      generated 476921 lines of code

commit dbfba3017b38dd2bc56ea43c94eefc67991318bd
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Thu Oct 1 13:59:10 2015 +0200

    customize: sles password defaults.

commit 89124692820b31cf25ffc430e435d57d7bcfab3e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 30 17:30:47 2015 +0100

    Version 1.31.9.

commit 83a897141a075cbb5a152615cc2506e336f77cfd
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed Sep 30 17:01:54 2015 +0200

    Add opensuse.gpg to the dist tarball
    
    Adding missing opensuse.gpg to EXTRA_DIST.

commit 7e55c592df5d879f35dae3ac18fc381112ef8011
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 30 10:15:55 2015 +0100

    ocaml: Improve ocamldoc.
    
    Miscellaneous improvements to the ocamldoc:
    
     - Generate more sub-headings.
    
     - Document the object-oriented API.
    
     - Use a common function to generate the doc for module and OO APIs.

commit 9187f3498e87404a7a7a070ba469149c8f678891
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 30 10:01:00 2015 +0100

    ocaml: Use ocamlfind to run ocamldoc.
    
    Using 'ocamlfind ocamldoc' is much faster than running 'ocamldoc'
    directly, because ocamlfind will run the native code program
    'ocamldoc.opt' if it is available.
    
    This change approximately halves the time taken to compile the ocaml
    bindings.

commit 9b52f0824175464b927531469082fb92825a28ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 30 12:06:50 2015 +0100

    daemon: Compile stubs.c first.
    
    This shaves about 20% off the compile time for the daemon subdirectory.
    
    See also:
    https://rwmj.wordpress.com/2015/09/30/make-and-queuing-theory/#content

commit 53ac19e9bce951574563b53d755414a61fee18eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 22:39:23 2015 +0100

    java: Only build the tests when running 'make check'.
    
    Make the tests 'check_DATA' so they only get built when running the
    tests.

commit 9e43930f7c9743310a5aec75015fd1c8c15982ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 22:28:28 2015 +0100

    ocaml: Only build the tests when running 'make check'.
    
    Make the tests 'check_DATA' so they only get built when running the
    tests.  This saves a couple of seconds on the build time.

commit 1947e328fdf85f7996528013acad57765dc0e8bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 21:58:41 2015 +0100

    lib: Remove unused header files.
    
    I used ESR's deheader program to look for unused includes.  I then
    examined each instance by hand, and also test-compiled (on Linux).

commit aa4b0f5b6a123e1f2d3b5057af0be38103aa4411
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 19:56:21 2015 +0100

    lib: Don't need to include <rpc/types.h>.
    
    It is already included by <rpc/xdr.h>.

commit d6a327f95238de0d3026268fd5f13cc610e16088
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 19:53:12 2015 +0100

    lib: Move <libintl.h> -> files that use it.
    
    Don't include <libintl.h> (for gettext etc) in <guestfs-internal.h>.
    Include include it only in files that use internationalized strings.

commit 4dbb9a49cd45dab6168ffb58ddf7c337f5107ea9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 30 10:09:36 2015 +0200

    copy-in: error out early if the localpath does not exist

commit 2da03411eadc64df368a8fdceb4c61150b1acc3b
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Sep 29 15:59:34 2015 +0200

    builder: add opensuse images sources

commit b6acfae8a25acd9a584c2cbe73a8c036d3506c2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 22:44:24 2015 +0100

    haskell: Remove whitespace in Makefile.am.

commit 60243b9f5edee0c6f0899ea2c6271bbf8e3c281a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 19:02:33 2015 +0100

    Version 1.31.8.

commit 26c78abcd15c1e54e7f9723ffb9bb0e45935e807
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Sep 29 15:59:35 2015 +0200

    customize: get zypper to eat licenses and gpg keys
    
    Without these flags --install will most likely fail as the GPG key
    may no be imported in the guest image.

commit ad99c9828597eaec6f8bca5f4b17c6feafbcc6df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 12:16:17 2015 +0100

    copy-in/copy-out: Capture errors from tar subprocess (RHBZ#1267032).
    
    Modify the copy-in/copy-out APIs to use the new guestfs_int_cmd_pipe
    internal API.
    
    This new API allows us to capture the stderr from the tar subprocess
    if it fails, fixing RHBZ#1267032.  The user will now see errors like
    this:
    
    $ guestfish -N fs -m /dev/sda1 copy-in '/tmp/d/*' / : ll /
    libguestfs: error: tar subprocess failed: tar: *: Cannot stat: No such file or directory
    tar: Exiting with failure status due to previous errors

commit 11f65a8be79c69c17e015fe51fb5100484220273
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 12:10:36 2015 +0100

    cmd: New internal API for read/writing to a subprocess via a pipe.
    
    Roughly equivalent to popen(...,"r"|"w") the new internal API allows
    you to run a subprocess and either read its stdout, or write to its
    stdin.

commit 507fdae9063f96099ace1495669b3467d8d733f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 11:34:19 2015 +0100

    cmd: Move all the common processing code for running the child into a subfunction.
    
    Anything that doesn't involve pipes [parent-child communication] is
    moved into the run_child function, so we can reuse the same code when
    writing the new pipe APIs (see following commit).  Anything involving
    setting up pipes stays in the existing run_command function.
    
    This is just refactoring.

commit 0e5ee39f16895a1fb3fcfdca2c51998c512fb3e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 12:10:02 2015 +0100

    lib: Move read_whole_file function into separate library.
    
    Allow this useful function to be called from elsewhere.
    
    This commit is almost, but not completely refactoring.  I made a minor
    change to the function so that it \0-terminates the returned data,
    which is convenient for some callers.

commit b7040849a5ef2e4573f4e4b3e570f771a8ae5731
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 11:16:38 2015 +0100

    lib: Whitespace cleanups.

commit fd9c251e0cb1b893a6018d43ab31b7d4e6e07c70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 11:06:10 2015 +0100

    Revert "cmd: add a way to run (and wait) asynchronously commands"
    
    This reverts commit c5d3d198dcbceac928f430e2a9450ca58d6c0890.

commit 0e8838ab4c0b44da7077bc6cbe6e7365e70f5121
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 29 11:05:07 2015 +0100

    Revert "cmd: add the possibility to get a fd to the process stdin"
    
    This reverts commit db055262d4a859cf5d38fef235a117e1fd0b7aff.

commit a4f363fa8805c7bb7df6fbead98a24e4d2316e00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 25 20:24:21 2015 +0100

    v2v: Further information on using ovftool to create OVA files.
    
    https://github.com/libguestfs/libguestfs/commit/c9291a91b05a7cae02b09a7891f195d15e4672d9#commitcomment-13440884
    
    Thanks: GitHub user https://github.com/angystardust

commit 2dded7ffe38b9a3d54a9201fec648d7f162f17a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 25 13:41:27 2015 +0100

    v2v: Update /etc/sysconfig/kernel DEFAULTKERNEL (RHBZ#1176801).

commit 6354ff2b13cdfed47d9e1dcd3809b86286c15f52
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 25 10:36:36 2015 +0100

    v2v: Mention ovftool in the man page as a way to create OVA files.

commit f77b606873791412c40f4d5fd8db48fea09e9690
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 22 14:16:54 2015 +0100

    installcheck: Use 'make check -k' option.
    
    Run all the tests, even if some of them fail, so you can easily see
    the complete list of failures.  This still exits with an error if any
    test fails.

commit 701c795a2f76c49ab9b13d769432865a38d78720
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 20 15:26:15 2015 +0100

    Version 1.31.7.

commit f9b2a6757f6e35474897c0fd9433d0913e8631c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 18 17:31:21 2015 +0100

    Remove make-check-on-installed.pl from EXTRA_DIST.
    
    Removed in commit f2540d68e4e62c8cf90ac501b378a4e9a2ba89e5.

commit 90d476c8509d65bfdbedcacc28a83964df9d12eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 18 14:59:09 2015 +0100

    configure: Require OCaml and findlib if we need to run the generator.
    
    When building from git, you need OCaml to compile the generator to
    build the generated files.  Previously configure didn't detect that
    situation, resulting in failed builds.  This commit causes the
    configure script to error out if the generated files are not present
    and OCaml is not installed.
    
    Note that you can still build without OCaml, if you get the generated
    files from somewhere else.  The source tarballs distributed on the
    website contain the generated files.

commit 1bb3acde0a009eb583abe4c4be7301be0fc9302f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 18 14:10:00 2015 +0100

    v2v: documentation: Add link to import-to-ovirt.pl script.

commit f0206963fda8cde52c777770ab9f150e6c33b58e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 16 16:26:34 2015 +0100

    v2v: documentation: Add 'OTHER TOOLS' section.
    
    This currently contains just a link to rhevm-image-uploader.

commit 970b273cdc416b2defdd99fda835b1650e091329
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 13 13:45:32 2015 +0100

    python: Set program name to the true name instead of 'python'.
    
    As in commit e102bcf3cfcbcb2b47ad88334f03d5abf636f1e5 (for Perl), any
    Python program has the handle program name field set to 'python'.  Set
    it to the true name (derived from sys.argv[0]).

commit 385af02ea2f48178a3b96e0660e1d667d7b033ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 15 14:51:09 2015 +0100

    python: Allow bindings to be compiled with different version of libguestfs (RHBZ#1262983).
    
    When compiling the libguestfs bindings as a pip module, it's helpful
    if you can compile the bindings with a different version of libguestfs
    (eg. installed 1.28, pip module 1.30).
    
    That broke the previous assumption that we were always compiling
    against precisely the same version of libguestfs (which made sense
    because the python bindings are part of the libguestfs source tree).
    
    Python distutils has no way to check a C library to find out if
    functions are defined.  Therefore we have to rely on GUESTFS_HAVE_*
    macros from <guestfs.h>.

commit c19ae361bd481859566cc5d93f6cf8cb1ba680d0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 15 14:41:04 2015 +0100

    header: Define GUESTFS_HAVE_STRUCT_* for each struct defined in the header.

commit 9e920e39f3b3a6d41c88616b83eb25dc28e04c50
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 15 14:36:48 2015 +0100

    header: Define GUESTFS_HAVE_* for every function.
    
    Previously we only defined GUESTFS_HAVE_* macros for functions that
    were not deprecated, test or debug functions.  The reasoning for that
    is given in this commit message [note that 'LIBGUESTFS_HAVE_' is the
    old/deprecated macro]:
    
      commit 2d8fd7dacd77361bc385be42112289faafb5c60d
      Author: Richard Jones <rjones@redhat.com>
      Date:   Thu Sep 2 22:45:54 2010 +0100
    
        Define LIBGUESTFS_HAVE_<shortname> for C API functions.
    
        The actions each have a corresponding define, eg:
    
          #define LIBGUESTFS_HAVE_VGUUID 1
          extern char *guestfs_vguuid (guestfs_h *g, const char *vgname);
    
        However functions which are for testing, debugging or deprecated do
        not have the corresponding define.  Also a few functions are so
        basic (eg. guestfs_create) that there is no point defining a symbol
        for them.
    
    This wasn't in fact carried through very consistently, since when we
    replaced s/LIBGUESTFS_HAVE_/GUESTFS_HAVE_/, we kept the old
    LIBGUESTFS_HAVE_* macros, but defined them for every function.  Oops.
    
    This commit defines GUESTFS_HAVE_* for every function in <guestfs.h>,
    making it easier to write the Python language bindings (see following
    commits).

commit ae80c37e7d98302d94ab00995f28d68aad584ea1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 15 12:26:49 2015 +0100

    Add 'make installcheck' rule to test installed packages.
    
    Allow the tests to be run on the installed libguestfs.so library and
    on installed programs (but not installed language bindings, yet).
    
    To run the tests, you have to have a copy of the libguestfs source
    tree with exactly the same version as the installed libguestfs.  You
    have to build the libguestfs source tree.  Then you do:
    
      make installcheck
    
    I investigated making automake 'make installcheck' work, but it's
    basically broken (no surprise there).
    
    This is derived from the old 'make-check-on-installed.pl'
    script (which is also removed in this patch).

commit 085f37a2f91a86a500413c2cbf7e974eebeb7831
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 15 10:19:58 2015 +0200

    daemon: initrd: print return value from failing process
    
    If either zcat or cpio fails when spawned in initrd-list, pclose will
    return the actual return value of it, but reply_with_perror still uses
    errno regardless; thus, the reported error is:
    
      libguestfs: error: initrd_list: pclose: Success
    
    which is not much helpful.
    
    Instead, when pclose returns > 0, extract the actual return value of the
    subprocess, and print that. Thus now we get for example:
    
      libguestfs: error: initrd_list: pclose: command failed with return code 1

commit 3e97e90e07433132d2da13531e89448165906fbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 13 13:45:32 2015 +0100

    perl: Set program name to the true name instead of 'perl'.
    
    Currently any Perl program has the handle program name field set
    to 'perl'.  Set it to the true name (derived from $0).

commit 8e741b07b0bece50a9cf46d0111943418fd55282
Author: Shahar Lev <shahar@stratoscale.com>
Date:   Sat Sep 12 17:52:55 2015 +0300

    v2v: fix provides list whitespace trim
    
    Tabs should not be doubly-escaped in regexp.
    
    Signed-off-by: Shahar Lev <shahar@stratoscale.com>

commit c173e01ebe24dbd43e0a28a4f8e13603f37dd839
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 11 15:28:39 2015 +0100

    Version 1.31.6.

commit 4ef635ae452933084537e68ff3a2118d058f8b50
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 10 23:06:20 2015 +0100

    launch: libvirt: Better error when bridge / virbr0 doesn't exist (RHBZ#1262127).
    
    The current diagnostic is terrible.  This one tells the user how to
    diagnose and fix the problem.

commit 4c205a2ab37ff6626d0d3396fb243b67111c3d2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 10 12:07:31 2015 +0100

    v2v: Add --dcpath parameter to allow dcPath to be overridden (RHBZ#1256823).
    
    It's currently impossible to correctly predict the dcPath parameter
    from the data that libvirt gives us.  So allow the user to override
    --dcpath themselves.
    
    Eventually we will get better support in libvirt for this, and this
    option will no longer be needed:
    
      https://www.redhat.com/archives/libvir-list/2015-September/thread.html#00201
    
    This enhances commit 51bc573d0c4e78104a682e7c42d63d701aedd093
    and commit 20f1eb400b13be8733b6586769c4845b99a70722.

commit 4d18a60f791f3e86dc3fb352c8a03725a0fabb69
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 10 11:12:53 2015 +0200

    builder: fix prototype virt_builder_yajl_tree_parse
    
    Declare the prototype depending whether libyajl is available, and if it
    isn't add also the noreturn attribute.
    
    Fixes commit 87a42174f93c0f2621f3598c43327e5d071ade9a.

commit cb034d19178546c442c312d276640f6711d9fc3e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 9 16:17:59 2015 +0200

    inspect: try to use /etc/os-release on Linux guests
    
    If a Linux guest has /etc/os-release (mandatory for systemd, so all the
    recent Linux distributions have it), try to parse it for the distro, its
    version, and its product name.  If we cannot get all of them, the
    detection as done so far continues.
    
    Other than changes in the product_name string (which is free-form
    anyway, and already documented to not be parseable), there should be no
    regressions in the detected distro and version.

commit ab89c9dabe3e2e4947851516b597ba5298bed6e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 9 13:47:19 2015 +0100

    v2v: -o rhev, -o vdsm: Set DefaultDisplayType back to 1 (RHBZ#1260590).
    
    In commit c4bc8116d9d586085f96da2e5558c9b366e84925, the DefaultDisplayType
    was changed from 1 -> 2.  However this is in fact wrong.  See
    https://bugzilla.redhat.com/show_bug.cgi?id=1260590#c17 for details.
    
    This reverts the code back to what it was in
    commit 829e3fe7a6ed834939a7a79e453ab873d3328ae1.
    
    Thanks: Omer Frenkel

commit 2b07f872058fa1939855b212c72f5d5e1d956c5e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 9 13:12:16 2015 +0100

    v2v: Detect AVG Technologies as AV software (RHBZ#1261436).
    
    Thanks: Junqin Zhou

commit c5aba8afa9e197d66442a2352713ffeeb36223bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 9 13:11:42 2015 +0100

    v2v: Move anti-virus (AV) detection code to a separate module.
    
    This is just code refactoring of earlier
    commit 8e28d6b18860f8ff4e02489317749a723fa145ab.

commit e7de5eac4652afc2138b7efc5b281fd3c79ed184
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 9 13:19:57 2015 +0200

    builder: handle output filenames with ':'
    
    Use qemu_input_filename for the output file in the qemu-img convert
    invocation.
    
    See also commit 1709263613ac97cb1f37333e1a429c34f6b79f26 for
    virt-sparsify.

commit 0060d487240534ed1bcc394852bddf04dd523ebd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 9 10:50:01 2015 +0200

    builder: add noreturn for yajl functions without libyajl
    
    caml_invalid_argument will not return, and GCC warns (or errors out with
    -Werror) when the function is not marked as such.

commit c0679d6058c238dc5f5ed68ced54e021766f6512
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 8 19:07:23 2015 +0200

    customize: password: use SHA-512 on openSUSE >= 11.0
    
    openSUSE 11.0 has glibc 2.8, which supports the SHA-512 method.
    Fallback to an explicit MD5 for older versions.

commit 2ecf9ffe867ccedf3449c6e8d667f9ef7f1f7039
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 8 19:05:49 2015 +0200

    inspect: recognize the Frugalware distribution
    
    Just basic identification, name and version.

commit 9763fb766cf414e5f957d2820dbec9c0c43fb1a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 8 14:20:28 2015 +0100

    Version 1.31.5.

commit 47829083133873cdb7d7a62ad6c64cf39ee5d994
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 8 11:52:44 2015 +0200

    build: improve maintainer-check-extra-dist target
    
    Filter out from the git ls-files output the files we don't care they
    appeared (gnulib and intltools stuff), and use comm to only show the
    remaining added files (i.e. files not being distributed).
    
    The output of comm is redirected to file and then printed, so we can
    check it is empty (failing the target if not).

commit 70eb22850860878c9a02fe04e7d6b7a9e81aa965
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Sep 8 09:40:22 2015 +0200

    Allow curl to follow redirects.
    
    download.opensuse.org uses redirects to point to the relevant mirror.
    Adding -L --max-redirs 5 to curl options will get us the requested
    images.

commit 597ab321772507628efe9cad32c91241ad0b7121
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 8 11:51:00 2015 +0200

    builder: distribute simplestreams test files
    
    Fixes commit b024aef6fb2d7219782c6cd00e6c703e161f839d.

commit 91b5ec79fb025efdfb786fa6dc762d61abb722a9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 8 11:48:25 2015 +0200

    builder: replace colons in simplestreams test files
    
    Colons won't be handled by make at all, so replace them with underscore
    to be able to distribute them.

commit 5f2d3d06f383ca35a1f629fc4ef1f12684d03f5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 8 09:11:36 2015 +0100

    v2v: -o rhev, -o vdsm: Use correct DefaultDisplayType for qxl (RHBZ#1260590).
    
    This fixes commit 829e3fe7a6ed834939a7a79e453ab873d3328ae1.

commit 03b83e83b7229dfc3c8fd60c54c24843fb041e36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 7 22:01:34 2015 +0100

    customize: Create .ssh as 0700 and .ssh/authorized_keys as 0600 (RHBZ#1260778).
    
    Both ssh-copy-id and ssh create .ssh as 0700.  ssh-copy-id creates
    .ssh/authorized_keys as 0600.
    
    Thanks: Ryan Sawhill for finding the bug.

commit a0a5e5aff6fdd9681266231c224f6c989d9359ea
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 7 14:30:35 2015 +0200

    builder: support Simple Streams v1.0 as index metadata
    
    Add a new "simplestreams" repository type, and a simple parser for
    fetching and reading the JSON indexes of the Simple Streams v1.0
    format.
    
    Read only datatype=image-downloads contents, and only the latest
    versions of each content available as disk image (disk.img or
    disk1.img).
    
    Add a simple test, using the "released" images from the CirrOS project.

commit 4f9bff0ad84b18c62d296fc0460270a07879b574
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 7 14:29:47 2015 +0200

    build: expose HAVE_YAJL to automake
    
    This way it can be used in automake conditionals.

commit 52bcab8ac700770b3e679ede6d25d3c7a3c82460
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 13 10:21:27 2015 +0200

    builder: add simple libyajl binding
    
    Only yajl_val and yajl_tree_parse are exposed for now.

commit 77a765921dbab8f4dcc8cad31808e9bf5a58dbf5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 11 11:04:00 2015 +0200

    builder: add non-int revisions
    
    Add support for non-integer revisions of entries, comparing them as
    integer when possible.

commit 8fc242d6de8ff6f61b98af449a2783c451c41b18
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 7 17:18:41 2015 +0100

    v2v: windows: Warn if Group Policy or AV software may result in 7B boot failure (RHBZ#1260689).
    
    Check if the Windows guest has Group Policy Objects installed, or one
    of several popular pieces of anti-virus software.  If we are
    installing a virtio block driver, then experience has shown this may
    cause a 7B boot failure.
    
    Print a warning when this combination happens.
    
    The warnings look like this:
    
    [  19.9] Converting Windows Server 2008 R2 Enterprise to run on KVM
    virt-v2v: warning: this guest has Windows Group Policy Objects (GPO) and a
    new virtio block device driver was installed.  In some circumstances, Group
    Policy may prevent new drivers from working (resulting in a 7B boot error).
     If this happens, try disabling Group Policy before doing the conversion.
    virt-v2v: warning: this guest has Anti-Virus (AV) software and a new virtio
    block device driver was installed.  In some circumstances, AV may prevent
    new drivers from working (resulting in a 7B boot error).  If this happens,
    try disabling AV before doing the conversion.
    virt-v2v: This guest has virtio drivers installed.

commit 5ce6edb44e35c97ed56847f039189b29e14102c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 7 17:16:24 2015 +0100

    v2v: windows: Refactor Xen uninstaller detection code.
    
    No change, just refactoring.

commit ba490f81d0029d59981cd9f8575baf9ce302c31d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 7 16:53:17 2015 +0100

    dib: Move 'isdigit' utility function to common code.
    
    No change, just simple refactoring.

commit df23cb4ff45de5b1fec188d4ed4b0cc7a4cb8d45
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 7 15:00:01 2015 +0100

    v2v: -o rhev, -o vdsm: Add sound card to OVF output.
    
    For the two sound card types that RHEV can emulate, add
    them to the output.

commit bc8b8419ee5922ba5b1c702d3d22ccad2495d39d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 7 13:30:04 2015 +0100

    v2v: -o rhev, -o vdsm: Review XML based on oVirt description of format.
    
    After reviewing http://www.ovirt.org/images/8/86/Ovirt_ovf_format.odt
    this commit makes some small revisions to the OVF that we generate.
    
    Possible fix for https://bugzilla.redhat.com/show_bug.cgi?id=1260590

commit 8d8d184bfb6ab35456eda02ed26774f29e0c1382
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 7 12:10:09 2015 +0100

    v2v: Error if certain options appear twice on the command line.
    
    Change the handling of -ic, -if, -oc, -of, -on, -os, --password-file,
    --vdsm-vm-uuid, --vdsm-ovf-output, --vmtype options, so that if any
    appear multiple times on the command line we error out:
    
    $ virt-v2v -i disk /tmp/centos-6.img -o null -of qcow2 -of raw
    virt-v2v: error: -of option used more than once on the command line
    
    Thanks: Juquin Zhou for finding the bug.

commit 4d9f595041348e97cfe95ee3c46209b9c1c10473
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 3 21:49:56 2015 +0100

    Version 1.31.4.

commit 84e7778598945c3330d7fbe27838c2e347061281
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 3 12:20:10 2015 +0100

    v2v: test-harness: Allow test boot at fixed dates in the past.
    
    Turns out that some of the Windows guests in the test suite try to
    reactivate if the date is more than some time delta (maybe 1 year?)
    after the previous activation.  Just disabling the network wasn't
    enough to prevent this.
    
    qemu allows us to boot guests with the clock set to a particular date
    in the past, and libvirt exposes this (albeit very clumsily):
    
    https://docs.fedoraproject.org/en-US/Fedora/18/html/Virtualization_Administration_Guide/sect-Virtualization-Tips_and_tricks-Libvirt_Managed_Timers.html
    
    Allow guests to be booted with the date set to a particular past date,
    by setting the test_plan.guest_clock field.
    
    This required adding some more libxml2 bindings.

commit 89a11377660288e766403c6a8f198d788efa7c7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 3 16:12:22 2015 +0100

    p2v: Clear previous version and driver information when testing connection (RHBZ#1227609).
    
    When calling test_connection to test the connection to a conversion
    server, we also query for the remote server's version and driver
    information (using 'virt-v2v --version' and
    'virt-v2v --machine-readable').
    
    However we didn't clear the existing information from previous runs.
    
    One consequence of this was that if you used the back button in the
    GUI, the list of output drivers would be repopulated two or more
    times.  https://bugzilla.redhat.com/show_bug.cgi?id=1227609
    
    Another is that connecting to a different server could confuse
    test_connection into thinking the connection was successful (because
    of data from the previous run) when in fact it was not.
    
    Thanks: Tingting Zheng for finding the original bug.

commit bec26f87b7260e0bcdbf910c22539fcd0daf3bf4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 3 16:06:59 2015 +0100

    p2v: Use gtk_list_store_clear instead of loop.
    
    The model implements GtkListStore, so an easier way to clear the list
    is simply to call the clear method.

commit 69a6e8c9f21d95199799571fdacd2a963c3fd142
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 3 15:56:19 2015 +0100

    p2v: Use GtkComboBoxText instead of deprecated gtk_combo_box_new_text.
    
    Requires Gtk >= 2.24, which is the same version that RHEL 6 has.

commit aef689528ad09818ba08438be8b1c2eab9334416
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 1 18:03:12 2015 +0200

    get-kernel: respect -q
    
    Now that virt-get-kernel has -q/--quiet, support it by printing the
    download messages only if not specified.

commit 57ef7aa1c4fa226bd582facee4065e6f3b128493
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 1 17:47:06 2015 +0200

    get-kernel: refactor list and download code
    
    Split in an own function the code dong the mounting, the inspection of
    the kernel files, and the downloading, including a per-OS function for
    the actual kernel files.  This gives few advantages:
    - the download phease is not repeated for all the files to fetch
    - it is easier to eventually support multi-root disk images
    - it is possible to support OSes different than Linux; virt-get-kernel
      now will just report the unsupported OS, instead of a generic
      "no kernel found" message
    
    This is mostly code refactoring, with (on Linux) no actual behaviour
    change.

commit c927c6fa382b1524a4fa15f5d00b2ea928b3f00f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 1 16:55:13 2015 +0200

    get-kernel: split command line handling in own function
    
    Simple refactoring, no actual behaviour changes.

commit 2f5b8a0ace1ed983898a541b44cead1045c41329
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 1 16:28:03 2015 +0200

    builder, dib, get-kernel: document new -q/--quiet options
    
    Provided as common options for all the OCaml-based tools.

commit 7358e8c6658839b54d29f8d428a595e9fd0c3ec4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 1 16:07:55 2015 +0200

    mllib: move -q/--quiet as common option
    
    Most of the OCaml-based tools had it already, except from virt-dib and
    virt-get-kernel.

commit bfbc3830e1bf3fde7bdeba1a31fd96cad88bcf75
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 1 15:40:25 2015 +0200

    mllib: make few command line options stuff private
    
    Make print_version_and_exit, long_options, display_short_options, and
    display_long_options private, as set_standard_options now takes care of
    handling the job for the common command line options.

commit 689b28df6497a230542f034ae6f8881e1a4f4f85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 1 14:56:10 2015 +0100

    v2v: Fix handling of extra slashes in dcPath calculation (RHBZ#1258342).
    
    This updates commit 20f1eb400b13be8733b6586769c4845b99a70722.
    
    Thanks: Tingting Zheng

commit 5adc3065ff7d23138fdaf0e5af71094d4733ad1f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 31 18:34:37 2015 +0200

    mllib: set --debug-gc as common option
    
    Move --debug-gc as common option for all the OCaml-based tools, even a
    couple of them which didn't have it previously.
    
    As implementation note, make set_debug_gc private to
    set_standard_options, as it needed to be moved otherwise, and it is no
    more required as public function.

commit 8ab3532390f6056b6347e73be74b64898b837b7a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 31 18:25:48 2015 +0200

    mllib: add and use set_standard_options
    
    Introduce a new common helper to add the common options for libguestfs
    tools (short/long options, version, verbose, trace), and sort them.
    All the OCaml-based tools had these options already, so there are no
    functional changes in the interface they provide.
    
    The only difference is that now the options are always sorted, while
    some tools didn't had them like that previously: because of this, a
    couple of ditto markers (as descriptions) don't match what's above them
    anymore, and thus their full description is put instead.

commit 968d5a0955a6893b83319836480ef78e64309453
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 31 11:17:45 2015 +0200

    customize: fix running commands on the same architecture
    
    Wrap the command around an heredoc only if setarch needs to be used;
    otherwise the heredoc will not be run at all.
    
    Fix commit d875346ad441d4762455ea1b41d57ad6174d9b63.

commit 586c9d9bdf479243535e89619720654ec41bc2bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 28 19:34:15 2015 +0100

    Version 1.31.3.

commit de6a6cf4a0d02516fca1016149a7a05d0d17e215
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 28 19:32:15 2015 +0100

    p2v: Add test-virt-p2v-pxe.sshd_config.in to EXTRA_DIST.
    
    Fixes commit afe3c77014bf54fbbfebc4ed43a58b9f85cd8622.

commit b9e56a0177687cfbfded7f8660ebd9b98875e9f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 27 17:14:49 2015 +0100

    customize: Use setarch when running commands on i686 guest (RHBZ#1256405).
    
    When running (eg) dnf on a 32 bit i686 guest when the host is 64 bit
    x86_64, dnf believes it is running on a 64 bit machine and so tries to
    install x86_64 packages.  We can 'trick' dnf into believing it's a 32
    bit machine using the setarch program.
    
    $ virt-builder fedora-22 --arch i686 --install 'gperf'
    ...
    [  27.4] Installing packages: gperf
    ...
    Running transaction test
    Error: Transaction check error:
      package libgcc-5.1.1-4.fc22.x86_64 is intended for a different architecture
    ...
    
    The use of a heredoc to solve quoting issues comes from:
    http://stackoverflow.com/a/3435460
    
    Thanks: Jan Sedlák for finding the solution.

commit 75ffe921a07f672e3cb9024e2a8b7884188518d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 28 13:57:37 2015 +0100

    v2v: -i libvirtxml: Map empty network or bridge name to default (RHBZ#1257895).
    
    As with the -i ova driver, if an unnamed network is found, map it to
    "eth0", "eth1" etc.

commit 69a5dcf40b752f48a1719f7feef83d014f119494
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 28 13:53:24 2015 +0100

    v2v: Convert xpath_to_* to use xpath convenience functions.
    
    In -i libvirtxml, -i ova and -o libvirt drivers, replace the ad hoc
    xpath_to_* functions with use of the new xpath convenience functions
    introduced in the previous commit.
    
    This is not entirely refactoring because I fixed a few bugs found by
    type safety.

commit 8f5056998264358ae64d6e2b939699b78af05621
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 28 13:52:49 2015 +0100

    v2v: Add convenience functions for parsing xpath expressions.

commit caf758f1c49e40cf0fb5e1ff6e1bb5611abf4d71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 28 12:20:45 2015 +0100

    v2v: vcenter: Calculate dcPath correctly (RHBZ#1256823).
    
    Previously given a path such as:
    
      vpx://vcenter/Folder/Datacenter/esxi
    
    we calculated dcPath=Folder.  However this is obviously wrong.  We
    should chop the path at the final (esxi) element to give
    dcPath=Folder/Datacenter.

commit cea8f783c14ff81028a981563a4b36dd162788fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 28 12:05:12 2015 +0100

    v2v: vcenter: Change function get_datacenter -> get_dcPath.
    
    In vCenter, the datacenter is identified by a path, and the parameter
    used for this is called 'dcPath'.  Rename the function to avoid any
    confusion about what we're getting here.
    
    This is just renaming function/variable names and has no other effect.

commit 4b40e14634e658f9460efc7ff0e4799f0a3c364e
Author: Roman Kagan <rkagan@virtuozzo.com>
Date:   Fri Aug 28 17:56:04 2015 +0300

    handle --debug-gc universally via at_exit hook
    
    Several tools handle --debug-gc command-line option, by explicitly
    forcing GC on every exit path.  This is tedious and prone to forgetting
    some of the exit paths.
    
    Instead, add a generic handler for --debug-gc, which installs an at_exit
    hook to do the GC consistency check, and which can be called right in
    the command-line parser.  Also adjust all users of --debug-gc to use
    that handler.
    
    Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>

commit ffb8ccead190b422403bcc383d312ceff7516393
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 24 16:05:05 2015 +0100

    p2v: Add a test for the PXE boot path (RHBZ#1256222).
    
    Build the P2V disk image and boot it.  We don't actually use PXE
    specifically, but we do test the whole PXE / kernel command line path
    much more thoroughly.
    
    This is a 'check-slow' test because it takes ages to run.

commit 9e9f6bdecedb7d07b2979babe313a1bdac86cff6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 25 10:56:02 2015 +0100

    p2v: Add SSH Identity URL.
    
    Allow SSH identities (ie. secret keys) to be used for authentication
    instead of passwords.

commit 07bbb1f05feca5d4bad94907b3561c90a5c0328b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 25 09:17:00 2015 +0100

    Revert "p2v: Add tip about the root password of the virt-v2v conversion server appliance."
    
    This reverts commit 35efaf820870e7498aacc5d4aaa8c952c635b0e0.

commit 6610faaca0e1db92652d9fad5e35d6ee56175651
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 24 14:56:30 2015 +0100

    p2v: Wait for network to come online before testing connection (RHBZ#1256222).
    
    When using the virt-p2v ISO in command line mode, we did not wait for
    the network to come online before starting virt-p2v.  Therefore
    virt-p2v could exit with an error when testing the ssh connection (or
    on the other hand, it might work randomly).  If the user logs in and
    runs 'launch-virt-p2v' by hand, then it would usually work because the
    network had been brought online in the meantime.
    
    Fix this by waiting for NetworkManager to bring the connection online
    before calling test_connection().  Note that the obvious way to fix
    this (changing the systemd service to wait for network-online.target)
    does *not* work - I added a comment to the service about this.
    
    Thanks: Tingting Zheng

commit c91ee580b4b11c0cbe315fd9a04926de44db3e3d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 25 17:39:26 2015 +0200

    osinfo: add altlinux and mageia distributions

commit 78f4cabaab46d136eadba77f9272cc212657578c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 25 16:17:59 2015 +0200

    inspect: recognize the ALT Linux distribution
    
    Check its presence ahead of /etc/redhat-release, as the distro provides
    it and thus previously it was recognized as "redhat-based".

commit db25cf33f35bee95a508b1e2b316b8fdee3ee969
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 24 18:25:10 2015 +0200

    v2v: ignore missing kernels from grub (RHBZ#1230412)
    
    Raise a warning for each kernel specified in grub which does not
    actually exist, keep going on with the conversion using the remaining
    (existing) kernels.

commit c1f9f21656ec960c3752c84457727e1c5e90015f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 24 18:11:18 2015 +0200

    ocaml: Add handling for errno ENOENT.

commit 5d52506185dfe636aa978dc35940baf72bc38a0a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 24 17:57:10 2015 +0200

    ocaml: dynamically generate the content of Guestfs.Errno
    
    Put in a list the errnos to expose, filling the content of the
    Guestfs.Errno submodule from that.
    Also, generate a separate guestfs-c-errnos.c with the implementations of
    the functions returning the errno codes.
    
    Only code motion and refactoring, no actual changes on the content of
    the ocaml Guestfs module.

commit c0afa83da67fddafaee6cff76cef28662d5c7c6c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 20 17:25:34 2015 +0200

    configure: look for "java" as directory for Java in lib64 too
    
    On 64-bit openSUSE versions, /usr/lib64/jvm/java provides the symlink to
    the default Java version.

commit 660eaa3cda73c790e8cd13dbc2def1c96631c697
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 19 14:46:39 2015 +0200

    appliance: explicitly add libyajl on Mageia
    
    It seems yajl was bringing it, but seems not on Mageia 5.  Leave yajl
    for older versions.

commit cb250d1dc3769cfcb363cf3279f41f8ca33b57fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 22:54:30 2015 +0100

    FAQ: the -> and in previous commit.
    
    This fixes commit 571fca8e71901bb3f1e68d51defb29fac920ffbb.

commit 04049f80dfdf70dc8b76942b87d3f78546e3aba0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 22:51:43 2015 +0100

    FAQ: Further improve debugging section.

commit a250d118071fc006dddfd454289750c67a15ea0e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 16:46:08 2015 +0100

    Version 1.31.2.

commit d868a4d1fea975c4fb361e13ae778d3265abdddf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 16:45:30 2015 +0100

    builder/website: Fix EXTRA_DIST.
    
    This fixes commit 190a9f4534eadc720494cfecd758f9dc80026c95 and
    commit 864ca489ac7bddbc9043dfa52d61dc1d816f1f61.

commit a6f66f661257c062091db2019700faf0821456b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 10:01:47 2015 -0400

    p2v: Modify some partial match regexps to work with pcre 7.8.
    
    pcre < 8 has limitations on the types of partial matching
    possible.  As noted in the pcrepartial(3) man page, these can
    be worked around by adding non-capturing parentheses around
    various subexpressions, as I have done here.

commit c5557c27625e73d096bb8044b2e18c1efac23ab0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 09:43:07 2015 -0400

    p2v: For pcre < 8 (RHEL 6), abort if partial matching cannot be used on a regexp.

commit de836b5be29abe01ec5e65f53c07b82eeeffca58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 14:13:49 2015 +0100

    p2v: Print an error if gtk_init_check fails.
    
    Apparently gtk_init_check doesn't (always?) print an error message
    when it returns false, so virt-p2v just exits without any message.
    
    This was observed on RHEL 6 when $DISPLAY was not set.

commit 6d48790f6451eff760a48d0c9cef560c3956cea2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 08:40:29 2015 -0400

    p2v: Call g_thread_init with old glib2 as used by RHEL 6.

commit 3fc903dee3486fd6cc2175971eada6c49eaffb2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 08:19:17 2015 -0400

    v2v: Help RHEL 6 OCaml to determine type of class.
    
    File input_libvirt_other.ml, line 1, characters 0-1:
    Error: The implementation input_libvirt_other.ml
           does not match the interface input_libvirt_other.cmi:
           Class declarations do not match:
             class virtual input_libvirt :
               'a ->
               string option ->
               string ->
               object
                 method adjust_overlay_parameters : Types.overlay -> unit
                 method as_options : string
                 method virtual source : unit -> Types.source
               end
           does not match
             class virtual input_libvirt :
               string option ->
               string option ->
               string ->
               object
                 method adjust_overlay_parameters : Types.overlay -> unit
                 method as_options : string
                 method virtual source : unit -> Types.source
               end
           A parameter has type 'a but is expected to have type string option

commit 7c328a5f2b3347e0e035d737b669b3c3a511f640
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 08:18:13 2015 -0400

    v2v: Hide StringMap functions we're not actually using.
    
    In RHEL 6 OCaml, some of these functions were not part of the Map
    class, giving an error.  Hide the ones we aren't using.

commit f59bc210cad787b6a3a60958ddfc108a9e89ae9e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 08:16:50 2015 -0400

    handle: Move #pragma out of functions.
    
    RHEL 6 gcc did not support #pragma within functions.

commit 7a528cbb2d5958d4c88448ed3ddf5c33c6b29a9e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 13 08:15:07 2015 -0400

    p2v: Add replacement for xmlBufferDetach function not available in RHEL 6.

commit 5e252c8fe67480e66fb90d235e4fdff941a5bd9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 12 16:47:22 2015 +0100

    v2v: -oa preallocated for qcow2 output now fully allocates the file (RHBZ#1251909).
    
    When the output format is qcow2 and -oa preallocated is used,
    previously it would only allocate the metadata.  That was a regression
    over previous behaviour of virt-v2v 0.9.  Change it so it allocates
    the full file size in this case.

commit adfd6f96ceee20bc137f2ce12be7a3daf7db727c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 12 16:34:16 2015 +0100

    disk-create: Allow preallocation off/metadata/full.
    
    For raw, this allows "off" as a synonym for "sparse" (to make it
    consistent with qcow2).
    
    For qcow2, this allows "sparse" as a synonym for "off".
    
    It also adds qcow2 "full" preallocation, which is actually mapped to
    the qemu option "falloc" (see arguments about this on the qemu-devel
    mailing list, which we lost).
    
    This also updates the test.

commit 75d359c03261f72c49f95a241042b82eb4d5ea7d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 11 15:35:01 2015 +0200

    builder: normalize architectures
    
    Normalize the target architecture, and also each architecture when
    checking for a compatible image.
    
    This sort of reverts the effects of
    commit 8864c47b94cf44ac2d0d8d4b5019073ad1da121b, but at least it is
    possible to build e.g. Debian-based amd64 images on any x86_64 system
    without being considered as foreign architecture.

commit 312f20f07812c2c4d427d858a8454f57ed0c4276
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 11 15:32:05 2015 +0200

    mllib: add normalize_arch helper
    
    Small helper to normalize an architecture string, so it is easier to
    compare them and check for compatibilities.
    
    Make use of it in guest_arch_compatible, simplifying it.

commit 8ac70b93ba318bdcf40bf016ca1a44a08a9fc674
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 12 18:21:08 2015 +0200

    dib: expand doc on external dependencies for appliance

commit 20d48f4012c2d6ac0ca961d7ccd2c13877dc986a
Author: John Eckersberg <jeckersb@redhat.com>
Date:   Wed Aug 12 11:14:21 2015 -0400

    dib: handle unsetting functions in environment
    
    If a function name, with its trailing parentheses, is in the
    environment , trying to unset it will error out with a message of "not
    a valid identifier".  Handle this as a special case, and unset it with
    the -f option which can handle the parentheses in the supplied
    identifier.

commit c87274486f5d5a501233483723b1988d5495a170
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 12 12:45:25 2015 +0200

    inspect: support the APK package manager and its format
    
    Associate the Alpine Linux distribution with it.

commit 55bf886537c5643e5fcc92024a052cd425403d1b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 12 12:10:26 2015 +0200

    inspect: recognize the Alpine Linux distribution
    
    Just basic identification, name and version.

commit b43b0a5b8d309222178a22b6d7cb5f91026564f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 12 14:00:09 2015 +0100

    builder: Add script for building RHEL for aarch64.

commit ea3c278301760b9db4332419af52de6003ce097c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 12 10:42:57 2015 +0100

    customize: firstboot: Place firstboot.service file in systemd unit directory (RHBZ#1250955).
    
    It turns out that -- some of the time -- systemd ignores unit files
    which are not placed in one of the official unit directories.  This
    caused the service to be timed out and killed when the systemd daemon
    was reloaded, as could happen for long-running package installs at
    first boot.
    
    Thanks: Marius Vollmer for diagnosing the problem and finding the
    solution.

commit 0f99498d69b8ce7313076e50839348c778b0294f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 11 16:27:49 2015 +0100

    p2v: Add mesa-dri-drivers.
    
    Requires on Fedora 22 to work around:
    https://bugzilla.redhat.com/show_bug.cgi?id=1242195

commit 80317b09635f41ec6e4651968063d5394db34391
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 11 15:49:28 2015 +0100

    p2v: Add tar to the kickstart.
    
    Work around https://bugzilla.redhat.com/show_bug.cgi?id=1182362

commit a0481a28f1f14a7db52086518fc4ac237b925ae6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 11 15:38:07 2015 +0100

    p2v: Add a note about building a 32- or 64-bit virt-p2v ISO.

commit 83f0ebbdd65f0277dc515e9968bef4d24f6cfce2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 11 13:34:55 2015 +0100

    builder: Add script for building Fedora i686 (32 bit) images.

commit f2c55d12fe4e6fee4d75a3cee72e03ae43552003
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 11 13:34:27 2015 +0100

    builder: fedora: Use os variant fedora22.

commit 6cb4ff7ee58cfb86147ebd5560a073a591099021
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 10 13:22:27 2015 +0200

    builder: improve "converting" message on unknown format
    
    If the format of the disk image of the template is not specified in the
    index, virt-builder would print
      Converting auto to qcow2
    when asking to generate a qcow2 image.  Instead, in this case print only
    the destination format, like
      Converting to qcow2

commit a8a6df7f0b25fe2952a7a93a32f53928263aaa7c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 6 17:29:56 2015 +0100

    v2v: vCenter: Suggest using %20 to escape spaces in Datacenter paths (RHBZ#1250715).

commit e065c59ff16b0c558fe915b1aebec8c41f7d3f94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 6 16:41:09 2015 +0100

    docs: Document CVE-2015-5745 qemu vulnerability.

commit e60d59007993942e159fc67b1b479272fd1cb6cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 6 15:02:02 2015 +0100

    update-bugs.sh: Remove comment.

commit 22a93739886a2b2bad5fa69cf8a3a83f1608fa26
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 6 15:15:40 2015 +0200

    get-kernel: remove extra progname from error messages
    
    error() prints it already

commit 5ac7f61418f5db519ecb572a6e29db1e7dfa7526
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 4 22:25:26 2015 +0100

    customize: Make dnf upgrade to the latest versions of packages.
    
    I discovered that 'dnf upgrade' doesn't actually upgrade to the latest
    versions of packages unless you also supply the '--best' flag.
    
    This also changes update -> upgrade, since apparently 'dnf update'
    is deprecated.

commit d52f64afc71180b7bcaa13e3696d4966b3cc776f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 4 19:54:02 2015 +0100

    automake: Admit defeat and use 'subdir-objects'.
    
    Because this 'feature' is broken (since 2013):
    
      https://debbugs.gnu.org/cgi/bugreport.cgi?bug=13928
    
    we have to replace all instances of $(top_srcdir) in *_SOURCES lines
    with a relative path.  According to what I read, this shouldn't break
    split builds, but I didn't test it.
    
    The only things automake moans about now are:
    
    * Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/ at /usr/bin/automake line 3936.
    
      - This is another bug in automake
    
    * autoreconf: configure.ac: AM_GNU_GETTEXT is used, but not AM_GNU_GETTEXT_VERSION
    
      - This is a feature, not a bug.

commit 2ee692312b20c80bfa6fcd8a9f7dbbd258874710
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 5 12:55:42 2015 +0100

    p2v: Display full package version (including extra string) in p2v.ks file.

commit 71200831a4c6624a479611dd1009a77ea92a9e64
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 5 12:39:58 2015 +0100

    p2v: Allow 'virt-p2v-make-kickstart rhel-7.1' to set up RHEL repos.

commit 90703d8310976fb76640c26e4ebde5ef5a25dceb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 5 12:39:10 2015 +0100

    p2v: Disable ssh service in the ISO (RHBZ#1248678).
    
    We don't want people to be able to ssh into the p2v ISO while it is
    running, with a simple, known root password.

commit e84152c3cdbb097a31b915af5952d5052711a6ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 2 17:33:07 2015 +0100

    sysprep: Allow test-virt-sysprep.sh to be skipped.
    
    It fails in Fedora Rawhide because LVM is broken (RHBZ#1237136).

commit df36766fa9fe2e70e005bd4a5d388b0d080c7444
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 31 08:29:18 2015 +0100

    dib: Fix typo in documentation.
    
    Thanks: Yuri Chornoivan

commit f9b7da5012463eb11a6db81b553c8780638a1353
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 30 14:50:11 2015 +0100

    Version 1.31.1.

commit 0e32cbffc3974e19a91c797a5850c0dcb24cdddb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 30 14:45:21 2015 +0100

    README: Add the dnf builddep command (for Fedora >= 22).

commit e5f54ee6eb19a50efc758b727bd487e1bf300484
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Wed Jul 29 10:35:00 2015 +0200

    appliance init: find NIC name for dhcpcd
    
    dhcpcd requires an interface name as parameter to work. We are now
    getting it from /proc/sys/net/ipv4/conf/ folder children. dhclient
    on Debian also has the problem, thus use the guessed interface name
    for it too.

commit 900af4de1f483dfe966abb26d981c3da697ec721
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 29 13:47:08 2015 +0200

    sysprep: machine_id: handle /var/lib/dbus/machine-id
    
    Another machine-id file, used by D-Bus.

commit dd8dbdbce26b37e1feefecda6020ea128a527f65
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 29 13:36:23 2015 +0200

    sysprep: machine_id: simplify implementation
    
    Instead of rm + touch, just truncate the file if existing.
    In case there was no file previously, now nothing is created, as most
    probably the system was fine even without it.
    
    Also, turn the single path into a list, so more machine-id files can be
    handled at once.

commit 8d0e04074af60c4c8470685c7e1e0fde4149cabe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 27 13:29:40 2015 +0100

    customize: Combine separate -a and -d option synopses (RHBZ#1246882)

commit 230b5c6df261be04d05cf16a0a2ac790f1c2cd30
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 28 10:57:11 2015 +0200

    builder: add Sigchecker.verify_and_remove_signature
    
    New helper to remove the signature from a file, returning a temporary
    file without the signature.

commit d37afac3b68bdc43f9d701ab94be526fe606f794
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 28 10:55:23 2015 +0200

    builder: expose Sigchecker.verifying_signatures
    
    Useful to know whether a Sigchecker instance is verifying signatures,
    hence it is possible to decide whether download signed content or not.

commit bce85ddeb88dc9bc2c0bd74c0023120050054965
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 27 18:45:03 2015 +0200

    builder: split Index_parser.index in an own module
    
    Move the index and entry definitions in an own Index module, together
    with the (previously internal to Index_parser) print_entry debugging
    function.

commit 59cdaf67e69af70d4c95becf7a8925ec6877a17d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 27 18:15:42 2015 +0200

    builder: allow signatures from subkeys
    
    When importing a key, read the list of the valid subkeys of it, and use
    it to check whether a signature was done by one of them.
    This allows index provides to sign them using a subkey instead of the
    main key.

commit 0e74372a4d7c93fc5aa0363b5f1c895f1feddfca
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 27 10:55:26 2015 +0200

    builder: internally use a list of checksums for indexes
    
    Extend Index_parser.entry to hold a list of checksums to validate, and
    validate all of them.
    
    This does change nothing currently, as only sha512 is read, while still
    allowing us to fetch more checksums if needed.

commit cf14653310729accd1284a6199e8a5c8c7953a72
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 27 10:31:22 2015 +0200

    builder: add SHA256 support in Checksums

commit 0eb96cc58e888c0ee2fb7111ea0da0a1ee0a0b9b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 27 10:26:13 2015 +0200

    builder: create and use a new Checksums module
    
    Introduce a new Checksums module to handle the check of checksums,
    moving part of the Sigchecker code to it.
    
    Adapt the rest of virt-builder to this new module.

commit 6381a9472a0b2b055bee2ebda3d1592584521a69
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 22 18:25:47 2015 +0200

    builder: add format=FMT in repository .conf files
    
    First step in allow different formats for indexes of images, aside the
    current one.
    
    The only accepted value is "native".

commit d8813900ff506b46dd250bd22a3831b660173a8c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 24 16:40:11 2015 +0200

    customize: password: improve unknown default crypto message
    
    When warning that there is no known default password encryption for the
    current guest, print also its minor version (help debugging unsupported
    guests).
    
    Also, fix wrapping (and indentation) of the message.

commit 6acb990d1f3538ebf5e1031c30a2c30cf0d47513
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 24 15:13:00 2015 +0200

    customize: random_seed: add CirrOS location
    
    CirrOS has its random-seed file in /etc.

commit 055ac99cf544808fd0268511cd33a09ced4f9ac5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 23 16:41:06 2015 +0100

    appliance: Exclude /usr/lib/modules as well as /lib/modules.
    
    It normally makes no difference to the final size of the appliance,
    because 'supermin --build' will copy back the host kernel modules.

commit 1973765332e64ea2a7ccbcea53a86cb04fc96dfe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 23 15:10:00 2015 +0100

    appliance: exclude /lib/firmware
    
    Brings the size of the appliance down to 95 MB [xz-compressed], which
    is the same as for libguestfs 1.28.

commit 15f936960fa577c5e23654bd5130f95f785ee489
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 23 14:33:52 2015 +0100

    appliance: exclude /usr/share/fonts and /usr/share/icons.
    
    I also sorted the list.
    
    Between libguestfs 1.28 and 1.30, the appliance grew from 95MB to 213MB.
    
    Using guestmount and filelight (see link below) I could see that the
    main contributor was these two directories, which should not be
    necessary.
    
    With this change, the size goes down to 119MB.
    
    See also:
    https://rwmj.wordpress.com/2015/07/23/why-has-the-libguestfs-appliance-grown-by-118-mb/

commit 58f958f3875a6086f5e1e9cec6fc157688025b68
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 21 18:03:22 2015 +0200

    actions: tar_in: add xattrs, selinux, and acls optargs
    
    Add additional arguments for tar, so extended attributes and/or SELinux
    contexts and/or POSIX ACLs can be restored from input tars.

commit 4dd6dbe65c30e5b340a6529282e1a67b3ba3da96
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 21 17:41:00 2015 +0200

    actions: tar_out: add xattrs, selinux, and acl optargs
    
    Add additional arguments for tar, so extended attributes and/or SELinux
    contexts and/or POSIX ACLs can be saved in output tars.

commit 3b4f2bdde60e0d2e66561b45ea206ef65ae14f81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 17:00:00 2015 +0100

    build: Add virt-dib.1.html and virt-get-kernel.1.html to HTMLFILES.

commit 9d73b5446872988899486871b2efea79b6166961
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 21 16:56:00 2015 +0200

    tests/nbd: pass --format to qemu-nbd if possible
    
    Run `qemu-nbd --help` to know whether it supports --format, and if so
    pass it explicitly.  This avoids warnings with newer qemu versions,
    where they really recommends to explicit the format of disk images being
    specified on command line.

commit edfbc4bdee52799b44d61ec6f1a754941b3cf6e9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 21 16:54:29 2015 +0200

    tests/syslinux: add /usr/lib/SYSLINUX as directory for mbr.bin
    
    Yet another new location (found on recent Debian/sid) for mbr.bin.

commit 2a3400b0f13e3c13733e70288809d963903de2eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 13:34:04 2015 +0100

    docs: Finish off release notes for 1.30.

commit 846ff1f75df6fdd7871ec915b50f357f2dbc840b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 13:30:40 2015 +0100

    Version 1.31.0.

commit 7e44d2620ae047ec13bc11a6db50ae126fc48892
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 13:13:38 2015 +0100

    Version 1.30.0.

commit 3b84e8745b96ff8ff28d8f1fcd10ccf83174ffc9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 12:19:13 2015 +0100

    Pull translations from Zanata.

commit a66048344088ef58d6033ff2139cbebde08babfa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 11:55:01 2015 +0100

    Update gnulib to latest.

commit d62775cfaf87998464527d16d992bfa6fca76963
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 10:48:36 2015 +0100

    p2v: tests: Don't fail when test machine has only a single hard disk.
    
    virt-p2v looks in /sys/block to find disks, and ignores the hard disk
    containing the root device.  This is correct when virt-p2v runs off
    the ISO, but when running the tests on a machine that has a single
    hard disk, all_disks would be NULL, resulting in a test failure.
    
    Fix this by allowing all_disks to be NULL, but adding an extra check
    later so that we don't perform the conversion with no hard disks (the
    gui.c path already has this check, so it is only needed in the
    kernel.c path).

commit ca392c0d32c124efe6c68298e0be977fb1360bb1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 21 11:13:45 2015 +0200

    tests: fix string comparison
    
    Use 'eq' for comparing strings instead of '=='.

commit c9992fdaf1c92a8332e1943949e4c7149b9ae60a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 21 09:38:11 2015 +0200

    appliance: adding qemu-img and which dependencies for more distros
    
    In particular, add them for Archlinux, openSUSE, Frugalware, and Mageia.

commit 254f4f084fabd00f27b4cac1e9755f66f5cba7d0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 17 15:28:18 2015 +0200

    customize: add basic subscription-manager operations
    
    Add simple operations for RHEL guests using subscription-manager, so it
    is possible to e.g. install software on them.

commit 0bdeb7b4a058920ac53009796e35cf06e046e046
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 17 15:04:27 2015 +0200

    mllib: add and use read_first_line_from_file
    
    Move the read_password_from_file helper in Password to mllib with a more
    generic name, and use it in place of the former.
    
    Also, use it in v2v instead of reading the whole file contaning a
    password: given that the documentation says that the whole content is
    used, there will not be newlines in the password file, so the behaviour
    will be preserved. The oly difference is that newline is no more an
    acceptable character for passwords, but that is a really unlikely
    (if not impossible at all) situation.

commit e9076ee4f6f42187f542dbb4d13f3b196b023d75
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Fri Jul 17 17:24:22 2015 +0800

    daemon: add a space after func/macro to fit code-style
    
    more daemon codes covered
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 5b5b0222402321c3afce6cadf55ab0179c409483
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 14 11:11:29 2015 +0200

    dib: handle --name with path
    
    Make sure to write in the directory of the specified image name, using
    just the basename where needed (e.g. for $IMAGE_NAME).

commit ad5d4d0cf77eb99c5e79892f5043a7fa9acc8771
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Mon Jul 13 11:08:38 2015 +0800

    daemon: add a space after func name to fit code-style
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 620b891235f57da5df74e9e9359172800a66f186
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 13 10:11:35 2015 +0100

    v2v: windows: Set gcaps_video correctly (RHBZ#1233093).
    
    Depending on whether we found a QXL driver and installed it in the
    guest, set gcaps_video to either Cirrus or QXL.

commit 9728acd204866eca5f151e7f5a4e07c7e898c6c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 13 10:11:14 2015 +0100

    v2v: OVF: Add a comment about always using QXL.

commit c22c4239b5f297ed86424d0370345c8f9a9a32de
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 10 14:41:08 2015 +0200

    Improvements to the 1.30 release notes

commit 6eb511a8a9c5e8dffb721906e3a16ea8ea17dcf4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 9 18:31:47 2015 +0100

    Version 1.29.50.

commit 5f2fc5bf4943ff33872f538e6fe4e714ecb148e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 9 17:55:23 2015 +0100

    docs: When making a stable release, run ./configure --without-libvirt.

commit cf2cac985d5a6b145d35c5a57ae02896b3ef78ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 9 17:53:39 2015 +0100

    v2v: domainxml: Fix missing functions in the !HAVE_LIBVIRT case.
    
    This also uses a C macro to simplify the error functions in this case.
    
    This fixes commit badfc2e9b2a56fd5bac849a6edca4fec823abeea.

commit 2f13b5a51382d070a0b1295d6e866d27b2cdcf39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 9 13:12:33 2015 +0100

    Draft release notes for 1.30 release.

commit e9e8fb988d3f90c8e482a0052ee9a71f3605c848
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 9 15:35:32 2015 +0100

    v2v: Remove RHEL 7 conversion server.
    
    We are no longer planning to ship virt-v2v as an appliance.  In RHEL 7.2
    it will be included in the base RHEL Server product.
    
    This reverts commit 4e4ece53647fba810eeb45086b46d02f54e02fe2.

commit 6076e3ca1aa5a8beb3a423b5dc4d4f22cf6414b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 9 13:18:47 2015 +0100

    appliance: Exclude more log files (RHBZ#1239154).
    
    This removes further possible log files from the appliance, but
    without removing any subdirectories.

commit 45fd3d7d7090b5c1be763a2d435734f404b48036
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 9 13:11:15 2015 +0100

    appliance: Remove typo $@ at beginning of line.
    
    This fixes commit 82b486a9086f84447324d68b3c0cae300e0334f7.

commit 80642ca8fa331ebfe442b241abd71e91bf1d3f43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 9 13:07:59 2015 +0100

    appliance: Rebuild appliance if excludefiles changes.

commit 4d20bedc77cb9c1ef7db53940e81b9a7ff355825
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 9 14:55:43 2015 +0200

    New tool: virt-dib
    
    virt-dib is a new tool to run the elements of diskimage-builder using
    libguestfs.

commit 51652328857dfa756aaafc2ce8cf32e68c3be5df
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Wed Jul 8 17:34:45 2015 +0800

    labels: return ENOTSUP if could not set label for specific fs
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit ea7f7d2be8463485efdb86da300568e910daa6bc
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Wed Jul 8 17:34:44 2015 +0800

    labels: use existing do_xfs_admin for xfslabel
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 2623c83d908e5bdf8a226f7ce53b233ac0a4d86a
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Wed Jul 8 17:34:43 2015 +0800

    labels: move ntfslabel to ntfs.c
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit bb03b2d0c9e59bcce5634dfdda492cbd7c62d4e7
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Wed Jul 8 17:34:42 2015 +0800

    labels: move e2label to ext2.c and call it directly
    
    ext2 should not call function in labels
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit eb122c290d87ef2671ac1ba78784b0366ec8122c
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Wed Jul 8 11:07:47 2015 +0800

    labels: move btrfslabel to btrfs.c
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit f21f4672e0ae06f5f81826a096523a61d3e21a66
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Mon Jul 6 17:13:51 2015 +0800

    doc: add missing ms-dos fs section in set_label
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 943a03c1a5ef6a4e479db3a713b37795a1752543
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Mon Jul 6 13:34:06 2015 +0800

    uuids: return ENOTSUP if could not set UUID for specific fs
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 78c376cfbe6a4b487baf896add7435daba7456b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 6 12:37:23 2015 +0100

    v2v: Add a check before copying that UEFI is supported (RHBZ#1184690).
    
    If UEFI is required by the guest, but not supported by the host, then
    you wouldn't see an error message until after copying.
    
    Add an additional method to the output object so we can check this
    before copying, to avoid a long wait.
    
    Thanks: Junqin Zhou
    https://bugzilla.redhat.com/show_bug.cgi?id=1184690#c22

commit 9b1637c6ffcd3ccb13e95c68da90dfa64fb38749
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 6 12:20:48 2015 +0100

    v2v: -o libvirt: Add readonly=yes to UEFI <loader> attribute (RHBZ#1184690).
    
    Thanks: Junqin Zhou for diagnosing the bug and finding the correct
    solution.  https://bugzilla.redhat.com/show_bug.cgi?id=1184690#c22
    
    This fixes commit 40558450dd87190c9dc2649cadbf284ae0a21606.

commit bb79a9bafbc652d253efab2415d2645645194246
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 6 10:47:45 2015 +0100

    v2v: Catch real exception thrown by failing aug_get (RHBZ#1239053).
    
    When converting the old Perl virt-v2v code, I made a silly mistake
    with the exception that aug_get throws when it doesn't find any node.
    It throws a 'Guestfs.Error' exception, not 'Not_found'.
    
    As a result of this, the exception was escaping and the proper error
    message was not displayed.  With a malformed grub configuration you
    would see this error:
    
      $ virt-v2v -i disk centos-6.img -o null
      [...]
      virt-v2v: error: libguestfs error: aug_get: no matching node
    
    After applying this patch:
    
      $ virt-v2v -i disk centos-6.img -o null
      [...]
      virt-v2v: error: no kernels were found in the grub configuration.
    
      This probably indicates that virt-v2v was unable to parse the grub
      configuration of this guest.
    
    which is the correct error message.

commit a0820e6c87f4773c93bafcc05676c4a402864250
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Thu Jul 2 19:52:37 2015 +0800

    New API: set_uuid_random
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit afe1cb4f34639db4f464b69369f05cf4fa56bb73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 18:06:15 2015 +0100

    Version 1.29.49.

commit 4e7a6dee77abd2cd3dfa8e3b17d2bf0d6a2ba1bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 15:36:04 2015 +0100

    Fix various -Wformat problems.
    
    Updating gnulib has caused -Wformat-signedness to be enabled.  This
    has revealed many problems in C format strings.  The fixes here fall
    into the following main categories:
    
     - Using %d with an unsigned parameter.
    
     - %x and %o expect an unsigned argument.
    
     - uid_t and gid_t are unsigned on Linux.  The safe way to print these
       is to cast them to uintmax_t and then print them using the %ju
       modifier (see http://stackoverflow.com/a/1401581).
    
     - Using %d to print an enum.  Since enums may be either char or int,
       I fixed this by casting the enum to int.
    
     - strtol_error & lzma_ret are both unsigned types.

commit 580bcf813d1588beedf47653d23af75d38d516fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 14:52:39 2015 +0100

    Update gnulib to latest.

commit 0e8bbc63d69991b16b1ba6c0ec68718349d3cf84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 14:49:37 2015 +0100

    Pull latest translations from Zanata.

commit 29516112cc1f6ae5abbb2ab901d78ca44f0c1fde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 14:14:29 2015 +0100

    v2v: TODO: Add note about -i ova / -o rhev and removable device slots.

commit db57a7670d50b3f7063fa1a7708de420688df2ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 14:14:26 2015 +0100

    v2v: Remove some items from TODO file which we've implemented.

commit 5bca4ad50d4fe3a32975be1db75663027a357977
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 13:53:50 2015 +0100

    v2v: Add a regression test for RHBZ#1238053.

commit 2f1442a8c2e237e33d2171334b309acd8739dead
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 18:04:46 2015 +0100

    v2v: Pass target_buses to output object (RHBZ#1238053).
    
    Pass the target_buses assignment to the output#create_metadata method.
    
    Now output modes have a choice: they can either ignore the new
    parameter and continue to use the flat list of targets.  This is
    suitable for output modes that cannot model multiple buses (eg.
    -o glance) or can model it but don't bother (currently -o rhev).
    
    Or they can ignore the flat targets parameter and use the new
    target_buses parameter, translating that into the appropriate list of
    devices.  This is implemented in this commit for these modes:
    
     -o libvirt
     -o local
     -o qemu

commit 2c96e93f63d86c9980594816a532b787532cdc2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 17:33:28 2015 +0100

    v2v: Introduce the concept of target buses.
    
    The target VM will have several buses to which disks can be attached.
    Commonly it will have an IDE bus, and possibly a virtio-blk "bus" (not
    really a bus) and/or a SCSI bus.
    
    Virt-v2v does not model this at the moment.  Disks are just added to
    the output XML in the order that we write them, and so they can move
    around with respect to the target VM.
    
    This commit introduces the idea that we should model the target disk
    buses, and we should try to assign fixed and removable disks to slots
    on each of those buses.  In this commit, the modelling is not used by
    any output mode, but that will be fixed in the next commit.

commit 58c48e0b162d5a13aaa4a2e398cf18eba38141fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 15:15:33 2015 +0100

    v2v: -i libvirt and -i ova: Record the slot number of removable drives.
    
    When we see libvirt source XML for a removable drive like this:
    
       <disk type='file' device='cdrom'>
         <driver name='qemu' type='raw'/>
         <target dev='hdc' bus='ide'/>
       </disk>
    
    as well as recording the bus (s_removable_controller) as we do at the
    moment, also record the slot number (eg. hdc == 2 in the example
    above).
    
    Do the same for OVA input files.

commit 76de5be3f5e483b54605f8ef9a49e0762dc788ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 15:14:58 2015 +0100

    v2v: Add a binding for guestfs_int_drive_index and a unit test.

commit 68c758ff74219b09d60f35469d936e28331b0476
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 15:14:49 2015 +0100

    v2v: Add unit test of Utils.drive_name function.

commit 437aa428f94f1767119c04e8769aca2089ca495a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 15:13:49 2015 +0100

    v2v: Refactor ~printer parameter in unit tests.
    
    Simple refactoring, no functional change.

commit 4fa45a0864ba1da78d92e46f3f56e3751aa07454
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 14:27:53 2015 +0100

    utils: Add guestfs_int_drive_index and unit test.
    
    Add guestfs_int_drive_index which does basically the opposite of
    guestfs_int_drive_name.  This commit also includes a unit test.

commit 1befffba98b17e1442dd009692f7574de76d290b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 14:27:36 2015 +0100

    utils: Add a test of the guestfs_int_drive_name function.
    
    This function didn't have a unit test before.

commit 1c0175a74cbd813cfd247f9308f113f18eaeadc1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 2 11:25:06 2015 +0200

    tests: do not init a partition for btrfs-image tests
    
    They create an own partition layout, so don't do that over the
    testing-created layout.
    
    At least for me, this fixes parted issues when creating the new
    partition layout and the old one is still reported as in use.
    
    Followup/fix for commit 52d1b0c593e87cb5d696dcc9d96ad6489c9bed00.

commit 13087f2c381e79b313295c86e57096969808ecde
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Wed Jul 1 17:21:13 2015 +0800

    uuid: use newly introduced swap_set_uuid
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 9cee217d98c721b742251c2a939e0c77f576ca00
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Wed Jul 1 17:21:12 2015 +0800

    uuid: add support to change uuid of btrfs partition
    
    btrfs-progs v4.1 add support to change uuid of btrfs fs.
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit ae722455b6cf9462f2810c469860c8e2c85c9401
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 1 14:53:31 2015 +0200

    sysprep: rework and fix cron-spool operation (RHBZ#1229305)
    
    When cleaning the directories with cron/at jobs, remove only files
    there, as subdirectories might be used by other systems; for example
    in Debian under /var/spool/cron/ there is the atjobs subdirectory with
    the actual at queue.
    
    Make sure to not remove .SEQ files anymore, as they represent the at job
    counter which is needed by the at daemon. Instead, reset these files to
    0.
    
    Furthermore, add also the path to the .SEQ location in Debian-based
    systems.

commit ae7c93011141752f99183be5cac7971476ebf543
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jul 1 14:35:31 2015 +0200

    mllib: add and use last_part_of
    
    Collect this small snippet to get the part of a string after the last
    occurrency of a character; replace with it the current snippets doing
    the same.
    
    Should be just code motion.

commit 0cfd315ce9e6c7bffd6b4e594257a7eec03522e5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 30 20:59:31 2015 +0200

    mllib: add an optional filter for rm_rf_only_files
    
    This way it is possible to use rm_rf_only_files, but not removing
    specific files.

commit 02c473feefaff1b1dfee4be7d7f55e61e9b7325b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 11:14:23 2015 +0100

    v2v: Match any non-"Client" variant, instead of just "Server" (RHBZ#1234351, RHBZ#1237869).
    
    When checking if a Windows variant is a server variant, assume it is a
    server variant unless the i_product_variant field is "Client".
    
    Windows 2008 and Windows 2008R2 does not have an InstallationType key
    in the registry at all, so for these the product variant is returned
    as "unknown".
    
    Windows "Core" would have, according to the reference below,
    "Server Core".
    
    https://msdn.microsoft.com/en-us/library/ee391629%28v=vs.85%29.aspx
    
    This fixes commit 47b5f245bec908f803f0a89c3b1e3166cfe33aad.

commit 7c6904043a993d103e2ec3cbc19a617ea2ecd9bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 11:01:43 2015 +0100

    v2v: Fix detection of Win2008R2 drivers (RHBZ#1234351).
    
    This fixes commit 47b5f245bec908f803f0a89c3b1e3166cfe33aad.

commit c02534e0c437dbaa83096f6e29d9cd4898738b38
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 30 16:42:52 2015 +0200

    tests: add/expand UUID and label tests for swap and xfs

commit 163e41beab5bbf3c86743afe400e4f14f495cf3e
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Tue Jun 30 19:23:12 2015 +0800

    daemon: add get_random_uuid
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 27a890a131be6b23751639c860c10002a97a1762
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Tue Jun 30 19:23:10 2015 +0800

    uuid: use newly introduced xfs_set_uuid of xfs
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit afbc4b22648158b6457282ac112fc36f67b6c6e9
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Tue Jun 30 19:23:09 2015 +0800

    uuid: use existing function of ext2
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 684c2aab7ad8dd02d1b4b43a1aa05153634083ff
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Tue Jun 30 17:45:14 2015 +0800

    tests: fix two minor warnings
    
    "my" variable $output masks earlier declaration in same scope at /home/libguestfs/tests/daemon/test-btrfs.pl line 66.
    "my" variable @r masks earlier declaration in same scope at /home/libguestfs/tests/daemon/test-btrfs.pl line 72.
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit d7fda2153f93b204829365a67068012feab940c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 23:20:54 2015 +0100

    Version 1.29.48.

commit 8f86c06c3d5bba69fe2fd6d1675854e55e2c37aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 22:56:55 2015 +0100

    tests: Add a test of btrfs-qgroup-show using the captive daemon.

commit 41d16af0898bc64040c38c9224037b69edd6d67e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 22:56:55 2015 +0100

    tests: Add a test of btrfs-subvolume-list using the captive daemon.

commit fc60fab336563bf7e09f377da9121a78408fc279
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 12:43:32 2015 +0100

    tests: daemon: Cleanly shut down the daemon on exit.
    
    This refines the previous commit by shutting down the daemon cleanly
    at the end of the test (assuming the test was successful).  It
    repurposes the 'internal_exit' API for this, which was previously used
    by the now defunct --enable-valgrind-daemon functionality.

commit ac5c04df8f958c41c8b0121d6f51e05b50f37503
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 18:21:50 2015 +0100

    tests: Add tests using a captive daemon process.
    
    This allows us to test the daemon running as a host process, allowing
    us to meaningfully test it using valgrind.
    
    This commit only adds a single test that check that the daemon starts
    up, can be pinged, and exits.

commit 3330a465749426c67174a74f0675ec49e2990b97
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 25 15:08:52 2015 +0100

    daemon: Move all the kernel command line parsing to the init script.
    
    Instead of parsing /proc/cmdline from the daemon, move all of that
    parsing into the init script, and pass the argument via the daemon
    command line.
    
    For example, previously the daemon and init script both looked for
    guestfs_network=1 in /proc/cmdline.  Now the init script still looks
    for it, and if found it runs `guestfsd --network'.

commit e8a7383d377bb6ca111f3f57852e41ef7f2fcecb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 15:29:15 2015 +0100

    daemon: Add -l / --listen flag.
    
    This option, used for testing, causes the daemon to create the Unix
    domain socket (from guestfs_channel), listen on it, and accept a
    single connection.

commit 848cfd5965a17d678b8da1b9bf7537beb46b584c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 15:26:31 2015 +0100

    daemon: Add undocumented --test / -t option to enable test mode.
    
    This is a catch-all mode for turning off daemon features which
    interfere with our testing of the daemon.

commit dc72d4ab37d99d07c33f74c603c3896687d3ddaa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 22:49:11 2015 +0100

    configure: Remove test for valgrind --vgdb option.
    
    We'll now just require that valgrind is new enough.
    
    As best as I can tell from the valgrind subversion(!) repository, this
    option was added to valgrind in around 2011.

commit 65b444ed92a46725534fbeb1e4f67a45c4d51f8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 25 18:00:02 2015 +0100

    v2v: Free XML objects in the correct order.
    
    If you free an xmlDocPtr before any xmlXPathObjectPtrs that reference
    the doc, you'll get valgrind errors like this:
    
      ==7390== Invalid read of size 4
      ==7390==    at 0x4EB8BC6: xmlXPathFreeNodeSet (xpath.c:4185)
      ==7390==    by 0x4EB8CC5: xmlXPathFreeObject (xpath.c:5492)
      ==7390==    by 0x400A56: main (in /tmp/test)
      ==7390==  Address 0x60c0928 is 8 bytes inside a block of size 120 free'd
      ==7390==    at 0x4C29D2A: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
      ==7390==    by 0x4E8784F: xmlFreeNodeList (tree.c:3683)
      ==7390==    by 0x4E87605: xmlFreeDoc (tree.c:1242)
      ==7390==    by 0x400A4A: main (in /tmp/test)
    
    The following simple test program demonstrates the problem:
    
      #include <stdio.h>
      #include <stdlib.h>
      #include <assert.h>
      #include <libxml/xpath.h>
    
      int
      main (int argc, char *argv[])
      {
        xmlDocPtr doc;
        xmlXPathContextPtr xpathctx;
        xmlXPathObjectPtr xpathobj;
    
        doc = xmlReadMemory ("<test/>", 7, NULL, NULL, XML_PARSE_NONET);
        assert (doc);
        xpathctx = xmlXPathNewContext (doc);
        assert (xpathctx);
        xpathobj = xmlXPathEvalExpression (BAD_CAST "/test", xpathctx);
        assert (xpathobj);
        xmlFreeDoc (doc);
        xmlXPathFreeObject (xpathobj);
        xmlXPathFreeContext (xpathctx);
        exit (EXIT_SUCCESS);
      }
    
    In virt-v2v we were not freeing up objects in the correct order,
    because we didn't express the dependency between objects at the C
    level into the OCaml, where the OCaml garbage collector could see
    those dependencies.  For example code like:
    
      let doc = ... in
      let xpathctx = xpath_new_context doc in
      let xpathobj = xpath_eval_expression xpathctx "/foo" in
    
    might end up freeing the 'doc' (xmlDocPtr) if, say, there were no
    further references to it in the code, even though the 'xpathobj'
    (xmlXPathObjectPtr) remains live.
    
    To avoid this, we change the OCaml-level representation of objects
    like xpathobj so they contain a reference back to the higher-level
    objects (xpathctx & doc).  Therefore holding an xpathobj means that
    the doc cannot be freed.
    
    However that alone is not quite sufficient.  There is a further
    problem when the program calls Gc.full_major, Gc.compact etc., or even
    just when xpathctx & doc happen to be freed at the same time.  The GC
    won't necessarily free them in the right order as it knows both need
    to be freed but doesn't know that one must be freed before the other.
    
    To solve this we have to move the finalisers into OCaml code, since
    the OCaml Gc.finalise function comes with an explicit ordering
    guarantee (that finalisers are always called in reverse order that
    they were created), which the C-level finaliser does not.

commit da91182d9d16500b41df81bb290012bab695a744
Author: Cao jin <caoj.fnst@cn.fujitsu.com>
Date:   Wed Jun 24 10:08:42 2015 +0800

    New API: btrfs_replace
    
    Signed-off-by: Cao jin <caoj.fnst@cn.fujitsu.com>

commit d3b649b1b710b272823d5adc117fc84a06185d94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 10:41:10 2015 +0100

    v2v: OVF: If actual_size field is estimated, add a comment to the output.
    
    The 'note:' comment is added, as below:
    
      <Section xsi:type='ovf:DiskSection_Type'>
        <Info>List of Virtual Disks</Info>
        <!-- note: actual_size field is estimated -->
        <Disk ovf:actual_size='7' [...]/>
      </Section>

commit 2f074d9c68aed9e34576780bcd10095d63e42464
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 25 20:54:06 2015 +0100

    v2v: Increase the timeout of VMware curl connections (RHBZ#1146007).
    
    On certain webservers these appear to go beyond even 600 seconds (10
    minutes).

commit 92c1d1bb8dc0e695315559e5b1dd5d965a8d2e6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 25 21:22:00 2015 +0100

    v2v: test-harness: Build dependencies correctly.

commit 52524fac79cc7497ac486eb67ec1022292959df5
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Thu Jun 18 17:39:39 2015 +0800

    do_btrfs_subvolume_list: fix a bad return value
    
    don't return a value which is to be freed.
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit ef75d4361b696b611a8ea883ef67188638489333
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Thu Jun 18 17:39:38 2015 +0800

    do_btrfs_qgroup_show: fix a bad return value
    
    We should not use temporary lines buffer as return value,
    for lines buffer will be freed.
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 4d6eb8de3efdbe6e664e483614ebdb586fcd4c43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 13:24:23 2015 +0100

    lib: Add optional 'append' parameter to copy-(device|file)-to-file APIs.
    
    This allows you to append one file to another:
    
      copy-file-to-file /input.txt /output.txt append:true
    
    will append the contents of /input.txt to /output.txt.

commit 066c685d3b74ce64d148ddc105f10a72c6d4f4f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 22 15:13:36 2015 +0100

    v2v: Support loading virtio-win drivers from virtio-win.iso (RHBZ#1234351).
    
    This makes several changes to the handling of virtio-win drivers:
    
    The VIRTIO_WIN_DIR environment variable has been renamed
    VIRTIO_WIN (but you can still use the old name).
    
    You can point the VIRTIO_WIN either at a RHEL virtio-win directory
    (ie. /usr/share/virtio-win), OR at a loopback-mounted virtio-win ISO,
    OR at the virtio-win.iso file itself.  In the latter case, libguestfs
    is used to open the ISO file and read drivers from it.
    
    The code is more flexible about the pathnames of drivers, because the
    paths in the ISO are completely different from the paths in RHEL
    /usr/share/virtio-win.

commit 064e5887de7ea82da67a96dfe734b816860fd309
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 14:33:44 2015 +0100

    daemon: Rewrite prog_exists so it uses the actual PATH, not hard-coded list.

commit e149617ffe7463d89ab9e7b2939d5610ee5f9114
Author: Cao jin <caoj.fnst@cn.fujitsu.com>
Date:   Tue Jun 23 18:38:19 2015 +0800

    Modify the function: analyze_line, make it more flexible
    
    Modify the function from a fixed delimiter to a variable. So,
    it can be used in more APIs later. Also modified the existing
    callers
    
    Signed-off-by: Cao jin <caoj.fnst@cn.fujitsu.com>

commit e7aadee5b431222a6289a88e3a19417ed641a70a
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Tue Jun 23 16:01:10 2015 +0800

    btrfs: remove redundant whitespace
    
    s/  =/ =
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 848aa5fe8756f342df58543ab3eff90c1a7866b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 22 18:48:47 2015 +0100

    v2v: test-harness: Add Config module to library.
    
    Missing dependency.

commit b509c8d5a4a3fbfbc41c6507a0b14b3c1b7a8b3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 22 18:08:29 2015 +0100

    appliance: Make uefi_firmware variable static.
    
    It is not used outside the compilation unit.
    
    This fixes commit 544a7314824654d89ba3c70e3e93383a05d54218.

commit c373dcd6cccf3905caba2813233d8dcf326e2077
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 19 19:49:41 2015 +0100

    launch: Refactor guestfs_int_get_cpu_model code.
    
    Shorter and does the same thing.

commit 223c7da3dfcca76d3e68adbc95890885a18f61bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 20 14:49:19 2015 +0100

    aarch64: appliance: Use kraxel's edk2.git repo if available.
    
    Gerd is making EDK2 builds available here:
    
    https://www.kraxel.org/repos/
    
    These are convenient for Fedora/aarch64 users, so use this firmware if
    available.
    
    This commit also refactors the UEFI searching code.

commit 72f1d4b93fb2a5e4824606fc16c3a851be12f1fc
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Fri Jun 19 10:26:52 2015 +0800

    btrfs: fix leak in btrfs_balance_status
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit e08b9c827415331d463c7b669bfdb6c4bba18d91
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jun 18 15:46:21 2015 +0200

    v2v: remove unused sources and libraries

commit e888c60e0032e3d434c96bf464b697f2fe96aba3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jun 18 13:34:12 2015 +0200

    btrfs: fix leak in btrfs_scrub_status
    
    Properly free the output buffer.

commit 425f54263a74d51bb8419e77c610f5a688f60c0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 18 12:59:53 2015 +0100

    Version 1.29.47.

commit 82b23b8cea1bf4ac2bcc2f2a2b66642a620d9878
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 18 09:52:54 2015 +0100

    v2v: Improve handling when one of the input disks is blank (RHBZ#1232192).
    
    In commit 4c73d1d4f142c6f6211c963beea68773e11fd3ef, I changed the
    behaviour of virt-v2v so it ignores all errors from the
    g#part_get_parttype method.  However that would ignore I/O errors and
    similar.
    
    Only ignore the "unrecognised disk label" error from parted, by
    testing if the return code is EINVAL.
    
    This fixes commit 4c73d1d4f142c6f6211c963beea68773e11fd3ef.

commit dd279629a3a3245c63a8bed7ec5be010c19ec119
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 18 09:52:16 2015 +0100

    ocaml: Add handling for errno EINVAL.

commit 2ce726260d4df1ac3ddce14f2d57bfcea33741d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 17 10:51:40 2015 +0100

    daemon: parted: Always use -s option even with -m.
    
    See: https://bugzilla.redhat.com/show_bug.cgi?id=1232241#c3
    
    However adding the -s parameter changes the error code returned by
    parted when it processes a blank disk (or other unrecognized partition
    table).  Without -s it prints an error but returns a non-error exit
    code (0).  With -s it prints an error and returns an error exit code.
    
    Because it's useful to be able to catch this case in user code, turn
    "unrecognised disk label" into EINVAL.
    
    Change virt-alignment-scan to catch this error and ignore it.

commit 00169360420ffc37a1d4dbdd76c3d50c4b0eea42
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Thu Jun 18 16:35:56 2015 +0800

    error log: keep more calloc and its error messages match
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 593cf1ddf3304790a04a1c46fd7fb2e79bfe1dba
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 17 13:04:59 2015 +0200

    daemon: add split_lines_sb
    
    Mold split_lines_sb from split_lines, so it returns the strings buffer
    with the result of the split. This way, we can have the number of lines
    in the array, with no need to count them again later.
    
    split_lines is rewritten to take the ownership of the result of
    split_lines_sb.

commit a72f8bb82c23db4c9777d7b3fc5cacbc8d402238
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 17 12:52:54 2015 +0200

    daemon: add take_stringsbuf

commit 165583c7c3317078aa85ccf7cd9fa135e00e0ece
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 17 12:25:32 2015 +0200

    daemon: add CLEANUP_FREE_STRINGSBUF

commit 1977bb94ae9a6b58e0b01f0635e0d2fa09f9dba7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 17 12:23:06 2015 +0200

    daemon: introduce free_stringsbuf
    
    Simple shortcut to easily cleanup a stringsbuf.

commit c19aa6b82e4467d5b9a69da95df1a59580f32cf8
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Wed Jun 17 16:19:33 2015 +0800

    btrfs: use CLEANUP_FREE_STRING_LIST for list free
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 94303a25ec2949582f73853d126af71f9766ab6e
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Wed Jun 17 10:44:09 2015 +0800

    btrfs: keep calloc and its error message match
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 4d440117ab69cc20ac1f328172fbf96fa56f2ac2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 16 17:31:43 2015 +0200

    btrfs: use calloc instead of malloc+memset
    
    Small optimization, and eases the code.

commit bdf60f4a3135b8bcda426ccabc299d69da5491c8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 16 17:07:47 2015 +0200

    btrfs: remove unused 'out' variables
    
    If we are not interested in output of a command being run, then there's
    no need to still capture it in a (automatically freed, but still)
    variable.
    
    If any of those outputs is needed, a variable for it can be easily added
    back.

commit 5b176102c1f9fda132b8e1030467be8a12bbd650
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 16 09:31:25 2015 +0200

    Improve fixed appliance documentation
    
    Move the "FIXED APPLIANCE" section from
    libguestfs-make-fixed-appliance(1) to the "INTERNALS" section of
    guestfs(3), so it's more visible and less hidden in the documentation
    of a rarely-used tool.  Also slightly improve it.
    
    Expand the FAQ question about libguestfs without supermin, mentioning
    the build options needed and pointing to the aforementioned new section.

commit 9867c425853c0468e6956d0925cdfea513cbd3fa
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Tue Jun 16 18:24:49 2015 +0800

    guestfs.pod: fix a typo
    
    s/caling/calling
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit adb46fcb5b71b4d83f65412a6effb73c5bcc2f1f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 16 12:15:29 2015 +0100

    v2v: Don't fail if one of the input disks is blank (RHBZ#1232192).
    
    This also adds a regression test since it is probably easy to break
    this in future.
    
    Thanks: Junqin Zhou

commit 31547a3c24ab2a8952369716413a165ae40a7369
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jun 15 15:53:14 2015 +0200

    resize: make available expand method warnings more prominent
    
    When hitting a filesystem which we cannot or don't know how to expand,
    instead of print a warning in verbose mode only, print it always when
    showing the summary of the changes.
    
    In the virt-resize documentation, add a paragraph about this warning.
    
    Thanks to: Luigi Toscano.

commit 68a8fd2f6a0cf06afd764d66191c501c45ef2381
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jun 12 10:59:58 2015 +0200

    get-kernel: add --prefix
    
    New --prefix option to specify a prefix for the extracted file names.

commit 00d342cf7d4f6985189762a945ae877d241b8cd6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jun 12 10:28:16 2015 +0200

    get-kernel: add --unversioned-names
    
    New --unversioned-names option to save extracted files just with their
    base name (i.e. "vmlinux", "initrd.img").

commit e5af6853e64f584239ff8d96d5a3a272dcae8909
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jun 11 18:07:32 2015 +0200

    (Almost) new tool: virt-get-kernel
    
    Extract the guest kernel/ramdisk extraction from virt-builder into a
    separate utility, so it can be used and improved without cluttering
    virt-builder.
    
    Currently it does what virt-builder --get-kernel did, adding also the
    options for remote disks and libvirt access, much like other libguestfs
    tools.
    
    virt-builder --get-kernel now just spawns virt-get-kernel.

commit ebf0b05d2060b44a2333d4dc0ed0957124aa4a82
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 14 12:37:49 2015 +0100

    pod: Use F<> for filenames instead of C<>.
    
    Done using a sequence of regular expressions like this:
    
      perl -pi.bak -e 's{C</}{F</}g' `git ls-files \*.pod` generator/actions.ml
      perl -pi.bak -e 's{C<C:\\}{F<C:\\}g' `git ls-files \*.pod` generator/actions.ml
      [etc]
    
    and then tediously checking every change by hand.

commit b091e97e6d83d51e8d35d5629b484e9e3745f842
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 14 16:35:21 2015 +0100

    FAQ: Add sections about libguestfs NTFS & XFS support.
    
    Both popular questions.

commit 01b1570f1816ce703eee112bb769faf7b5d7af54
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 13 22:21:28 2015 +0100

    v2v: Document 7B boot problems with Windows Group Policy.

commit 56090bd13b31970b6b99512255ffc138397b7e8c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 10 14:06:03 2015 +0100

    p2v: Add proper test for command line parsing.
    
    This also adds a couple of deliberately undocumented (and unsupported)
    command line parameters to make testing simpler:
    
    p2v.skip_test_connection  - don't try to test the connection
    p2v.dump_config_and_exit  - after parsing command line, print it and exit
    
    This updates commit 716244c33718c866edce9e7ee8f21ee612f53337.

commit ef78b0e7a3366018666c3fe90b3a28d9539ac627
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 10 14:04:49 2015 +0100

    p2v: Make sure command is printed before running it.
    
    This updates commit b45f6a04359b4b64256b7b21a04416fa772c9423.

commit 7b35fd45c9400b62c64eb036a4d7420580d0bc6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 10 14:03:43 2015 +0100

    p2v: Refactor code that dumps the configuration for debugging.
    
    This is just code motion.

commit 3b5c993f923fb7bd9a56c9c9fa6f18b4d84dbe17
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 10 13:38:11 2015 +0100

    p2v: Fix parsing of p2v.memory parameter (RHBZ#1229262).
    
    The sscanf call always failed because we checked for the wrong return
    code.
    
    We don't need to allocate two characters for the mem_code field since
    sscanf doesn't append a nul byte.
    
    This commit also allows you to use lowercase 'm' or 'g' as a memory
    unit.
    
    Also clarify the documentation: the memory unit must be given.

commit 576f6d2f75504b84a618b96da2edba44af872ba0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 9 17:06:33 2015 +0100

    p2v: Add p2v.pre, p2v.post, p2v.fail commands (RHBZ#1229385).
    
    The default p2v.post command, when run from the ISO, is to poweroff
    the machine after successful conversion.

commit ef79069f50dff27f511029fc7636999a7f98d2d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 9 17:53:05 2015 +0100

    p2v: Correct parsing of /proc/cmdline, including quoting.
    
    Fix the parsing of /proc/cmdline, including allowing double quoting of
    parameters.
    
    This allows you to pass parameters to p2v on the command line which
    include spaces.

commit a1d2e37c93f119d98f8648b2787a2f912751b878
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 9 15:27:25 2015 +0100

    p2v: Modify /etc/issue with clearer instructions.

commit 4d873f12f6911b1eb8f964820dc8c2fe8934943f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 8 14:41:46 2015 +0100

    p2v: Update documentation.
    
    - How to configure virt-p2v for PXE boot.
    
    - How to test PXE boot using qemu.

commit d5ae6ed076baf3fe69c680ed6d52717450db0b8f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 9 14:09:55 2015 +0100

    p2v: Chomp kernel command line (fix) (RHBZ#1229340).
    
    Calculate the length of the string, not the length of the buffer.
    
    This fixes commit 6114c10df05cdb1662ac22930010fd45714f9c40.

commit 6f0a87565bda4cee79158173450ff14dbebbea96
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 9 11:57:13 2015 +0200

    builder: add a doc snippet about firstboot scripts
    
    Document basic information about them for Linux and Windows guests.

commit babbb7e2ddc86be013d637007ffd549743c37367
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 9 10:54:13 2015 +0200

    podwrapper: simplify external references pointing to self
    
    When convering a POD documentation, possibily combining various
    sub-documents together, simplify the L<> links that explicitly point to
    the very same documentation being generated.
    
    For example, when generating the virt-builder documentation, links like
      L<virt-builder(1)/SECTION>
    will be turned into
      L</SECTION>
    thus not making Pod::Simple parse them as external reference.
    
    While it is a slightly crude hack, it seems there's no easy way to
    process the link parsing with Pod::Simple subclasses.

commit a0d785e25b5787ecc6275c52add40b5ee0917cf1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 8 14:40:20 2015 +0100

    p2v: Chomp kernel command line (RHBZ#1229340).
    
    When using the kernel command line to configure virt-p2v, if any p2v.*
    parameter appeared right at the end of the kernel command line, then a
    bogus \n would be appended.  Remove this.
    
    This is essentially the same fix as:
    https://github.com/libguestfs/supermin/commit/4819655b3c96e836e46d0d679f84b10f8e9abcf5

commit dfadedbe8a4eaacf2373fb0f86ecc817500d6338
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 6 18:34:15 2015 +0100

    Version 1.29.46.

commit 14757bb1ea890b240692e0fdc7a2e633d27ebe8f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 6 18:32:38 2015 +0100

    Update translations from Zanata.

commit e381876d79b9123913876e84e79acd4ae60009ba
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Thu Jun 4 11:56:02 2015 +0300

    Use safe_realloc() in favor of realloc overall.

commit 3d992ba5b2bd473b387ef12e209e2587f5ff3c27
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Fri Jun 5 06:02:20 2015 -0400

    sysprep_operation: fix a typo
    
    s/rathern/rather
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit d9b032cd2e2baacd46a4dda76e09fbe4264743fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 5 14:27:58 2015 +0100

    lib: command: Fix leak in the per-child-process rlimit structures.
    
    This fixes commit 9db0f807a917ec00d24297d5bf63c19065f930cf.
    
    Bug found by valgrind.

commit 417e8f83546797840834ed1aae4d28d77fe5a2a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 5 11:15:35 2015 +0100

    fuse: Use SKIP_TEST_FUSE_SH consistently.
    
    This fixes commit 96a02f08648f81a741269a34de0352ff3fcb140a.

commit d3bf2cf47427ee4b524f1642a38a302608e70987
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 4 18:02:33 2015 +0100

    proto: Don't set g->last_errnum directly.
    
    I'm trying to think if there was any reason why we would have set
    g->last_errnum directly instead of using the proper function
    (guestfs_int_error_errno), but I cannot think of one.
    
    Since error (g, ...) is just a macro that calls
    guestfs_int_error_errno (g, 0, ...), this code is equivalent.

commit 842ccb1d101906aa185ad3103a274cc9c1efda75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 3 18:56:31 2015 +0100

    appliance: Make sure /tmp and /var/tmp are real directories.
    
    Currently if /tmp (on the host) is a symlink, then the symlink is
    copied into the appliance, probably pointing to a non-existent
    directory, and everything goes downhill from there.
    
    Avoid this by making sure that /tmp and /var/tmp are real directories.

commit 579dc2dfcc26e9f9dc1dec04160b54a6d6225fd1
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Wed Jun 3 15:22:38 2015 +0300

    inspector: tests: Enable the Arch Linux test

commit 17da331473e6d751436fb662f677d72b93cb707c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jun 3 16:13:43 2015 +0200

    mllib: use Unix.gettimeofday instead of Unix.time
    
    Unix.gettimeofday returns a finer resolution than seconds, which is what
    we need since deciseconds of timestamps are printed.

commit 8bba9867a9627d204b380643b0d097b769d1037c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 2 17:38:46 2015 +0100

    Version 1.29.45.

commit 2f602565a33562b373cf593f1ebb7c7d13f47d16
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 29 16:01:26 2015 +0200

    inspection: fix CentOS 7 detection
    
    In newer CentOS 7 versions /etc/redhat-release says that the distro is
    derived from RHEL, so we need to look at /etc/centos-release for
    actually identifying it as CentOS.
    
    The old code is needed as sub-case of /etc/redhat-release, as on
    CentOS < 7 that file is a symlink to /etc/centos-release.

commit c1c93d78ba50c0118243f4621fbc8c5081450e07
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 29 16:01:25 2015 +0200

    inspection: lift size limit for RHEL icons
    
    In RHEL-based distros, the provided icons have (obviously) different
    sizes than the RHEL ones, used in icon_rhel as reference.
    
    Since 100K should be a reasonable threshold for avoid keeping a
    per-distro list of limits, just use it as only size limit.

commit b100ee97476b81808543ddd2c5891785be2b1bcc
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Tue Jun 2 19:25:17 2015 +0300

    Add tests for CoreOS
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit 6d8f789ca228f49502f84b520184905f99f77d70
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Tue Jun 2 19:24:59 2015 +0300

    inspection: Add support for CoreOS
    
    * Implement coreos distro
    * Detect CoreOS images
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit 1f7435c946e92e8776411716aaf01064473ab8e3
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Tue Jun 2 19:24:27 2015 +0300

    inspection: Add func for merging fs inspections
    
    Add a new guestfs_int_merge_fs_inspections() function that merges the OS
    inspection information of two inspect_fs instances into one. This
    function is useful if the inspection information for an OS are gathered
    by inspecting multiple filesystems.
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit 6547202c0a5ce7a95e051a0b07544fac564f99c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 2 16:27:13 2015 +0100

    p2v: Introduce a common file to store virt-p2v ISO dependencies.
    
    Instead of having virt-p2v-make-disk and virt-p2v-make-kickstart
    separately contain a list of the virt-p2v ISO dependencies, combine
    the dependencies into a single file ('p2v/dependencies.m4') and use
    that to generate the respective dependencies in each script.

commit 3173494b70d2785c93fb39beac23db69184ff897
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 2 13:51:47 2015 +0100

    p2v: Set status to "Conversion cancelled by user" when user cancels (RHBZ#1226794).
    
    Thanks: Tingting Zheng.

commit c5408cb269ad6c8ae68508034fef709ccb2c1b1c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 1 11:58:22 2015 +0100

    FAQ: Document using libguestfs to access live guest disk images.
    
    Gets asked on the mailing list several times a year.

commit 70d80ee49b7c256c794a83df974a1e4627c8a782
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 31 22:30:18 2015 +0100

    v2v: -o libvirt: Remove unnecessary comment.

commit e9f994a9473594d86826dd4adc3d31ebba7c946e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 31 22:16:44 2015 +0100

    v2v: Add a <!-- generated by .. --> comment in output XML files.

commit 36e2d517127f5e69894c34c30163a334c5e1f503
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 31 21:49:49 2015 +0100

    v2v: OVF: Add comment that 'IsInitilized' is not a typo.

commit 490b999703bc8a751dfdaacf0d354ac1b3d397f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 29 15:05:02 2015 +0100

    perl: XML::XPath and XML::XPath::XMLParser are not required.

commit 583e71e4521af4bd01879ed4e5fc1251af190305
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 28 16:39:48 2015 +0200

    java: doc: add the version (if available) of APIs

commit 2003f0062e022672d9fb4257209aa45172862f84
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 28 15:41:41 2015 +0200

    ocaml: doc: add the version (if available) of APIs
    
    Make sure to not add more newline's than needed.

commit a367b7a654c76737db1eab01322de5165612155c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 28 15:05:34 2015 +0200

    gobject: doc: add the version (if available) of APIs

commit c45137f94fdc1a49f4cf8a60bdbfc262ff033b8a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 28 13:30:37 2015 +0200

    generator: move api_version to a common version_added
    
    This way the version string of each API can be used also in other
    generator modules.
    
    Mostly code motion, no actual behaviour changes.

commit d30900dba3d5703996dee64e44a3a57a27b14d55
Author: Maros Zatko <mzatko@redhat.com>
Date:   Fri May 22 17:10:14 2015 +0200

    inspector: recognize ppc64 and ppc64le archs (RHBZ#1211996)

commit 703e5ef5969589781cc820dacc731eabf851d60d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 27 21:26:01 2015 +0100

    builder: Add Fedora 22 (armv7l) image.

commit 21671619519a8493a1d5abe71a5e65b61d3630d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 20:20:54 2015 +0100

    builder: armv7l: Fix build script for Fedora 22 release.
    
    (The same change as was made in
    commit c4a54e00a333479ee31f492726a08767a8b61e46).

commit 53dd048a24f1f6831bd1c011e3f37aae9765a590
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 21:13:32 2015 +0100

    Version 1.29.44.

commit 024c84d39c0873d1d0d15ac2172bd8649f1b6ca9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 21:05:55 2015 +0100

    builder: Add Fedora 22 aarch64 image.

commit 321a736c7b657c2bc9824eb5fdc31d637e4dbae8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 13:21:19 2015 +0100

    lib: Limit space and time used by 'qemu-img info' subprocess.
    
    After fuzzing 'qemu-img info' I found that certain files can cause the
    command to use lots of memory and time.  Modify the command
    mini-library to allow us to place resource limits on subprocesses, and
    use these to limit the amount of space and time used by 'qemu-img info'.

commit 0b922b15532ea85567a6dd6c94012778f2393541
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 11:32:08 2015 +0100

    Remove src/api-support and generate this information from actions added field.

commit 73fccd77c8e9792b316bebe7ae6425e13c9e9b41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 09:10:32 2015 +0100

    generator: Check 'added' field is set for each API.

commit 154757bc7b7aa87b7c8a84e266c9979737b03e80
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 11:20:54 2015 +0100

    generator: Move version first added to generator.
    
    This change was generated automatically using the following Perl
    script, with a few hand corrections afterwards.
    
    use strict;
    my %map;
    open ADDED, "src/api-support/added" or die "added: $!";
    while (<ADDED>) {
        chomp;
        if (/^guestfs_(.*)_(argv|va|opts) /) {
            # ignore _argv, _va, _opts entries.
        }
        elsif (/^guestfs_(compare|copy)_/) {
            # ignore guestfs_compare_*, guestfs_copy_* struct functions.
        }
        elsif (/^guestfs_(.*) [01]\.(\d+)\.(\d+)$/) {
            $map{$1} = [1, $2, $3];
        }
        elsif (/^guestfs_(.*) 0\.(\d+)$/) {
            $map{$1} = [0, 0, $2];
        }
        else {
            die "cannot parse line: `$_'\n"
        }
    }
    close ADDED;
    open ACTIONS, "generator/actions.ml" or die "actions.ml: $!";
    open ACTIONS_OUT, ">generator/actions.ml.out" or die "actions.ml.out: $!";
    while (<ACTIONS>) {
        chomp;
        if (/name = "(.*)";$/ && exists $map{$1}) {
            my @v = @{$map{$1}};
            $_ .= sprintf (" added = (%d, %d, %d);", $v[0], $v[1], $v[2]) ;
            delete $map{$1};
        }
        print ACTIONS_OUT "$_\n";
    }
    close ACTIONS_OUT;
    close ACTIONS;

commit 7d50a358816b0891b1a2dd97c52be4172ecf1637
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 09:10:16 2015 +0100

    generator: Add 'added' (version when added) field.

commit ef54b6230fa612616376fc2be91d6e615a4a8de5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 08:55:49 2015 +0100

    Update API support.

commit 1c0e1707610c3785bf252be9c59e0e7c21cd88f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 09:09:25 2015 +0100

    api-support: Ignore guestfs_impl_* symbols.

commit ad82e20403fd40bb3319140ccd3c8a48e378fc36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 08:33:15 2015 +0100

    api: Don't truncate /dev/stdout or /dev/stderr when used as FileOut.
    
    In APIs such as guestfs_download, when the FileOut parameter exactly
    matches "/dev/stdout" or "/dev/stderr", don't reopen the possibly
    redirected output file with O_TRUNC (truncate).  Instead dup the file
    descriptor.
    
    This magic behaviour doesn't happen for /dev/fd/* (or any other output
    file) allowing callers the choice of using /dev/stderr or /dev/fd/2
    depending on whether or not they want truncation.
    
    This works around an annoying virt-builder bug.  If you do:
    
      $ virt-builder fedora-21 --install no_such_package -v -x >& /tmp/log
    
    then when the `--install' command fails, virt-builder will download
    the log file using `guestfs_download (g, log, "/dev/stderr")'.  Since
    this truncates the redirected /dev/stderr, the final log file is
    truncated and corrupted.
    
    With this patch the log file is no longer corrupted.

commit 617a01f02637089a024970ad7ff6998a36467a9d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 20:20:54 2015 +0100

    builder: aarch64: Fix build script for Fedora 22 release.

commit 5973a220fbe1359ac883318b9dc6f5d87a87b6b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 26 15:50:37 2015 +0100

    builder: Add Fedora 22 image.

commit b0700bbf3fdcf58a342d988069ae666caa79b5c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 21 21:52:16 2015 +0100

    v2v: RHEL 7 virt-v2v conversion server requires virtio-win.

commit ba097bb464f822f48271a7f8058742912265f561
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 20 07:40:22 2015 -0400

    v2v: Fix confusion over rhel-7 virt-v2v conversion server / appliance.
    
    This fixes commit 4c7fb62f4a301cf26a7cf1ca3a5ed0d47406fa55
    and updates commit 4e4ece53647fba810eeb45086b46d02f54e02fe2.

commit 7d3a946933b807f8d5234e62bad68b5358a5c9c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 19 16:36:42 2015 +0100

    p2v: Force systemd default target to be multi-user (text mode).

commit 8a5342185aab7b2007f4d4f08cb13ae38752e59e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 19 16:37:22 2015 +0100

    p2v: Explicitly depend on nm-connection-editor.
    
    Previously it was only being pulled in implicitly.  However virt-p2v
    runs this binary from the "Configure Network" button.
    
    This fixes commit e464774a79ff9eeedcdb3fd53efd5a7898ca036e.

commit 16699d44dac112d974710235f85d07086e06aa88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 19 14:44:32 2015 +0100

    p2v: kickstart: Try harder to stop systemd from renaming network devices.

commit b3bb5a074541a32f552544f17eb1106dfb5a0d69
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Mon May 18 06:30:07 2015 -0400

    resize: add sector size in debug_partition
    
    This patch will add fields of sector size for:
      - partition sector data size
      - target partition sector data size
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit a46cf5c492512ea726688eabd25755bcbf4ab0ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 21:16:38 2015 +0100

    Version 1.29.43.

commit b6006d429f7b98be6a3240926f753eda7192619b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 20:34:06 2015 +0100

    builder: sigchecker: Fix error message.
    
    Error messages are automatically wrapped, and don't require a newline
    at the end.

commit efa1e046d7a276c43fa9ebaf5d2d33e8b1cf71a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 20:22:05 2015 +0100

    sparsify: Use message function instead of printf.

commit cb946f48d66635e3f285ecb001298c0b598d96d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 19:10:28 2015 +0100

    ocaml tools: Translate a few messages which were not internationalized.

commit 18934a469c0a727d5da3537835f8c1bc1944adcd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 10:31:26 2015 +0100

    ocaml tools: Use global variable to store quiet (--quiet) flag.
    
    Don't pass this flag to dozens of functions.
    
    This change is analogous to the change made in
    commit 79fc6074a7e60b4b59efca7d5d58bb2a6768e4bb for the -v & -x flags.

commit d57656d66d8885f9d1f46c974df1451b0cd899f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 15:26:11 2015 +0100

    builder: Remove a few unnecessary 'virt-builder' strings from error messages.

commit 8acd0f2ac0baa00ec9e6d890beb795fda321bbeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 10:03:42 2015 +0100

    customize: Allow --selinux-relabel flag to work on cross-architecture builds (RHBZ#1212807).

commit f74fc805b993a38c5e35207fd8d1ae1bbdc2305b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 10:02:28 2015 +0100

    customize: Give a clear error message if host_cpu not compatible with guest arch.
    
    In cases where we are asked to run commands in the guest (eg.  options
    such as --run-command or --install), give a clear error in the cases
    where the guest arch is not compatible with the host arch.
    
    Similar code existed in virt-builder, but I have removed that.  Users
    will still get an error message, it will just happen a bit later on.
    
    There is a slight change in semantics here, in that architectures are
    no longer normalized when matching, but that's probably fine since
    `virt-builder -l' prints the exact arch string that people should use.

commit 36e2cad7634cb52c7cd8c31d408d190c6f102760
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 11:01:03 2015 +0100

    ocaml tools: Only tell people to use -v -x if they're not already set (RHBZ#1167623).
    
    When you get an error in tools, it will print a message like:
    
      If reporting bugs, run virt-v2v with debugging enabled and include the
      complete output:
    
        virt-v2v -v -x [...]
    
    Only print this message if -v or -x were not already specified on the
    command line.

commit 75351bc0d4ac23acf458dade1db7ec7dc678ec75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 10:31:26 2015 +0100

    ocaml tools: Use global variables to store trace (-x) and verbose (-v) flags.
    
    Don't pass these flags to dozens of functions.

commit 6cd023062752b55755058141ab15fd69c0ee7ba4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 17:35:24 2015 +0100

    ocaml tools: Define Common_utils.prog and don't pass it to every function.
    
    This large commit is just code refactoring.  Instead of having
    every OCaml tool define 'prog' the same way, always as:
    
      let prog = Filename.basename Sys.executable_name
    
    move that into a single place, Common_utils.prog.  Then we can use
    that global value everywhere else, instead of having to pass it as a
    parameter into a dozen different functions.

commit bce44c594e78b4e6d3360e4e7649a03f69468aa9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 17:37:46 2015 +0100

    resize: Remove unnecessary 'prog' from error message.
    
    The common error function already prints the program name, so
    we don't need to print it twice.
    
    Before:
    
      $ virt-resize --expand ""
      virt-resize: error: virt-resize: empty --expand option
    
    After:
    
      $ virt-resize --expand ""
      virt-resize: error: empty --expand option

commit 8b2172e2e0b1f5c84c580d8a05ba333a20170d49
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 09:51:27 2015 +0100

    builder: Fix expand partition for fedora-21 armv7l image.
    
    Thanks: d.marlin

commit 59a8f03c15b53b6c58d6351ea0fbf8ab838228ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 13:57:41 2015 +0100

    p2v: Display network card MAC address and vendor in conversion dialog (RHBZ#855059).
    
    This displays the MAC address and vendor next to each network
    interface, aiding users in determining which network cards they want
    to transfer to the virtualized machine.

commit 41997b65a8ce6a4943da9c5a76fefd583ec0cd1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 13:22:00 2015 +0100

    When calling getline first time, initialize length to zero.
    
    The man page for getline says:
    
       ssize_t getline(char **lineptr, size_t *n, FILE *stream);
     [...]
       If  *lineptr  is set to NULL and *n is set 0 before the call, then get‐
       line() will allocate a buffer for storing the line.  This buffer should
       be freed by the user program even if getline() failed.
    
    which seems to indicate that we must initialize both line and len to 0
    before the first call to getline.
    
    In several places we were not initializing len.  The program still
    worked fine, but it seems better to initialize the length anyway.

commit 5dbc4cdbf804a6a427c17898cc902e650312a149
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Thu May 14 01:19:36 2015 -0400

    resize: show sector infor in debug_partition
    
    Show partition sector data and target partition sector data
    in debug_partition.
    Also, if --verbose, call debug_partition again before
    parted partitions.
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
    
    RWMJ: Changed ~sectsize:sectsize => ~sectsize

commit 2c90a09e601a9fc171d484fa8b9e52a0fbc6cb34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 10:49:53 2015 +0100

    Version 1.29.42.

commit 3f5ca641abcb86c0f587591231b8b1dd1afdc586
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 10:49:24 2015 +0100

    build: Add ocaml-link.sh to EXTRA_DIST.
    
    This fixes commit 13dd6323015c44a6b98a72661363d53118962ccd.

commit 4795cbab26e6c3111760a9b79ba34964cf41e4f3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 13 16:45:41 2015 +0200

    mllib: link tests with automake
    
    Add a dummy C source, otherwise automake tries to look for e.g.
    common_utils_tests.c.
    
    Also, set check_PROGRAMS properly with them.

commit 5b98c8eb438b459ff8824819bd80e062bcf89d0a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 13 15:30:39 2015 +0200

    build: factor out the OCaml link.sh scripts
    
    Create a single ocaml-link.sh script, which supports a -cclib parameter
    so it can be used instead of the per-project link.sh scripts.
    As result, the libraries for each OCaml application can be moved back to
    each Makefile.am.

commit f84813904b108bb9e9daa3d3f7292705b48f869f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 12 15:17:24 2015 +0200

    configure: simplify check for oUnit v2
    
    Instead of parsing the version, try to look for the OUnit2 module within
    the oUnit package.
    
    Followup of commit 46bc79109bb51cfb656863da3635f1c8da5f6412.

commit 9674b6d8cb59c1887d2a36eb0f5b9227dc7f8dd0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 12 22:19:08 2015 +0100

    v2v: Close libvirt connection after fetching libvirt capabilities.
    
    Memory leak found by valgrind.
    
    This fixes commit e7833a5eea350ca3579d1f9e6702e116b45572fc.

commit bf9ed1cd80291643dd37e07b7c6444584dfbf25f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 12 11:48:44 2015 +0100

    fuse: Add more consistent SKIP_* environment variables.
    
    The new behaviour is as follows:
    
    Skip all of the fuse tests:
    
      SKIP_TEST_FUSE_SH=1
    
    Individual tests can be skipped by setting:
    
      SKIP_TEST_FUSE_UMOUNT_RACE_SH=1
      SKIP_TEST_GUESTMOUNT_FD=1
      SKIP_TEST_GUESTUNMOUNT_FD=1
      SKIP_TEST_GUESTUNMOUNT_NOT_MOUNTED_SH=1

commit c12a4a3dbaf1b4975c04948262ca00977d793627
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 11 19:12:43 2015 +0200

    builder: enable batch mode when validating non-verbose (RHBZ#1180170)
    
    When running gpg to validate a signature, use also --batch in
    non-verbose mode to avoid the extra "Good signature" messages that are
    printed by gpg2 even in quiet mode.
    We are parsing the status output anyway to check the validation result,
    so this should be harmless (and the full gpg output is printed in
    verbose mode anyway).

commit c7debe3e8dba8f7eca06594c8a0bbedf555f2dba
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 11 19:06:03 2015 +0200

    builder: trust the imported keys
    
    In every SigChecker, trust by default the keys imported.
    This should make gpg happier when using the keys later, used only when
    validating the signatures of index files.

commit 3317150f844c65267648a1f1a3fccf419d584c33
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon May 11 18:42:29 2015 +0200

    builder: move gpg status parsing within import_keyfile
    
    Parse the gpg status output directly within import_keyfile, returning
    just the key fingerprint.
    
    Just code motion, no actual behaviour changes.

commit 0ea8568b565d648acc3009ddcbde654c62d07636
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 11 20:44:22 2015 +0100

    configure: Ensure oUnit version >= 2 before using it.
    
    This fixes commit e12c0dfe1f0cbbc01f8f913ac2a402b37b086029.

commit e1963bff1bd1fa128cd1720e22c7ef5439f8e91e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 11 13:22:24 2015 +0100

    Version 1.29.41.

commit bd5bb69f3f39a000f08b50e7e46585a5a0f6fb70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 11 13:21:56 2015 +0100

    v2v: Add v2v_unit_tests.ml to EXTRA_DIST.
    
    This fixes commit e12c0dfe1f0cbbc01f8f913ac2a402b37b086029.

commit 4aa9bd34278f392819739f1c5bfe723aed109589
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 11 10:34:57 2015 +0100

    v2v: OVF: Add unit tests for modified OVF.get_ostype function.
    
    This adds unit tests for commit 6f9d5dce47f8502bee5d7285faf7695b22b5300b.

commit 1c31a7ce1de4835e31519e9bd8a75444220f51ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 11 10:26:53 2015 +0100

    mllib: Require OUnit2 for tests.
    
    OUnit2 has an OUnit (v1) compatibility module.  Unfortunately it
    is rather gravely broken:
    https://forge.ocamlcore.org/tracker/?func=detail&aid=1392&group_id=162&atid=730
    
    Since there is no new release fixing this, it's easier to switch to
    using OUnit2 for unit tests.

commit 3c057a942ef14687425103ad393ac413e1c4bee8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 10 16:12:33 2015 +0100

    v2v: OVF: Fix list of operating system variants for RHEV >= 3.3 (RHBZ#1219857).
    
    Since RHEV 3.3, OS variant names like "RHEL6x64" were deprecated and
    replaced by names like "rhel_6x64".  "RHEL7x64" was never valid, and
    we should have used "rhel_7x64".  "Windows2012R2x64" was also never
    valid and should have been "windows_2012R2x64".
    
    For backwards compatibility, RHEV still understands the old names, and
    we still pass them for compatiblity with old RHEV.
    
    However for the new OS variants supported by virt-v2v in RHEL 7.2, use
    the new names.
    
    This commit also adds support for SLES and ppc64.
    
    This updates commit 3c51302d691cc204e4d43f4ab9837095d424bf3b
    and also RHBZ#1213324.

commit f151334ba72de9fa3721428cbe3a16287c6bad9e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 9 17:59:26 2015 +0100

    p2v: Update documentation for Configure network button.
    
    This updates commit e464774a79ff9eeedcdb3fd53efd5a7898ca036e.

commit 9d36e25c753960c469e15d69375b240a90bb3c8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 9 17:53:57 2015 +0100

    p2v: Add tip about the root password of the virt-v2v conversion server appliance.

commit 0765c9eb1f79b84eb9b4868791833b650bcfc60e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 9 17:41:57 2015 +0100

    v2v: Remove obsolete README.RHEV-M file.

commit 7594aae05e6fdd3a6c831d5291fc97ecca57d84b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 9 17:40:42 2015 +0100

    v2v: Rename virt-v2v appliance to "conversion server".
    
    This is for consistency with the rest of the documentation.
    
    This commit also adds the files to EXTRA_DIST so they are shipped in
    the tarball.
    
    This updates commit 4e4ece53647fba810eeb45086b46d02f54e02fe2.

commit 3a9a6d969e3258a5034aa7d76690e1553b8c7cef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 8 15:46:11 2015 +0100

    v2v: Add scripts for building RHEL 7 virt-v2v appliance.

commit c4df8d1b8724f5a687445e78839a34d5eeef8ecd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 7 22:19:13 2015 +0100

    Try to discourage people from using 'make install' because it causes
    endless support troubles.

commit 2df655710ae7d2e8ffc2df71b8a4d4b4c6d451f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 6 17:10:07 2015 +0100

    Version 1.29.40.

commit 0bc70ea9571d6c928e3cd7414b776f545416639a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 6 10:50:21 2015 +0100

    p2v: Add Configure Network button (RHBZ#1167921).
    
    The old version of virt-p2v had a whole custom-written dialog which
    interacted with NetworkManager over dbus.  After trying that approach,
    it's really complex to get right.
    
    Instead this button simply opens NetworkManager's connection editor.
    
    This also adds nm-applet to the disk and starts it.  However nm-applet
    does not display any visible indication -- probably because we are
    lacking a system tray.

commit 5378d174e1d60409ef22f5164b3442273730d7c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 6 15:11:34 2015 +0100

    p2v: Switch from matchbox-window-manager to metacity.
    
    Matchbox only supports a single window on screen.  This worked fine
    until we added the NetworkManager connection dialog -- which tries to
    open in a new top level window, and of course fails.
    
    Metacity supports multiple top-level windows so doesn't suffer this
    problem.
    
    Apart from that it's hard to tell the difference between the two.

commit a1aee86a4d2f1b51c28fbbd68766fed748c4c215
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 5 20:56:38 2015 +0100

    p2v: Use "About virt-p2v [VERSION]" on the about button.
    
    This makes it clearer what the button does.
    
    This updates commit a743f57cb8e74adaccae3a6f3b3da0c6961dc5ba.

commit 5b336ba8a1c7aa892513d2d4cc5f37d325829412
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 5 16:11:46 2015 +0100

    v2v: -o libvirt: Check if the domain exists on the target (RHBZ#889082).

commit d84d85ba218c67eed393899210e5f2aa12c450e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 5 15:55:53 2015 +0100

    v2v: Add a C function to fetch libvirt hypervisor capabilities.
    
    Instead of having to run external 'virsh capabilities' command and
    parsing the output.

commit 6c573865149b0fd47ea7ffdd57f86ac90df6b642
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 5 15:10:27 2015 +0100

    p2v: Warn if vcpus or memory would be larger than supported by RHEL (RHBZ#823758).
    
    Display a warning if the number of vCPUs or memory selected in the GUI
    would be larger than the limits currently supported on RHEL 6 and RHEL 7.
    
    This is just a warning -- the user is free to ignore it and continue
    anyway.
    
    This warning does not apply if the selections were made through the
    kernel command line, because there is no place to display the warning
    for automated conversions.

commit bd3c79b012483b33472cd7c755238c3947cd8d57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 5 15:09:13 2015 +0100

    p2v: Factor out code for parsing vcpus & memory from conversion dialog.
    
    No functional change, just code refactoring.

commit 79ac708938ef9b3b8646507f1fac122ea9cc2074
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 3 14:58:59 2015 +0100

    tests/data: Add IA64 (Intel Itanium II) test binaries.

commit d35ed501a9f9ba14888599ba80c163feca0ea6fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 2 09:21:47 2015 +0100

    Version 1.29.39.

commit 3645cff4dc3303c016322e4210b67e069a274803
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 22:19:58 2015 +0100

    v2v: docs: General updates to the manual.

commit 60cf6eafbd8eb50858c6cca6e2fbf6b722affe7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 21:55:15 2015 +0100

    v2v: docs: Replace "VMware ESX" with more accurate VMware vCenter/ESXi.
    
    "VMware ESX" is no longer a VMware product.  The hypervisor is
    called VMware ESXi and the management software is VMware vCenter.

commit 48b5281c0dbb0a7bf2ab04a3654ebdc5c541d05c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 14:30:46 2015 +0100

    tests/data: Add ppc64/ppc64le binaries to the test ISO.
    
    This fixes commit 58bbb93a2514d4c40ea969aaad6b2ecf9a505b34.

commit 8d55b2994e35986eb5238fe8c40d73609d4e46b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 14:29:23 2015 +0100

    tests/data: Add mipsel (32 bit MIPS little endian) test binaries.

commit bc90a7f34f469c767f1c5dc1bc23bbf89b1fb011
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 30 15:24:15 2015 +0100

    v2v: efi: Support output of UEFI guests, for some output drivers (RHBZ#1184690).
    
    Add the Types.target_firmware type, which stores our final decision
    for whether the guest requires BIOS or UEFI on the target.
    
    Not all output modes support UEFI.  In order to fail as early as
    possible if conversion isn't going to be possible, there is an
    output#supported_firmware method which returns the list of supported
    target_firmware.
    
    Add the target_firmware parameter to output#create_metadata so it can
    select the correct firmware in the final metadata.

commit 15f466eb6c1107a148519e27c14d31c7dba06f31
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 30 14:26:30 2015 +0100

    v2v: Dump inspect and guestcaps structs when running in verbose mode.
    
    This helps with debugging.

commit 284088c1f4c79d38a631875b394af16b4616d12e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 30 14:09:46 2015 +0100

    v2v: efi: Detect if the guest could boot with UEFI.
    
    Use a heuristic to detect if the guest could boot with UEFI.
    
    This is only used where we have missing metadata (in the
    source.s_firmware == UnknownFirmware case).  Currently that only
    applies for `-i disk' and `-i libvirt/libvirtxml'.
    
    Eventually we'll be able to get this information from the libvirt
    metadata (RHBZ#1217444), so it'll only be used for `-i disk'.

commit 92ac278977dc46eaec7514837134e908a9d10386
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 30 13:44:35 2015 +0100

    v2v: efi: Model firmware in source metadata.
    
    Also modify the input_* drivers so they pull out the firmware from the
    metadata.  Currently this is only possible for `-i ova', since libvirt
    does not expose it (RHBZ#1217444).

commit 887064ba269479156dcae687bb9487aae49dec55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 30 16:23:26 2015 +0100

    v2v: efi: linux: Add support for grub2-efi.

commit 32acb8b73efd0137329a8c986ffd3ba48c217367
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 30 13:24:40 2015 +0100

    v2v: efi: linux: Remove EFI hacks.
    
    Old virt-v2v had a bunch of code for removing EFI configuration from a
    Linux guest, and replacing it with grub.  I copied this code to new
    virt-v2v but it was never tested.
    
    Now that OVMF exists, we can simply boot EFI guests directly on KVM.
    
    Thus these hacks can finally be removed.

commit 7bf928acc9d321f0020fb319de81ec4a40198c41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 30 11:19:53 2015 +0100

    mips: Ignore missing prototypes in flex-generated code.

commit 42a5027e49a59a2e3513ac84f10e5e4e92df4507
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 29 14:57:22 2015 +0200

    inspector: fix formatting of xpath result (RHBZ#1212680)
    
    Discard blank nodes when reading the XML from stdin, while enabling
    formatting in output nodes.

commit 4a29b5cecc83010fbbcc02715b189db08f117049
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 28 15:22:45 2015 +0200

    customize: add a "touch" operation (RHBZ#1212808)

commit 6c0b46be99b4da45310aab38679199ebf71c109f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 28 10:01:42 2015 +0100

    builder: Fix release notes for Debian 8.
    
    Editing inittab is not required for this version since it
    uses systemd.
    
    This fixes commit be81fbb3238abe0454f2d72e57dba5f22dbc3c8f.

commit 375092bf0c14a05b4ce787de7b5e2df11186fb63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 28 08:59:00 2015 +0100

    builder: Add Jessie (Debian 8).

commit 142db621ee48cd079b4106de075b5a68737efb33
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 27 20:29:37 2015 +0100

    Version 1.29.38.

commit d95d571f7a980cdf64546818586258a959d783f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 27 20:28:26 2015 +0100

    random_seed: Don't try to create random seed if no parent directory.
    
    Partial fix for https://bugzilla.redhat.com/show_bug.cgi?id=1215803

commit b3b5274928a0b735ef6adaf6c213f534f1c0457b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 27 15:05:15 2015 +0100

    firstboot: Don't create very long filenames for --firstboot-command (RHBZ#1212152).

commit b4544771edbfba5d97f4317cf9498ff5afed892f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 27 15:02:30 2015 +0100

    firstboot: Factor out regular expression constant.
    
    Don't need to evaluate this every time we call the function.

commit 1512738c13c731bc3a8a521f8dcb8011dec2da0b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 27 10:16:40 2015 +0200

    v2v: convert old-style libvirt listen configuration (RHBZ#1174073)
    
    Use the listen configuration from the "listen" attribute of <graphics>,
    in case <listen> is missing.
    
    Followup of commit 9360675dc244a8762e07a8a4289e7a30ca3e1eef.

commit 939f453377f61600fb9b95b741177ed87d65612e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 25 22:27:50 2015 +0100

    v2v: Remove warning when compiling --without-libvirt.

commit 5db974e7a9629b32d28d26886476ab5809739858
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 25 22:03:54 2015 +0100

    v2v: -o libvirt: Minor refactoring of arch sanity check.

commit 6679ff198f44ee36200d8890358c80a944021ca5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 25 21:45:14 2015 +0100

    v2v: Replace polymorphic variant source_hypervisor with ordinary variant.
    
    See commit 3a080c3fbffa5846f71528c6fd978be7853b33b8.

commit d06851742bb42be95d4b3c10920d5075f6394908
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 25 21:40:49 2015 +0100

    v2v: Remove further uses of polymorphic variants.
    
    See commit 3a080c3fbffa5846f71528c6fd978be7853b33b8.

commit 683c9293607dbea713060bcf5313e41145b77862
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 24 09:04:38 2015 +0100

    valgrind: Add suppression for libvirt memory leak.
    
    Related to RHBZ#1215042.

commit f6b13d417e71fbb652f91058afceb16fed4b5553
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 19:57:56 2015 +0100

    Version 1.29.37.

commit a5c5021d88403a3340bade43ac33c007be1712b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 19:57:06 2015 +0100

    builder: Add rhel-ppc64.sh & rhel-ppc64le.sh to EXTRA_DIST.
    
    This fixes commit c5f0d39c64a379cc71fc0508bdcfdaec13d0c9d9.

commit f3f72ea3c8ff6debfabfbddea5f1efebed010a06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 19:03:36 2015 +0100

    fuse: tests: Add some debugging to test-fuse-umount-race.sh.
    
    This test fails on recent kernels, sometimes.
    
    Apparently calling 'fusermount -u mp' can exit with an EBUSY error,
    but still unmount the filesystem.  Or possibly guestmount crashes
    coincidentally.  It's impossible to debug because debugging tools like
    strace prevent fuse from working at all.

commit e73630e375f6b7e7345183e4e94c70f5e261d9c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 19:02:41 2015 +0100

    fuse: guestunmount: Make the -v (verbose) option do something useful.
    
    guestunmount had a -v / --verbose option, but it didn't change the
    behaviour of the program in any way.
    
    Make it print the invocations of the underlying fusermount program.

commit f2cbc7bbe1a36113decef33ceaa38ce92534eeb0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 17:56:03 2015 +0100

    mllib: Link config.ml to the test program.
    
    This fixes commit a1646fa65c6cd544e287f25051a88c4a572ebb3e.

commit 20e19df0b3aee0f8b0b6d3afbe2277431283ebda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 10:52:08 2015 +0100

    v2v: When debugging, dump OVF to stderr.
    
    Useful for debugging problems like RHBZ#1213701.

commit 84cd3f692120b64e1acec79ea89e350add4e443c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 22 16:37:01 2015 +0100

    builder: Add scripts for generating RHEL 7 ppc64 & ppc64le images.

commit 006f4bbc863c728e559142dac1486fb3566b40c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 20 17:35:44 2015 +0100

    v2v: Pass sound card information from the source to the target (RHBZ#1176493).
    
    Collect sound card information from the source, and where possible,
    create a compatible sound card on the target.
    
    Notes:
    
    * VMware's libvirt driver, and also OVF files, do not appear to
      contain any sound card information, so it cannot be collected from
      VMware sources.
    
    * Xen does emulate sound cards and makes that information available
      through libvirt XML.
    
    * There are no paravirt drivers for sound that I'm aware of.
      Therefore we can just copy the same sound model to the target (so
      the sound device does not appear to change).  If the target, KVM,
      does not support the device, it is dropped.  But ...
    
    * ... Unfortunately we cannot easily tell which sound cards are
      supported by KVM on the target.  This is especially a problem for
      RHEL, where many sound drivers have been removed.  There is a
      convenience function, `Utils.qemu_supports_sound_card', which can be
      modified by packagers to hard code the list of supported sound
      cards.
    
    * If a sound card is dubious / not supported by the target / has any
      other problem, then we drop it, since it is more important that the
      guest boots on the target than that sound works.

commit 0209b31826cfc03d3f076eeeb0a0895da0a3469d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 20 21:06:15 2015 +0100

    v2v: tests: Don't need to generate test-v2v-networks-and-bridges.xml.
    
    virt-v2v understands relative paths in libvirt XML (even though they
    are not legal and libvirt itself wouldn't generate it).  We don't need
    to generate this file.

commit f74623aaddaca37d6e7ba2dd1267502bf5fd5f65
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 20 14:15:51 2015 +0200

    build: create and use a full version string
    
    Create a version string that includes the "extra" string as well, and
    make use of it in print_version_and_exit (which can avoid creating a new
    Guestfs handle).
    
    Folloup of commit 478a552ab431762dd2a724ade0c3fd84a21b7cab.

commit e9311d90d9716ed797ab3bfc72b1379474e3960e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 20 14:14:00 2015 +0200

    build: require Config before Common_utils
    
    Build the Config mllib module before Common_utils, as the latter will
    soon make use of the former.

commit c702d8c860deef9bc52d3717efdb688cac16f71a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 20 13:12:08 2015 +0100

    v2v: Only emit fstrim warning when debugging (RHBZ#1168144).
    
    fstrim is an optimization.  If it fails, it's not fatal (although
    virt-v2v will run a lot more slowly).
    
    We also expect that it will fail for non-aligned NTFS partitions found
    on old versions of Windows, and in that case there's nothing that can
    be done about it.
    
    Therefore only emit the warning when we are debugging.

commit f4d2efe7eb41fb41dadc80d61fa9632ec1c274cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 20 12:05:29 2015 +0100

    v2v: OVF: Add more Windows operating system variants (RHBZ#1213324).
    
    When generating OVF (eg. for -o rhev, -o vdsm) we have to put the
    operating system type into a particular field of the output, in a
    format that oVirt/RHEV will understand.  Add further Windows OS
    variants to this list.  The variants are derived by examining
    ovirt-engine sources.
    
    Thanks: Tingting Zheng for testing Windows conversions to RHEV and
    finding this bug.

commit 449d8bb38e205c35866814ba0cde98aed0ab917f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 20 08:55:03 2015 +0100

    p2v: Make --version output consistent with other tools (RHBZ#1213247).

commit 38466b963fc9ddcfc716d329c8e8c85e38f1c424
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 20 08:51:13 2015 +0100

    virt-win-reg: Make output of --version flag consistent (RHBZ#1213247).

commit edd5941651aa931d000a347d464d8da58688134f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 20 08:48:08 2015 +0100

    Common function to implement --version flag in all OCaml tools (RHBZ#1213247).
    
    Add a common function print_version_and_exit ~prog () and use this
    function to display the version in all OCaml tools, to ensure
    consistent output.

commit 092fcac1b5daf22f598fb1608a4c7d6dc610d114
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 20 08:47:45 2015 +0100

    fish: Whitespace changes.

commit cde8e31c218258d17db8142abf81d35c9bf890f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 18 11:26:03 2015 +0100

    builder: Add CentOS 7.1 image.

commit fdbb1cebc85d620d70148c2a68be62a7765ce932
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 17 20:46:13 2015 +0100

    tests/data: Add ppc64 & ppc64le test binaries.

commit 3edb16024b6479c53358c1144fcf88683e85a948
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 17 16:11:18 2015 +0100

    builder: As TCG is single threaded, use 1 vCPU for Fedora ppc64 guests.

commit 7e2067db6489ebfdf6b6cdc9cb2e0c9e89182d55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 17 11:28:43 2015 +0100

    builder: Set expand=/dev/sda3 for Fedora 21 ppc64 images.

commit 595235f8138c4dd64d7a552472caed2a9b96cb04
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 17 11:17:01 2015 +0100

    builder: Fedora 21 ppc64 images are now raw not qcow2.
    
    Fixes commit f2109068e5161a178a4413e223e7ccfe61ed07c3.

commit 609525161d7c44a30fc5dda73308c93f1429b99d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 17 09:56:10 2015 +0100

    builder: Upload new ppc64/ppc64le images which try to resolve console and partitioning problems.

commit 06f4d0e554ff040728b3bc0576570a995c36f2b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 16 14:04:04 2015 +0100

    Version 1.29.36.

commit d9cb729ce512572402b3cd633537470e3f8b5444
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 16 09:09:03 2015 +0100

    filearch: Fix memory leak.
    
    Found by 'make check-valgrind'.
    
    This fixes commit 20acc1f124a3f3af365c27b7654bead5beb1ef4c.

commit ec2ab78789cad800519d0fd53a2ddf3ea96e4326
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 15 17:53:43 2015 +0100

    builder: Use console=hvc0 for serial console in ppc64 guests, and change partitioning type to LVM.

commit a188fbba4b247f53e344af512e48fca352998c79
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 15 22:30:52 2015 +0100

    Version 1.29.35.

commit 47b83a997a3005cafe251c9a8ac653ab38934276
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 15 22:30:25 2015 +0100

    builder: Add fedora-ppc64le.sh script to EXTRA_DIST.

commit 55884f348ece6e90a4d3c1e514d092358b1e7701
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 15 15:27:11 2015 +0200

    v2v: test-v2v-i-ova-formats.sh: test ova as tar.gz and tar.xz
    
    Extend test-v2v-i-ova-formats.sh to test for tarballs compressed as gzip
    or xz; followup of commit 3c582cfb8d62013a935953e919c79009452254f9.

commit 5efaa14813dcc0695ddf7941b835224f8b217cfb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 15 15:24:12 2015 +0200

    v2v: generalize test-v2v-i-ova-zip.sh
    
    Rename test-v2v-i-ova-zip.sh (and associated data) to
    test-v2v-i-ova-formats, and generalize it a bit so it can test different
    compression types for the ova "envelope".

commit ce50b086b11219443fe8c33611025c2128d412bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 15 13:32:45 2015 +0100

    builder: website: Set format=qcow2 for Fedora 21 ppc64 images.
    
    Since I created these with virt-builder without specifying the format,
    they have format=qcow2 (not raw).  Instead of tediously recreating or
    reuploading these images, just change the metadata.

commit c1928c00bd15c61100901f1933c45509f91ba4cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 15 13:31:23 2015 +0100

    builder: In new virt-install, you must specify the format when creating disk images.
    
    New virt-install defaults to qcow2 format unless specified.
    Previously it defaulted to raw.  Specify the format explicitly.

commit aaffe9326cbaae4d1d5968491db49f40b8771ca1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 15 14:28:05 2015 +0200

    v2v: tests: add port='-1' to test-v2v-i-ova.xml reference
    
    Followup of commit 1db249a0cc21c65e0d3192567b6016745cea7e58, as it
    outputs a new port attribute.

commit a9199526a84924f40d10be3ba7389d87ba9a839f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 15 13:22:13 2015 +0200

    v2v: use .ovf and .mf files anywhere within ova files
    
    Do not rely on .ovf and .mf files being in the top-level of the ova
    archive, but search them anywhere within the content of the ova.
    
    This also changes the result of the search of the .ovf file: previously,
    one (random) file was picked in case there were more than one, while now
    this situation triggers an error.
    
    Related to RHBZ#1186800.

commit 7ecb7aeb1063c875af9f64430c396a898420c493
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 15 11:21:57 2015 +0200

    v2v: support tar.gz and tar.xz ova files
    
    When dealing with a ova detected as gzip of xz, uncompress few bytes of
    it to check whether it is a compressed tarball, and if so untar it.
    
    Related to RHBZ#1186800.

commit 1b09916e64f87d9479455009bffe55e9484186fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 15 12:43:56 2015 +0100

    builder: Upload second revision of ppc64/ppc64le templates.
    
    The serial console should be fixes in these versions.

commit 3e5c287a63e8fef24c74074c4bf5819a73e18c94
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 14 16:59:57 2015 +0200

    v2v: start importing "volume" disk types (RHBZ#1146832)
    
    Import disks stored as "file"-type volumes.
    
    Side effect: a guest converted to libvirt using virt-v2v can be
    converted again using virt-v2v.

commit 8f6ff9b4dab7146696fb0f9127ccddc1cb8ec897
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 14 16:37:55 2015 +0200

    v2v: pass libvirt connection URI to parse_libvirt_xml
    
    This makes it possible to connect to the right libvirt.

commit b01cc96df413cafed5cfe34c935283f104b4c6ba
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 14 16:35:51 2015 +0200

    v2v: domainxml: add vol_dumpxml
    
    Add a new vol_dumpxml to get the XML dump of a pool's volume.

commit bd4c3481aeb0e432e084fc33196cbd0132344344
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 14 15:16:01 2015 +0200

    v2v: domainxml: factor out connect and pool loading
    
    Factor out the connection and pool loading out of v2v_pool_dumpxml, so
    it can be used in later implementations requiring a pool.
    
    Should be just code motion.

commit f01258dce77ea4b5d48b6327e729616b12836bf9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 14 18:16:53 2015 +0100

    builder: Add Fedora 21 ppc64 & ppc64le images.
    
    This also corrects the size= field on all Fedora images.  It should
    be 6GB but was 4GB.

commit 647f5be61706ee7c7bb1161a8c21bfea587cd6db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 14 18:09:29 2015 +0100

    builder: Add fedora-ppc64le script and build ppc64le template.

commit a5cce1af4a0a6c67755059d4f0fe5c214a91608b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 14 18:06:11 2015 +0100

    builder: Update fedora-ppc64 script and build ppc64 big endian template.

commit 239a51a392a1de6d2c6abc04d82fde71446ad7fb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 14 13:22:10 2015 +0200

    v2v: convert libvirt display port configuration
    
    Read the port configuration from the XML of libvirt domains, restoring
    it when writing new libvirt XMLs instead of always setting the
    "autoport" option.

commit d7ac8cda471be59cfba4b5e165073254a903b33d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 14 11:07:57 2015 +0200

    filearch: support gzip/xz-compressed files
    
    Extract them to find out the architecture of the data they hold.
    Useful to detect the architecture of e.g. compressed Linux modules.
    
    Provide in the test.iso two samples (compressing existing test data) of
    binaries compressed with gzip and xz.

commit a788aa83150aa19a7497ef270470a1926fdbd616
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 14 10:38:54 2015 +0200

    v2v: convert libvirt display listen configuration (RHBZ#1174073)
    
    Read the listen configuration from the XML of libvirt domains, restoring
    it when writing new libvirt XMLs.

commit 6d6061e618cae55dfda1a7de735074c201d08775
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 13 11:18:46 2015 +0200

    filearch: move libmagic code in an own function
    
    Also use a cleanup attribue to ease the close of the magic_t handle.
    
    This is mostly code motion, hopefully with no actual behaviour changes.

commit b58b6a6151e5657a06b3432e83853159952183bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 13 12:01:22 2015 +0100

    v2v: Add a man page section on importing from OVA files.

commit 55dec73bd6ec73a5d7ec441b0d02e3faf198b3ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 13 11:46:29 2015 +0100

    v2v: Document that vCenter >= 5.0 is required (RHBZ#1174200).
    
    vCenter 5.0 was released in 2011.  We have not tested against any
    earlier versions, but it was reported that it does not work with
    vCenter 4.
    
    Thanks: Sokratis

commit 10680802e8aac4969fa506449c478bed8dcb6456
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 11 16:38:59 2015 +0100

    v2v: Document that Windows up to 8.1 / 2012R2 now supported.
    
    Commit 2817824bd34e30fe6a2eeb65105067bd058f1fac added support for
    converting more recent versions of Windows, but neglected to document
    it.

commit 5620a18b7f25a8ab77186d9f75cea0c0db116318
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 10 13:55:07 2015 +0100

    php: Clean up more intermediate files.

commit 0adfa27780b00827acacb0a4fed88ca24945f4fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 10 13:48:02 2015 +0100

    Version 1.29.34.

commit 7470aa1613cc37f156a518c24138add25fce0baf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 10 13:10:13 2015 +0100

    v2v: test-harness: Describe how to get the test harness.
    
    I don't think it's worth building the test harness as a separate
    Fedora package.  It just means the harness gets out of date
    quickly and is hard to install.  Instead the test cases can now
    be configured to use the libguestfs source directory to get the
    test harness.

commit 71c068737556cc6560e8081536fa76478a43243d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 7 17:01:18 2015 +0100

    v2v: Support conversion of Windows >= 8 (RHBZ#1190669).
    
    Tested on:
    
    - Windows 8.1 Pro 64 bit
    - Windows Server 2012 R2 64 bit

commit 1275839c05d1f6dbc2e0d38d8e7cadb4ef35679f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 10 09:43:41 2015 +0100

    v2v: test-harness: Don't send key to wake up guest from blank unless the display is black.
    
    Grub2 in RHEL 6 responds to any key including shift keys by entering
    the grub menu (and thus waiting for the 'user' to press Enter).  This
    means our previous strategy of always hitting the shift key before
    taking a screenshot didn't work well.
    
    Instead, take a screenshot, if it's all (or mostly) black, hit a shift
    key and take another screenshot.

commit 9b0e012e541357616060cd67c6637d6d9f85f858
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 9 19:17:59 2015 +0100

    v2v: test-harness: Match on subimages instead of screenshots.
    
    Previously we fuzzy-matched on screenshots of the entire display.
    
    There were several problems:
    
     - dates/times in images required fuzzy matching, but it's not clear
       how much fuzz to use (Windows 8.1/2012R2 timestamp is huge,
       requiring an enormous amount of fuzz)
    
    - cannot cope with Windows 7 irregular placement of windows on
      the desktop
    
    It's better to match on subimages.
    
    This requires some changes to the test data, using gimp to clip the
    images and remove any changing elements (dates/times/etc) but in the
    long run it's more flexible than fuzzy matching on the whole display.
    
    Note that because of peculiarities in 'compare' we still need to have
    a little bit of fuzz in the matching.  Seemingly bit-for-bit identical
    images still have a similarity > 0.

commit f60e354efc81d935070e8abadb72debd28999e52
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 9 17:40:16 2015 +0100

    v2v: test-harness: Improve boot loop.
    
    Take screenshots each time around the loop (every 10 seconds).  These
    are very useful for debugging.
    
    Check for the final screenshot on every iteration.  If the final
    screenshot is encountered then the guest is terminated immediately.
    
    Reverse a few loop tests to try to make the code more readable.

commit 6279ad27ef08b51ebf5e4d2f10ad5904dbe8bfb6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 9 17:39:20 2015 +0100

    v2v: test-harness: Rearrange 'in' in function definition.
    
    Just a whitespace change.

commit d205b73c3dc456b9d34e67f2bcc779cd8dba9256
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 9 13:34:46 2015 +0100

    v2v: test-harness: Use xzcat instead of unxz --keep.
    
    unxz --keep fails on the symlinks used by git-annex with this
    rather unnecessary error:
    
      unxz --keep 'rhel_511_x86_64_pv.img.xz'
      unxz: rhel_511_x86_64_pv.img.xz: Is a symbolic link, skipping
    
    Use xzcat instead.

commit 2fde53699636ef3bee6b77a258c58a89e8a426ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 9 13:34:21 2015 +0100

    v2v: test-harness: New repository URLs, and details of using git-annex.

commit 6fa478ac19d7edb657c057277e64a5d3435fd57a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 7 16:58:40 2015 +0100

    v2v: Add support for REG_MULTI_SZ (multiple strings) to registry editor.

commit a3a11a9f0d903e9ae36bcdab551a212952783dd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 1 13:04:32 2015 +0100

    v2v: test-harness: Update the man page.

commit 9cb2ec35e740fff274e6dc5fca5c97faf8429c8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 1 13:24:42 2015 +0100

    v2v: test-harness: Send different shift keys to wake up guests from screen blank.
    
    See:
    https://rwmj.wordpress.com/2015/03/30/tip-wake-up-a-guest-from-screen-blank/

commit 9d7e227b882155e07d671f7f895bb642f6582d27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 1 10:06:46 2015 +0100

    Version 1.29.33.

commit 421d088539a988ce8cee890d3375ef30d5dfa4e0
Author: Roman Kagan <rkagan@parallels.com>
Date:   Tue Mar 31 16:26:38 2015 +0300

    v2v: allow configurable location for virtio drivers
    
    Make the location of the Windows virtio drivers overridable with the
    environment variable VIRTIO_WIN_DIR, in the same vein as is done for
    virt-tools.
    
    Signed-off-by: Roman Kagan <rkagan@parallels.com>

commit ae8d6359f1c66ad103cfe76a9f2fa230ce9bc74d
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Mon Mar 30 22:15:20 2015 -0400

    actions.ml: fix a typo
    
    s/inclding/including
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 163af53f91f29354bca56322b5a11d2990f11364
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Mon Mar 30 05:39:39 2015 -0400

    resize: add p_mbr_p_type as member of type partition
    
    Add p_mbr_p_type as member of type partition
    to describe mbr partition type.
    
    Currently we use:
    List.filter (fun p -> parttype <> MBR || p.G.part_num <= 4_l)
    to filter out logical partitions.
    
    Commit 0c396a4bce578486dfc4a38e1f8c47fd5c2836ea
    introduce API part_get_mbr_part_type,
    we could use this to know the part_type.
    Furthermore, we could also use p_mbr_p_type for resizing
    logical partitions.
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 1e863bfbd01ef1d9413cdaea22f41520f954a3bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 30 13:25:37 2015 +0100

    v2v: test-harness: Don't need to use Unix. prefix, since module is opened.

commit a7029d2ab914f81e2569e84a0b1267fe8a5b5410
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 30 13:25:01 2015 +0100

    v2v: test-harness: Send shift key to wake up screen from blank before taking screenshots.

commit abffaf0164c6226d22f6d553ac2d0cb68ef5be92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 30 13:23:10 2015 +0100

    v2v: RHEL 4: You have to update lvm2, device-mapper to get virtio support.
    
    Also include the updated selinux policy that goes with RHEL 4.8.
    
    Also mention that policycoreutils should be updated - see previous
    commit.

commit 498fbc3cae5ec839f4c309c36fcae46be68751a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 30 13:22:58 2015 +0100

    v2v: Add note about RHEL 4 conversions hanging during SELinux relabelling.

commit 662eb11307adbc0c38f0beacd1d2b9704ce68ea0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 30 09:43:34 2015 +0100

    builder: Fix arch= field in previous commit.
    
    Fixes commit 8ddc56473025ef2f294562b5317c5f3f8684864f.

commit 5fab0b25703e6dacfdf3e356c5b957be9b51a231
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 30 09:09:22 2015 +0100

    builder: Update index for new armv7 Fedora guest.

commit 8499701f3c16f726ef9b096eed9fc959f342e6f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 28 23:20:13 2015 +0000

    builder: Add script for building Fedora armv7l (32 bit ARM) guests.

commit a504fdd3ca5593c0ed005cb838b1fcb0e7abd84a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 28 18:08:21 2015 +0000

    ruby: Only rebuild rdoc when absolutely necessary.
    
    Rebuilding the ruby documentation takes 51 seconds on my laptop, and
    that's a significant fraction of the entire build.  Make sure we only
    rebuild the documentation when necessary.

commit c14eed0962c408badee5a8b0d4aaac884cac67a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 28 17:53:35 2015 +0000

    guestfs-performance: Suggest using 'ts' instead of annotate.
    
    'ts' allows incremental timings which is a lot more useful.

commit 8022b2c1c36d84d51c7a84f49f40f1a3cc60619a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 28 10:15:57 2015 +0000

    lib: Fix static linking by forcing launch-*.o objects to be always linked.
    
    Because the launch-*.o objects only contain statically scoped
    declarations, the linker doesn't need to link them in.  This causes a
    problem when static linking as they will be left out of the final
    binary, and so no backends will be available.
    
    This is essentially the same problem as described here:
    
    https://stackoverflow.com/questions/1202494/why-doesnt-attribute-constructor-work-in-a-static-library

commit f28c2a584c3da6a5278761a145470aa15c7d08a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 27 22:42:03 2015 +0000

    build: Fix ./configure --without-libvirt option.

commit 05db04e1131763b827911e5db5c2ae256274771e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 27 22:44:07 2015 +0000

    lib: Remove bogus visibility declaration (GUESTFS_DLL_PUBLIC) from internal function.

commit 86dca63b0066e28b806e522e76a2467711458074
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 27 11:02:18 2015 +0000

    Version 1.29.32.

commit 5741e9cb441b3d341bc8436a89cb7d46f408a66a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 27 10:59:57 2015 +0000

    fuse: Add a note about preserving inode numbers using -o use_ino.
    
    Thanks: David Juran

commit c1b5f732da2ab353fdc0129e4ccbcc55e77b0330
Author: Maros Zatko <mzatko@redhat.com>
Date:   Thu Mar 26 16:47:58 2015 +0100

    customize: fix --upload to FAT partition (RHBZ#1196101)
    
    Some filesystems, such as FAT doesn't support file
    ownership, so show warning instead of error on EPERM.

commit 6260abca8a6b6373e93e9b8f028206c18870efa1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 26 11:19:47 2015 +0000

    builder: Fix rhel 5 repository location.
    
    RHEL 5 was unusual in having separate sub-repositories (Server, VT,
    Cluster etc) within the main RHEL-5-Server directory.  Thankfully no
    other version of RHEL does this.  Previously we set up the repository
    baseurl incorrectly so it didn't include .../Server in the path.
    
    In commit 1a1cb1ec3cdc24262db4de2f8bf12d3479096882, I tried to fix the
    RHEL 5 repo location to include .../Server.  However that broke the
    virt-install --location parameter.
    
    Use a separate baseurl path, which should fix both problems.
    
    This fixes commit 1a1cb1ec3cdc24262db4de2f8bf12d3479096882 and
    commit 3bc9ba6c8447cde07db057aea76d0d72f5d833df.

commit 50e73b74777fbea97306ddf3307b97e9feccda9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 26 11:18:16 2015 +0000

    Revert "builder: Fix RHEL 5 download location."
    
    This reverts commit 1a1cb1ec3cdc24262db4de2f8bf12d3479096882.

commit 7d39b96fba6b8ad9647f403fdda05ae49ddecdc4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 26 09:42:52 2015 +0000

    v2v: test-harness: Rebuild v2v_test_harness.cmi if OCaml API changes.
    
    The error you would have seen before was:
    
    File "v2v_test_harness.ml", line 1:
    Error: The files ../../ocaml/guestfs.cmi and v2v_test_harness.cmi
           make inconsistent assumptions over interface Guestfs

commit 74085614ceee5dd001faaf4462a476278fdd2032
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 26 09:16:44 2015 +0000

    ocaml: Add Guestfs.Errno.errno_EPERM.

commit ef465eee6ff7143f1b819bb5ec330dff5b43087b
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Tue Mar 24 07:20:17 2015 -0400

    New API: part_get_mbr_part_type for showing partition type
    
    This patch will add support for getting partition type
    of a partiton numbered device.
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 5b0724b79ae5ed9f62d67bc3ab20672f25fcf8d2
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Tue Mar 24 07:20:16 2015 -0400

    parted: introduce enum for whether parted has option -m
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
    
    RWMJ: Use enum consistently, don't assign the result to int.

commit 9c9ed766e964d04195b680c84065db8459adaf8c
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Mon Mar 23 22:51:48 2015 -0400

    New API: btrfs-image
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 18c66dfb7bb4f2cbc31ec9d4e02df9e206f81e5b
Author: Maros Zatko <hacxman@gmail.com>
Date:   Mon Mar 23 19:47:25 2015 +0100

    customize: add --move (RHBZ#1203817).
    
    This adds --move SOURCE:DEST, equivalent of calling g#mv src dst.
    
    RFE: RHBZ#1203817

commit 1747f6541b51fcbf3abf5784a7c0a0fccf000660
Author: Maros Zatko <hacxman@gmail.com>
Date:   Mon Mar 23 19:46:33 2015 +0100

    customize: add --copy (RHBZ#1203817).
    
    This adds --copy SOURCE:DEST, equivalent of calling g#cp_a src dst.
    
    RFE: RHBZ#1203817

commit 3b79b786c4597c1c2e74408461327de822b98457
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 23 14:03:14 2015 +0000

    Version 1.29.31.

commit 6582c0fb742ca8899a1528d3f52d74aec3182e49
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 23 13:59:00 2015 +0000

    builder: Add test-virt-index-validate-good-3 to EXTRA_DIST
    
    Fixes commit fc6c16af0b765e39793554db0f55bd75f53fce9f.

commit 630226399c68da6b203673b5fa4e531068a2775f
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Mon Mar 16 05:44:19 2015 -0400

    btrfs-qgroup-show: add check for "--raw"
    
    btrfs-prog commit:
    58a39524619f38d193b8adc3d57888ec07b612aa
    change the default output to binary prefix,
    and introduced a new option '--raw'
    to keep the traditional behaviour.
    
    This patch will add a check function to determine
    whether to add '--raw' option to 'btrfs show qgroup'.
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit d5507c4ddf56f4eefbf1def6d8b7249ac084694a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 13 15:02:58 2015 +0100

    builder: handle empty lines in indexes before first section (RHBZ#1201526)
    
    Properly skip empty lines before the first section, otherwise they will
    trigger a syntax error in parsing.
    
    Add a simple test for it, so it doesn't regress.

commit 137110102ef7af2d4a0fe26f6a774b76cb94fc6a
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Fri Mar 13 05:59:38 2015 -0400

    tests: add test case of set-label and vfs-label for btrfs
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit e920c96306178873b9fe0e8773e7939ef24dcaa3
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Fri Mar 13 01:32:59 2015 -0400

    guestfs.pod: don't encourage 'make syntax-check'
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 50f180ef342effaaca1781788c3c4d2593bb3f98
Author: Maros Zatko <mzatko@redhat.com>
Date:   Thu Mar 5 16:42:45 2015 +0100

    customize: add --truncate-recursive option
    
    Allows user to recursively truncate files in PATH. e.g.:
    virt-builder --truncate-recursive /var/log
    
    Relates to RHBZ#119673

commit cabe5e8b037d85a2324f739d58688a53340beb9a
Author: Maros Zatko <mzatko@redhat.com>
Date:   Fri Feb 6 14:11:13 2015 +0100

    virt-copy, virt-tar: show help for --help

commit 5e636c35619bf3132d4720f38c853381cbc66a06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 23 12:14:59 2015 +0000

    docs: You normally need to set SUPERMIN_KERNEL_VERSION as well.

commit 8a267cd14b0e0a092427e92119cc8940a453468c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 23 12:12:23 2015 +0000

    docs: Remove some rogue references to 'febootstrap'.

commit 8a0e077a76510b799123464d4a015ccb1c489d70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 20 12:14:42 2015 +0000

    v2v: test-harness: Add support for OVA.
    
    This makes VMware testing easier, since it means you don't need to
    test against a live server.

commit eaedaa03d2c3e0e70196654b2765c034219c44c2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 12 17:31:57 2015 +0100

    generator: small optimization of pod2text cache memoization
    
    Instead of save every time there's a new element in the cache, batch the
    saving to disk every 100 changes, saving the unsaved remainder at the
    exit.
    
    While not a big optimization, this reduces a bit the disk usage during
    generator run.

commit bc488988b08d632c3092d3076c77a6c546cd9c38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 12 15:02:59 2015 +0000

    v2v: test harness: Add list of FILES to the manual page.

commit 951ba33c908ca0df7664a64709873bafef1c3533
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Thu Mar 12 03:00:47 2015 -0400

    guestfs.pod: fix a typo
    
    s/applicance/appliance
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit dc0fd993ff37f435d4ffdd496763d2db3dff5761
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 11 17:24:59 2015 +0000

    Revert "launch: libvirt: In debug messages use ls --lcontext instead of ls -Z."
    
    The --lcontext option was removed from coreutils ls (in 2007, cough).
    
    Fedora carried a patch re-adding these options [I believe
    unintentionally], but that patch was dropped in Fedora 23, so the
    --lcontext option is gone for good.
    
    This reverts commit f9c5b4aa2a6e8890eb20e15165bbe6820e6011b5.

commit e04e5d1f37d2c55bf82f4400a6462c15dfd062ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 11 15:08:30 2015 +0000

    tests: mount-local: Print some more debugging along error paths.
    
    Trying to track down a memory leak somewhere.

commit 846c8f0716710a662c9050ce6f91e09c4b8bcdcb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 11 15:05:13 2015 +0000

    v2v: test-harness: Fix boot loop so it detects disk inactivity properly.

commit c579d13e3914c203ebabf4f55ffa16b2e95ed2b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 11 15:02:58 2015 +0000

    v2v: test-harness: Measure similarity between images when comparing screenshots.
    
    Since wallclock time differs between boots, we cannot just compare two
    screenshots by checking if they are identical -- if the screenshot
    contains any time information, then that will be different, and it
    turns out that VMs print the current time at boot.
    
    Therefore parse out and use the "similarity" metric printed by the
    ImageMagick "compare" command when it compares the screenshots, and
    allow a small epsilon for the case where a few oixels are different.

commit 41856ed53e79dcbf3b210fbeae43469cae268a56
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 10 21:47:15 2015 +0000

    Version 1.29.30.

commit 719007cb67fbd09158af96d742fe4abea6db80ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 10 14:58:08 2015 +0000

    v2v: Add the test-harness used by external tests.
    
    See the new man page virt-v2v-test-harness(1) added in this commit for
    details of this library/harness, and also how to get the external
    tests.

commit 4a19664a860340e80f2afe753788dfa7f16579ee
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Tue Mar 10 06:05:43 2015 -0400

    gui: fix a syntax-check issue of bindtextdomain
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 9efc047d7633069dc057a47916241b4a96708f99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 10 16:50:32 2015 +0000

    po-docs: Update list of manual pages to be translated.
    
    There should be an automatic way to keep this list updated, but while
    there isn't, keep it updated by hand ...

commit 1c768911d9aeb90d4351dfd5aec332f6ab57d72c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 10 10:15:42 2015 +0000

    builder: Fix path to RHEL source RPMs in internal repo.
    
    Thanks: Jan Scotka

commit 3bf8264d842150eea859799ccd4bbe242c27a073
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 9 17:49:21 2015 +0000

    FAQ: Don't refer to RHEL 7 in future tense.
    
    Thanks: orc_emacs on IRC.

commit 4fbdb6b7b8e5a0b4650b55636281d9d133aeb66b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 9 13:13:16 2015 +0000

    builder: Fix comparison between signed/unsigned in parallel xzcat.
    
    block.header_size is uint32_t so cannot be compared directly with n (ssize_t).
    
    pxzcat-c.c: In function 'worker_thread':
    pxzcat-c.c:602:21: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
         if (n >= 0 && n != block.header_size-1) {
                         ^

commit 3f03fde46657f69c24b6858ae78ee95830316302
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 6 17:05:50 2015 +0000

    v2v: xml: Add some more bindings to libxml2.
    
    These are not used by libguestfs, but are used by the external
    virt-v2v tests.

commit 71e1c402c42b96e6d90cd4639765bf8e8992a4ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 6 17:02:58 2015 +0000

    v2v: xml: Remove dependency on libguestfs internals.
    
    This is just so I can share the code with the virt-v2v external tests.

commit 4271a0da992007c2884b2986f8291bc081f48b81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 5 13:42:20 2015 +0000

    Version 1.29.29.

commit 56768f36d59e0e7ba9fbe81aed4303f1a93862c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 5 13:41:21 2015 +0000

    bugs: Ignore bugs in RELEASE_PENDING state.
    
    It's effectively the same as CLOSED.

commit 01fb348b9e994daf9fd973c3e5d2c313dbae05b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 5 13:39:21 2015 +0000

    builder: Add fedora-ppc64.sh script to EXTRA_DIST.
    
    This updates commit 7867abc5c2f3d25c4bd681b85ac8216de7a9121d.

commit 89ced744862c6934b361236af69bee26ec6944fd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 3 15:39:13 2015 +0100

    actions: improve man page links
    
    Switch from C<> to L<> for links to man pages, where wasn't done before.

commit 738b11efe2f5de8992c372a021b1114d742f5ffe
Author: Maros Zatko <mzatko@redhat.com>
Date:   Thu Mar 5 01:20:07 2015 +0100

    builder: add build script for PPC64 Fedora

commit dbf955ca4cf8b98e649b32c52901e623441c44ae
Author: Maros Zatko <mzatko@redhat.com>
Date:   Thu Mar 5 01:03:54 2015 +0100

    customize: add --truncate option (RHBZ#119673)

commit 92a9e0fd5d8eed3adb103c5ddf5ee8c6500c7411
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 5 12:18:23 2015 +0000

    arm: Ignore -Wpointer-to-int-cast in c-pointer API.
    
    This API converts the C guestfs_h pointer to a 64 bit integer,
    which should always be possible on reasonable architectures.
    Therefore silence a GCC warning (which only occurs on 32 bit ARM).

commit 15787a4f30e15963a4c888e42b2a9b9efb5df472
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 5 10:25:46 2015 +0000

    arm: Use -M virt on 32 bit ARM, don't pass -dtb parameter.
    
    Note this means all the dtb code in libguestfs & supermin is
    obsolete/unused, and may be deleted at some point in future.

commit 41478b3b8df3e09ddf3f2b60c9a283ec5c1bba52
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Tue Mar 3 02:31:55 2015 -0500

    actions.ml: fix a typo
    
    s/tto/to
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit d1c44fe3d09773c315e94bd0d5ab002587998c47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 2 17:41:37 2015 +0000

    ocaml: Don't run check-valgrind on run-bindtests (bash script).
    
    Fix the 'make check-valgrind' rule in the ocaml subdirectory so it
    doesn't run '$VG run-bindtests', effectively running valgrind on bash.
    
    Bash in Fedora Rawhide has added a new memory leak, resulting in a
    failure, but we don't want to test bash anyway.

commit 5a74f699bdbbb67ad98f75c8974acc386ccdee2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 2 13:54:13 2015 +0000

    Version 1.29.28.

commit c60dbaaa47e427e79520fc4afe7da3e0794966a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 2 13:53:12 2015 +0000

    build: Fix 'maintainer-check-extra-dist' to only list relevant files.

commit 23acb2fdc530b7fed9640f2f46e12792cebc20da
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Sun Mar 1 02:20:49 2015 -0500

    New API: btrfstune_enable_skinny_metadata_extent_refs
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 1030e5005a6d1e5b768ac214f6fcb446d230bc7b
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Sun Mar 1 02:20:48 2015 -0500

    New API: btrfstune_enable_extended_inode_refs
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit 548cb07c3a201377ab428a5e441c8685db2e0638
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Sun Mar 1 02:20:47 2015 -0500

    New API: btrfstune_seeding
    
    Use btrfstune_seeding to enable or disable seeding.
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit d1562ad1a80f1d77070252c65e287c69422d1b02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 2 09:11:47 2015 +0000

    builder: Fix 'os-version' in man page examples.

commit d57977d86c73c774316e390042a5366da7ed487c
Author: Michael Scherer <misc@zarb.org>
Date:   Sun Mar 1 01:12:49 2015 +0100

    Use a debian distribution for the apt example

commit 95c3d2d0c73ea50187fdc81f1b84c487469ea216
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 28 11:10:31 2015 +0000

    appliance: Create /etc/mtab in init script to work around util-linux nuttiness.

commit 18dced0cc518a53599e73cf7bacf7feda36a80c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 27 14:38:07 2015 +0000

    Version 1.29.27.

commit 821d428dee1c4c233a2f263398110227ffa1527e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 27 14:37:07 2015 +0000

    po-docs: Ship some untranslated PO files.
    
    Add untranslated PO files to EXTRA_DIST.

commit 9936c27fd224c5de275803daec630c583f0d17ee
Author: Roman Kagan <rkagan@parallels.com>
Date:   Fri Feb 27 15:20:18 2015 +0300

    convert_windows: split firstboot into steps
    
    Instead of doing all firstboot actions in a single script, take the
    advantage of the firstboot infrastructure and store and run unrelated
    actions as individual steps.
    
    This facilitates troubleshooting and fault recovery; besides it makes
    adding more actions easier.
    
    Signed-off-by: Roman Kagan <rkagan@parallels.com>

commit e5fb055583cb723cbad3af680b1ea5bf5310c0c6
Author: Roman Kagan <rkagan@parallels.com>
Date:   Fri Feb 27 15:20:17 2015 +0300

    firstboot: make script naming descriptive
    
    The firstboot infrastructure used to give the firstboot scripts some
    cryptic names which were impossible to relate to the actions they were
    supposed to take.
    
    This patch reworks the scheme such that the caller registering a
    firstboot script has to provide a descriptive name for the action.  That
    name, with non-alphanumeric characters replaced with dashes, prefixed by
    the serial number, is then used as the name of the script, e.g.
    
      0004-install-gcc
    
    or
    
      0002-msiexec--i-foo-msi.bat
    
    OTOH the numbering becomes internal to the API, i.e. the scripts are
    numbered and executed in the order they are registered.
    
    This greatly facilitates debugging and troubleshooting in case when
    there are multiple firstboot scripts.
    
    Signed-off-by: Roman Kagan <rkagan@parallels.com>

commit fd2eb8d832a8bb9798fa30562e1aea2bf5e02261
Author: Roman Kagan <rkagan@parallels.com>
Date:   Fri Feb 27 15:20:16 2015 +0300

    firstboot: enhance firstboot driver script for Windows
    
    This patch is an attempt to enhance the firstboot driver script for
    Windows, and make it somewhat closer in functionality to what is done
    for Linux guests.
    
    Specifically, for every firstboot script it now will log its exit
    status, and, if the script reported success, move it to -done directory.
    
    Signed-off-by: Roman Kagan <rkagan@parallels.com>

commit bbeb84495f9e89244635b2fb7e170a28f074e034
Author: Roman Kagan <rkagan@parallels.com>
Date:   Fri Feb 27 15:20:15 2015 +0300

    firstboot: consolidate line ending conversion
    
    This patch moves line ending conversion for windows scripts into a
    separate helper function.
    
    This simplifies code a bit, and fixes the problem that actual firstboot
    scripts used to remain with unix-style line endings.
    
    Signed-off-by: Roman Kagan <rkagan@parallels.com>

commit 83e72e1da240147c89b41e8d39aee183a2323224
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 26 10:01:14 2015 +0100

    builder: handle -v and -x flags like in other tools (RHBZ#1196100)
    
    Make sure that -x enables tracing and -v enables verbose mode, just like
    other tools do.
    
    Kind of followup of commit b6b9b90dd74c7b9204bdf218aa9360e117308e78.

commit 688e62d73db21163e7c17b6f744c461455e72afc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 23 14:08:02 2015 +0100

    builder: use mkdir_p to create the cachedir (RHBZ#1195204)

commit b0db7ed42945c5cb2867b38c6a45b565579a0b8f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 23 14:04:00 2015 +0100

    mllib: add helper mkdir_p
    
    Small function to create in OCaml-based code a directory and its
    parents, much like `mkdir -p`.

commit ff2f43ec83e7c6c3caa9ffb19eee09cee776c5ac
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 23 10:58:58 2015 +0100

    build: fix distfiles for zanata
    
    Followup of commit c328ac9e0473197dd563cfc123c417a5261fb39e.

commit d92ba2415d86565615fda2a661c0965edae21fd1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Feb 22 14:33:14 2015 +0000

    Update translations from Zanata.
    
    I added the new linguas for the po/ directory.  But not for the
    po-docs/ directory, since the new po files hardly contain any
    translations there.

commit fb3a494edce4df93734438c406c4004f2592937d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 18 14:42:54 2015 +0000

    Move upstream translations from Tranifex to Zanata.
    
    This is at the request of the Fedora localization team.
    For further information see:
    
    https://www.redhat.com/archives/libguestfs/2015-February/msg00168.html

commit 0bd12994992b94e27b2fb2decb788ff067295e4a
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Wed Feb 18 15:59:48 2015 +0200

    Fix a bug in e2fsck execution code
    
    Use commandrvf() instead of commandvf() to execute e2fsck. A non-zero
    exit status does not always indicate a failure.
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit 664a37a12abaaaf60887f57ba66855e63e09d7c8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 17 16:24:12 2015 +0100

    builder: when not checking sigs, ignore --fingerprint args (RHBZ#1193237)
    
    When the user chooses to not verify the signatures on the indexes
    (using --no-check-signature), there is no point in requiring as many
    --fingerprint as --source (or even just one), as they will not be used
    anyway.
    
    In this case just ignore all the values of the specified --fingerprint
    arguments.

commit 79f84cee8e4791814611e9116c42291cb19264fa
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 17 15:48:22 2015 +0100

    builder: process --source sources before
    
    Process the sources specified via the --source command line arguments
    before sources read from repositories, so the former have a chance to
    "override" the latter.
    
    Related to RHBZ#1193238.

commit 51bf0990562155244485beb00b8c7f22d878815d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 17 12:11:41 2015 +0000

    Version 1.29.26.

commit b07b22ea73e36f84cf3160b74a56f45f6696d19c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 17 12:11:12 2015 +0000

    aarch64: Add fedora-aarch64.sh builder script to EXTRA_DIST.
    
    This fixes commit 5809a5a802f4999d759e247eec5bbdf664835e80.

commit 0adc3128cb41fddc7275f407dc65dc0313c90f9e
Author: Maros Zatko <mzatko@redhat.com>
Date:   Fri Feb 13 13:05:43 2015 +0100

    inspector: add /reactos as systemroot
    
    Fixes RHBZ#709326
    Related bug RHBZ#709327 seems to be already fixed in ReactOS 0.4.

commit fab93899d942260b5e4349e57a0a0c375cc2aaf5
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Sun Feb 15 20:45:18 2015 +0800

    New API: btfs_scrub_status
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit b0783a7464a96dad6d3ecf475b1394a7d29c7723
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Sun Feb 15 20:45:17 2015 +0800

    New API: btrfs_balance_status
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit dda79442ca04359a1cbd4bea2f9c9554f777924f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 20 17:46:53 2014 +0000

    v2v: -o libvirt: Prevent possible XPath injection.
    
    Ensure the arch string is sane before using it in the following XPath
    expression.  Since the arch string can be derived from untrusted guest
    data [see src/filearch.c], this prevents a possible XPath injection
    vulnerability.

commit 39092f1e8724ac2fc1484418289fd884bd46d5c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 14 17:21:48 2015 +0000

    python: Call PyErr_Clear() on non-error paths out of the Python bindings.
    
    We also need to be more careful about PyString_FromString and similar
    functions returning NULL on failure.  Currently we don't check this
    every time.  This commit adds more checks, but is still not complete.

commit 5904dfac4fbe433945b92e398ccced3f410aff8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 14 16:35:25 2015 +0000

    Whitespace changes arising from the previous two commits.

commit a25b9295e50d91daf37dd3537e061ed4559a04c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 14 15:26:15 2015 +0000

    Change guestfs__* to guestfs_impl_*
    
    libguestfs has used double and triple underscores in identifiers.
    These aren't valid for global names in C++.
    
    The second step is to replace all guestfs__* (2 underscores) with
    guestfs_impl_*.
    
    These functions are used where a libguestfs API call is implemented on
    the library side.  The generator creates a wrapper function which
    calls guestfs_impl_* to do the work.  (Libguestfs APIs which are
    passed directly by the daemon work differently and don't require a
    guestfs_impl_* function).
    
    This is an entirely mechanical change done using:
      git ls-files | xargs perl -pi.bak -e 's/guestfs___/guestfs_impl_/g'
    
    Reference: http://stackoverflow.com/a/228797

commit 2981f5fb938963ac6068fcc84c4917b421f1517e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 14 15:14:48 2015 +0000

    Change guestfs___* to guestfs_int_*
    
    libguestfs has used double and triple underscores in identifiers.
    These aren't valid for global names in C++.
    
    The first step is to replace all guestfs___* (3 underscores) with
    guestfs_int_*.  We've used guestfs_int_* elsewhere already as a prefix
    for internal identifiers.
    
    This is an entirely mechanical change done using:
      git ls-files | xargs perl -pi.bak -e 's/guestfs___/guestfs_int_/g'
    
    Reference: http://stackoverflow.com/a/228797

commit 6f270d334f1b3b74d2de869137d1d2c7550b019e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 14 17:39:51 2015 +0000

    Update gnulib to latest.

commit ead3542bd6ae1a6dc511d941eaffeea0c8b5ec0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 14 17:08:05 2015 +0000

    Update TODO.
    
    Remove some things which have been implemented already.

commit 22d625e1c48ca157833b6119e5490323ad90da05
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Fri Feb 13 21:26:14 2015 +0000

    fuse: Alternatives for Linux-specific commands
    
    * fusermount is Linux-only; on BSD and OS X umount should be used
    * fuser has no -v flag on BSD/OSX, and -c is the
      POSIX-compatible equivalent of -m
    * Does not solve the lack of pretty output of fuser -v, but does make it
      work on Mac OS X.

commit 5b4a607f77434d9e5393a409ab10000715772c0f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 13 14:46:28 2015 +0000

    aarch64: builder: Fix metadata so virt-builder --size works.
    
    The wrong partition was being expanded.
    
    This fixes commit 5809a5a802f4999d759e247eec5bbdf664835e80.

commit 840569fe77fa3214be7ca48d2a367d301e4e3e1c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 13 14:37:46 2015 +0100

    php: skip bindtests on 32bit platforms
    
    bindtests checks also 64bit int values, which won't work when the
    underlying platform has sizeof(long) < 8 (like on 32bit architectures).

commit 69b4d266499e2f958e233fe80d59c3fdedc4a5d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 13 10:47:19 2015 +0000

    daemon: btrfs: Remove full stop from end of error message.
    
    This fixes commit 56732ed6a08af7e3f7f1f17e89e8dc62cf3d4f4a.

commit 1cfd0d555a399fb1347a261641094874bfe4c283
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 13 09:36:47 2015 +0000

    ./run: Use 'prepend' function to build paths.
    
    Add a bash function 'prepend' for intelligently prepending elements to
    paths.  eg:
    
      prepend PYTHONPATH "/foo"
    
    would set PYTHONPATH to "/foo" or "/foo:<previous-contents-of-PYTHONPATH>"
    
    Tested by:
    
    (1) Building and testing libguestfs twice: first without libguestfs
    installed as a system library, and then with it installed.
    
    (2) Examining the output of './run printenv' by hand and comparing
    environment variables to the expected values.

commit 169e127cedc97762e7bc78414d16289f27a4da5b
Author: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Date:   Fri Feb 13 17:00:11 2015 +0800

    actions.ml: fix a typo
    
    s/scannning/scanning
    
    Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

commit eb5ba75662b167bbaba1629678cafb97d82bbba2
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Thu Feb 12 22:37:07 2015 +0000

    lib: Check if crypt() comes from a separate library
    
    Mac OS X includes crypt() in libc.

commit ac0f23f07c70379badf915493c375ba27b3a4a4f
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Thu Feb 12 22:37:06 2015 +0000

    run: Set DYLD_LIBRARY_PATH along with LD_LIBRARY_PATH
    
    Mac OS X uses DYLD_LIBRARY_PATH rather than LD_LIBRARY_PATH.

commit f8b5fe621ea456752c1ab265078d0f7a633534b7
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Thu Feb 12 17:28:46 2015 +0000

    macosx: Includes/defines for byteswap operations

commit 3bae870320c17949b8359f37326bb201329b97d9
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Thu Feb 12 17:28:48 2015 +0000

    lib: Add third, zero parameter to xdrproc_t
    
    As advised by Daniel P. Berrange, the third parameter can be passed on all
    platforms rather than specifically Mac.
    
    Quoting a libvirt commit rationale after Daniel:
    
     commit 9fa3a8ab6fd82ad2f5a14b490696085061418718
     Author: Doug Goldstein <cardoe@cardoe.com>
     Date:   Wed Oct 30 11:22:58 2013 -0500
    
       MacOS: Handle changes to xdrproc_t definition
    
       With Mac OS X 10.9, xdrproc_t is no longer defined as:
    
       typedef bool_t (*xdrproc_t)(XDR *, ...);
    
       but instead as:
    
       typedef bool_t (*xdrproc_t)(XDR *, void *, unsigned int);
    
       For reference, Linux systems typically define it as:
    
       typedef bool_t (*xdrproc_t)(XDR *, void *, ...);
    
       The rationale explained in the header is that using a vararg is
       incorrect and has a potential to change the ABI slightly do to compiler
       optimizations taken and the undefined behavior. They decided
       to specify the exact number of parameters and for compatibility with old
       code decided to make the signature require 3 arguments. The third
       argument is ignored for cases that its not used and its recommended to
       supply a 0.

commit 8588a6aaeb0b85c9dd5a96658f5d49f269afd534
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Thu Feb 12 17:28:47 2015 +0000

    builder: Check HAVE_POSIX_FADVISE before using it

commit 29070262c32eb83547affda62dd85226ddeb9e3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 12 16:35:46 2015 +0000

    aarch64: builder: Add script for building Fedora aarch64 images.

commit f690cf8728b6a6a91f395a1a6939463dc4db0fb1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 12 15:07:58 2015 +0100

    ocaml: hide internal methods from apidocs

commit 71d31945afa33eed129f006e133077fbc3139744
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 12 13:53:10 2015 +0100

    actions: fix a couple of docs references

commit e42e16d0c01bc1808b32e80321465038e4c3b326
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 12 10:32:25 2015 +0100

    gobject: generate deprecation markers
    
    Generate proper deprecation markers for API documentation and
    introspection annotations.

commit 100506baf569aaade94d5b08dbaf81eb6d40df0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 11 17:03:05 2015 +0000

    Version 1.29.25.

commit 415c78ab69ce6da122111ba8dd86563b308ee295
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 11 15:30:55 2015 +0000

    tests/charsets: Fix bogus comparison of STRNEQ() == -1.
    
    gcc 5 rightly flags this code as bogus.

commit 343849df28f261ce5b634635dbb95342471064bc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 11 15:46:19 2015 +0100

    java: further <p> fixes
    
    javadoc's HTML parser seems more limited, so just close <p> blocks
    before opening <pre> or <ol>.
    
    Followup of commit f4186a7a492f94661cf367684af3c54e21700afc.

commit 286ac8364ee5c76a4000a5b008a5ffe056c6bded
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 10 17:28:01 2015 +0100

    php: add a simple bindtests test
    
    Generate a simple bindtests test for the PHP binding, so it is possible
    to easily test all the argument types.
    
    Unlike the bindtests for other languages, optional arguments are not
    tested, due to the limitations of optional arguments in PHP (or maybe
    they way we implement them).

commit 05dceba2303eb89d78f1a21c6fc97bc224384dd2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 10 16:09:57 2015 +0100

    php: fix memory leak in OStringList optargs
    
    Make sure to free the char** created to convert the arguments.

commit 9d43a551f1c312bf611da13ec3d9606b53506036
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 10 15:39:14 2015 +0100

    php: fix invalid memory access with stringlist params
    
    Make sure to copy the strings we add to the char** array, otherwise they
    are stale pointers which we'll try to free later.
    
    Also, properly destruct the temporary zval.

commit 257cbc3510070a3892cf570cef95f0e980c4fbe6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 10 16:04:06 2015 +0100

    php: move common code in helper functions
    
    Simple code motion.

commit eed4d9335a38b9f7ba5958833a3515b9d3977a7f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 10 15:32:59 2015 +0100

    php: fix invalid memory access with OptString
    
    OptString maps to a "s!" argument, which makes zend_parse_parameters not
    touch the variables (char* and length) when NULL is passed as parameter.
    Hence, set both to NULL/0, and check for non-NULL char* variable before
    checking its length.

commit 7155fa1d630389abc8d00ba2ad96971918172fc2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 10 15:10:34 2015 +0100

    java: add @Deprecated annotation for deprecated methods

commit c29cfddd830d5de09c6ab44f297a0a5916aff72c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 10 14:58:20 2015 +0100

    java: fix/improve slightly the javadoc
    
    - use <p>..</p> for text paragraphs, instead of just using <p> to
      separate them
    - slightly improve the metadata in eventToString and set_event_callback
    - fix the textual @see in set_event_callback, so it is accepted also in
      JDK 8
    - escape the doc text, so &, <, and > will not be considered as HTML
      tags but actual text
    - use the @deprecated tag instead of adding the customary deprecation
      note to the doc text

commit 14516adaf869aed30ec4395fbcec3ec3b829053f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 10 14:22:14 2015 +0100

    generator: add a simple HTML escaping function

commit 807fd605244dd9a77d7131b4cfd020175ad109e5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 11 15:02:09 2015 +0100

    Revert "java: Turn off doclint to prevent errors on JDK 8"
    
    The errors will be fixed for good, together will other small javadoc
    improvements.
    
    This reverts commit 8940b03658e9e68adfea03dfd1044addd64d3d7a.

commit 3de898c2b7c8a64875dccddb827ac6b1f07eb5a0
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Mon Feb 9 11:06:18 2015 +0000

    macosx/bsd: Use getprogname() where available

commit 017a84ff8bacfd77b9072d0bec305545d27d8902
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Mon Feb 9 11:06:17 2015 +0000

    java: Turn off doclint to prevent errors on JDK 8
    
    On JDK 8, doclint is enabled by default with strict validation of HTML
    tags, which causes the build to fail. See
    http://blog.joda.org/2014/02/turning-off-doclint-in-jdk-8-javadoc.html

commit ed1b9e0ee337ce37077768ee64b9cf44b579f025
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 5 18:18:30 2015 +0100

    perl: tests: reenable set_path tests
    
    guestfs_set_path now does a copy of the passed string, so bindings don't
    need to take care of the lifetime of strings parameters for it.

commit d9854bd079d15a19ed82f5fe6d44a6d231479665
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 7 16:27:03 2015 +0000

    lib: Change 'program_name' macro to avoid conflict with gnulib.
    
    The gnulib 'error' module uses 'program_name'.  On some platforms --
    but not Linux / glibc -- it references it as:
    
      extern char *program_name;
    
    This means when you compile libguestfs on non-glibc (eg. Mac OS X)
    gnulib requires 'program_name' as an external string reference, which
    we don't provide.
    
    This change doesn't define this string reference for gnulib, but it
    does change the name of the macro we use to avoid conflicts if we
    eventually need to export 'program_name' as a string.
    
    Thanks: Margaret Lewicka

commit e49e90153af64b688b371502860165cfd599e9f0
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Fri Feb 6 10:01:28 2015 +0000

    macosx: Include <sys/un.h> and define SOCK_* for Mac OS X.

commit 5e0bf45563ce932b3c46a8f7825252e4bd555221
Author: Margaret Lewicka <margaret@meaningless.name>
Date:   Fri Feb 6 09:53:45 2015 +0000

    macosx: ruby: Use correct dllib extension instead of assuming '.so'.

commit 5e835c7d8874be830b90c21fcc954194a75e997f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 5 08:13:05 2015 +0000

    resize: Preserve GPT GUID so we don't break EFI bootloaders (RHBZ#1189284).
    
    When copying disks that use EFI, we created a new partition table,
    randomizing the GPT GUID of the first partition.  Since EFI may store
    the GUID in its NVRAM variables, this could make the guest unbootable.

commit dfdfb39c1ddc01e41dfecb088bcb254a5b7b1b17
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 5 08:08:06 2015 +0000

    New APIs: part-set-gpt-guid and part-get-gpt-guid
    
    In GPT, each partition has a GUID assigned randomly.  Allow this GUID
    to be written and read.
    
    Note this is different from the GUID type code which is used to
    identify the type of the partition.

commit fba893365268be57ed7b88549db640237044bbeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 5 08:01:48 2015 +0000

    daemon: Fix whitespace.

commit 142c3a4f6347e3944f7b3b15aae0fc55eab0fd21
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 4 13:17:40 2015 +0000

    builder: Fix large performance regression in pxzcat (RHBZ#1188866).
    
    Commit 9135129b0f6e8eb171131ea0f7d729a960b74cb3 changed
    two stack buffers to pointers:
    
    -  uint8_t buf[BUFFER_SIZE];
    -  unsigned char outbuf[BUFFER_SIZE];
    +  CLEANUP_FREE uint8_t *buf = NULL;
    +  CLEANUP_FREE uint8_t *outbuf = NULL;
    
    but we were still using sizeof buf to calculate the size of the
    buffer.  sizeof buf == 8 so the original code which used large buffers
    for reading/writing the file changed to using 8 byte buffers.

commit 1d0e2fb0fcf9ae6b4c866c635f8c0d84027b93d8
Author: Cédric Bosdonnat <cbosdonnat@suse.com>
Date:   Tue Feb 3 14:38:02 2015 +0000

    customize: Invoke zypper correctly.

commit bcef1e6c94629644a7edf44e531807b2769455f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 3 08:53:43 2015 +0000

    btrfs: Proper error when output of 'btrfs qgroup show' command cannot be parsed.
    
    sscanf doesn't set errno in these cases so it's wrong to call perror
    here.
    
    This fixes commit 2b7f7810ed801edf811c5ba43fefe6cf350def7f.

commit 90e94fd8839877374c885effa1ffdce27e1bfa9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 2 20:01:45 2015 +0000

    Version 1.29.24.

commit 11417fb7a659c81cfe5746bd6b270cd83e6021f3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 2 15:44:43 2015 +0100

    customize: add copy-in operation (RHBZ#1135585).
    
    Add the copy-in operation to virt-customize/builder/sysprep, so it is
    possible to easily copy directories at once in the guest.

commit 7059ff68d34d597006f3fa49f91a506f33771132
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 2 15:44:42 2015 +0100

    fish: use copy-in and copy-out
    
    Simply the copy-in & copy-out commands of guestfish using the new
    implementations of copy-in & copy-out in the library.

commit d29d75ed1cde0a380174f8adae75576e807213a6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 2 15:44:41 2015 +0100

    New APIs: copy-in and copy-out
    
    Currently implemented as guestfish commands, provide them instead as
    single source -> destination functions for the library, so they can be
    used also in other places.
    
    These functions are not added to guestfish, since guestfish has its own
    implementation (which will soon switch to call copy-in and copy-out for
    multiple paths).

commit 14f4d758fc49c961de6a226c439e27d09f1f6deb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 2 15:44:40 2015 +0100

    generator: add VPublicNoFish visibility type
    
    Usable to have public functions, i.e. like VPublic, but do not showing
    them in guestfish.

commit 7bbb80376c9895511cd605d951e5e3d39274ea3b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 2 15:44:39 2015 +0100

    cmd: add the possibility to get a fd to the process stdin
    
    Add the possibility to forward to the stdin of the process, and get the
    fd for it; only in async mode for now.

commit a606f05ace2908edb42bc2741fd108f635b26952
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 2 15:44:38 2015 +0100

    cmd: add a child-setup callback
    
    Easy way to do pre-exec setup in the child process.

commit 11b0c41e8380e51780f04df2fb10b70522d3c17f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 2 15:44:37 2015 +0100

    cmd: add a way to run (and wait) asynchronously commands

commit 2c17ae3748c336c98b07cbc0fb89556b554ea227
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 2 15:02:31 2015 +0100

    sparsify: ignore read-only devices
    
    In copy mode, make sure to not zero-free-space devices mounted as
    read-only, as we cannot write to them.
    
    Related to RHBZ#1079625.

commit 40f2a8c2f0f9364f3258d409cd4ba5b1e7048684
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 2 14:50:52 2015 +0100

    sparsify: ignore read-only btrfs snapshots (RHBZ#1079625)
    
    In copy mode, make sure to not zero-free-space read-only btrfs
    snapshots, as we cannot write to them.

commit 4b2c3c20f05637d2ae6c577328306c5cbb92bcf4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 28 14:19:19 2015 +0000

    sparsify: Ignore read-only LVs (RHBZ#1185561).

commit 2feb6e66a802e13c6707bf08600e4c1e1a830e13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 28 14:18:48 2015 +0000

    mllib: Add function for comparing LVM2 UUIDs, ignoring '-' characters.

commit 574be74503be7bb171888d84b30f2ec16ca18f33
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 28 14:17:51 2015 +0000

    mllib: Add a better List.assoc function.
    
    You can specify what comparison function is used; and instead of
    having it raise 'Not_found', it returns a ~default value.

commit 66c839854deac04085afe7d737fd6780a95a4f59
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 29 12:00:32 2015 +0100

    tests: don't add test-dlopen twice
    
    test-dlopen needs to be added only when libdl is available, and it is
    like that already (within if HAVE_LIBDL); hence don't unconditionally
    add it as well.

commit ef68833da71eedebbb1cb8620e39e65fc22fba41
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 29 12:00:01 2015 +0100

    build: use libintl where needed
    
    Followup of commit a5426cce5faa0fde0de1b62c8646cb8a9992ef2b.

commit 216c19e0c1df86c8fa258d6c72840e6682ffbd68
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 28 14:37:14 2015 +0100

    daemon: parted: use --part-type with recent sfdisk
    
    Check whether --part-type is supported (in the rewritten sfdisk in
    util-linux >= 2.26), and use it instead of --print-id & --change-id.
    
    The actual result should be the same, just not using a (recently)
    deprecated command line API.

commit c169d3f25b19f93644e2b635d2b6be3bcdb1ad22
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 28 13:28:37 2015 +0000

    v2v: -i ova: Make error message "unsupported file format" clearer.
    
    Thanks: Moran Goldboim

commit f045327a2dc03716d938bd1f0b365030e140751e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 27 18:35:58 2015 +0100

    customize: handle Arg.Set parameters in commands file
    
    When reading commands from a file, handle also Arg.Set parameters, so
    they can be enabled as well.

commit a144ae556b199b022e0babb7ec90403dea5ed12b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 26 17:15:30 2015 +0000

    Version 1.29.23.

commit 2700df401edde4ba84dd8c53e0856cb4d0b927ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 26 17:14:53 2015 +0000

    .gitignore: Ignore mllib/oUnit-anon.cache file from oUnit.
    
    This updates commit d19eb31060e49d5631a7deb40bebf3886836b0a9.

commit 2a6700cbdb8b675db5aeb77fcc5d8973f24cbb6e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 26 16:34:59 2015 +0100

    mllib: fix JSON_tests
    
    Properly write int64 values, so they are handled correctly also on 32bit
    architectures.

commit 9f3d5c7f6ed4e32da41b2ddab99d31a26a026f37
Author: Shahar Havivi <shaharh@redhat.com>
Date:   Mon Jan 26 12:13:49 2015 +0200

    v2v: -o vdsm should assume data domain at -os path
    
    Unlike -o rhev which have only one data domin, -o vdsm can and usually
    does have multiple data domain.
    The path to vdsm is pre mounted so no need to assume nfs path with -os
    Example:
    -o vdsm -os /rhev/data-center/<data-center-uuid>/<data-domain-uuid>
    
    Bug-Url: https://bugzilla.redhat.com/1176591
    Signed-off-by: Shahar Havivi <shaharh@redhat.com>

commit 60e2aacc9b4d4172544f55380cb5d9e81f07b1c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 24 15:40:05 2015 +0000

    aarch64: Increase default appliance memory size on aarch64.
    
    Kernel 3.19 has problems uncompressing the RAM disk with <= 500 MB.
    (This is likely to be a kernel bug)
    
    64 KB pages are common on aarch64, so treat this case the same as ppc,
    and use a larger default appliance memory size.
    
    Thanks: Laszlo Ersek for help and reproducing the bug.

commit e1c073c5856b130a7c291602a67a5367ad5f1672
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 24 08:47:00 2015 +0000

    launch: libvirt: When debugging the appliance dir, use 'ls -R'.
    
    Since libguestfs >= 1.26 / supermin 5, the appliance has lived in a
    subdirectory of $TMPDIR/.guestfs-$UID.  As a result using 'ls -l'
    didn't display any information about the files in the appliance.
    
    Using '-R' causes this information to be displayed again.

commit bbaa307d35c0174c2d53ad68f04dbfe3cd32d3a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 24 08:45:48 2015 +0000

    launch: libvirt: In debug messages use ls --lcontext instead of ls -Z.
    
    ls -Z stops ls from displaying the size field.  --lcontext uses longer
    lines but has the advantage of still displaying the size field as well
    as the SELinux context.

commit cc9f40d1e0691ba5d938527a9256efcf86f369ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 23 13:29:25 2015 +0000

    p2v: Add NetworkManager in the hope of getting working network.
    
    I know "working network" and "NetworkManager" are oxymorons, but
    sometimes we have to live in hope.

commit 4fce7149948b79f0df7b238b4d75d9e649d1702d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 23 12:16:31 2015 +0000

    p2v: Set root password of virt-p2v ISO to 'p2v'.
    
    It is documented as 'p2v', but in fact this was not implemented
    so there is no way to log in as root on the console.
    
    On RHEL we also have to add the 'passwd' package, else you get:
    
      Error creating Live CD : Unable to set unencrypted password due to lack of /usr/bin/passwd

commit 73610973425525432de614464d9660a7a803d7a8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 23 14:15:09 2015 +0100

    mllib: do not show --short-options among the long options
    
    --long-options is ignored because it is only meant as aid for shell
    completers, so --short-options should be too for the same reason.

commit 960134946e64d30db9f13be34314462b0a8cdc92
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 23 11:23:35 2015 +0100

    mllib: add simple tests for the JSON module

commit a65cad0d6d0fe6e2f9fa3c2a23e843a68f1e2025
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 23 11:08:27 2015 +0100

    mllib: tests: add tests for string_lines_split

commit a5b082cbc623b54958e4bd50d50c63a4a29002fb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 22 18:33:07 2015 +0100

    mllib: convert common_utils_tests to oUnit
    
    Covert common_utils_tests to use oUnit as testing framework, replacing
    the hand-made assert in favour of structured unit tests and better
    error reporting.
    
    common_utils_tests is now built only when the oUnit module has been
    found.

commit 3720c4fb8b1fa6ba6371465268e3f16cb7fef1b9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 22 17:39:23 2015 +0100

    configure: look for the oUnit OCaml module
    
    It will be used for the OCaml unit tests.

commit 25508b70305c0ed7defe62c21de93b4493ee90f6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 22 17:07:02 2015 +0100

    customize: add --commands-from-file
    
    Pass to --commands-from-file the name of a file containing customization
    commands in each line, as if they were specified as command line
    arguments.
    
    This eases the reuse of commands among different
    builder/customize/sysprep invocations.

commit 7374fb91579dacc25fd1fb20b5a393e77ebe6b9b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 22 17:05:30 2015 +0100

    mllib: add string_lines_split
    
    Introduce an helper function to split a text into lines, keeping into
    accout continuation lines (i.e. with \ at the end).

commit 200ed909b671f7a1e64f9c1909053d451fd8834f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 22 10:44:32 2015 +0000

    test: fuse: Add debugging of commands run in the test.

commit 0aa81655e81ba37373c9583af1326b128dfe071c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 21 20:45:17 2015 +0000

    Version 1.29.22.

commit fb6e6202a88044bf0789174cc1ca85a204d5f9db
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Jan 16 10:23:47 2015 +0800

    New API: add btrfs_rescue_super_recover
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 91a9b3d22ec3554d9eb23a1c2892cd6b512db6ea
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Jan 16 10:23:46 2015 +0800

    New API: add btrfs_rescue_chunk_recover
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 53a9cf8e84ce7308daead858c971edacf7cff323
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Jan 16 10:23:45 2015 +0800

    New API: add btrfs_filesystem_defragment
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit d2ddd44621d73e626053a7468caa80b940c3b903
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Jan 16 10:23:42 2015 +0800

    New API: btrfs_balance_resume
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 92fb4a20b2c68c324a6540c6a194491db1e14aa4
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Jan 16 10:23:41 2015 +0800

    New API: btrfs_balance_cancel
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit b061e2c153682a8a46a8b2400c4c98080f2be412
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Jan 16 10:23:40 2015 +0800

    New API: btrfs_balance_pause
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 3d53a69560f40c0336c96c9bb586e52a1f8df578
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Jan 16 10:23:39 2015 +0800

    btrfs: replace "btrfs filesystem balance" with "btrfs balance"
    
    "btrfs filesystem balance" is deprecated in favor of "btrfs balance".
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 72b71e2eda067de2bb965ce80ab593ac7114d520
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Jan 16 10:23:38 2015 +0800

    New API: btrfs_scrub_resume
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 2d117e5ac88ccc50adb2dd6b49305f1d71bca32c
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Jan 16 10:23:37 2015 +0800

    New API: btrfs_scrub_cancel
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 19a7a3a3370c395f15a68a903c18668bc4a00ebd
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Jan 16 10:23:36 2015 +0800

    New API: btrfs_scrub
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit d19bb77a5025c4e20c04bf2663335a331b045d12
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 21 05:37:56 2015 -0500

    aarch64: launch: libvirt: As a workaround, pass -cpu parameter to qemu.
    
    When libguestfs is running using TCG on aarch64, we need to pass the
    -cpu cortex-a57 parameter to qemu.  Libvirt doesn't let us do this,
    complaining "Unable to find CPU definition".
    
    As a temporary workaround only, use <qemu:commandline> to pass this
    argument directly to qemu.  When libvirt is fixed we can remove this
    hack.
    
    This is a workaround for libvirt bug RHBZ#1184411.
    
    See:
    https://www.redhat.com/archives/libvirt-users/2014-August/msg00043.html
    https://bugzilla.redhat.com/show_bug.cgi?id=1184411

commit ba80695a4de6d8aab979319133a194513a46bd9d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 21 05:10:37 2015 -0500

    aarch64: appliance: Use AAVMF (UEFI) if available for running the appliance.
    
    AAVMF is an open source UEFI implementation for aarch64 based on OVMF.
    As aarch64 is heading for requiring UEFI even inside guests, if the
    AAVMF firmware is installed on the host, use it as a hint that we
    should boot the guest using AAVMF instead of the default "empty
    machine".
    
    Note this requires very recent AAVMF, libvirt, qemu.  However that's
    OK since it's only applicable to aarch64.  On non-aarch64, this patch
    does nothing.
    
    Thanks: Laszlo Ersek for a lot of help getting this right.

commit fb96ad7ce5b93011e2d3cc9d77ba8035f4423659
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 20 16:23:12 2015 +0100

    launch: libvirt: do not leak the backend string on error
    
    Make sure to free the backend string after using it.

commit 63e678531e262db4859f4b268359168c551f7cbb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 20 14:35:36 2015 +0100

    fish: remove extra "prompt" checks
    
    The code is already within a "if (prompt) {...}" block, so checking for
    "prompt" again is redundant.

commit 435196527314cd7b99942c281aa1197ba7d19f86
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 20 14:09:36 2015 +0100

    daemon: readdir: fix invalid memory access on error
    
    If "strdup (d->d_name)" fails with "i" > 0, then both "p" and
    "ret->guestfs_int_dirent_list_val" are non-null pointers, but the latter
    is no more valid (since "p" is the new realloc'ed buffer). Hence, trying
    to free both will access to invalid memory.
    
    Make sure to free only one of them, "p" if not null or
    "ret->guestfs_int_dirent_list_val" otherwise.

commit 51f59e9e3a8911fe45747f277a036e9c603ae7f6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 20 16:08:38 2015 +0100

    fuse: test-fuse: free "acl_text"
    
    Make sure to free the buffer returned by acl_to_any_text.

commit 43734ea4db8cb7337e413165205358fbda15f397
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 20 09:42:12 2015 +0000

    p2v: Fix wait_qemu_nbd to use getaddrinfo.
    
    wait_qemu_nbd would fail in Rawhide where /etc/hosts contains:
    
      127.0.0.1   localhost [...]
      ::1         localhost [...]
    
    This peculiar mapping caused qemu-nbd to always select an IPv6
    address.  However since we used the obsolete inet_pton function and
    forced AF_INET, we were always trying to connect to the IPv4
    localhost.
    
    As this was never going to work anyway, fix the code to use
    getaddrinfo to resolve "localhost", and use a loop to connect to all
    possible addresses.
    
    Also: Add a short sleep in the reconnection loop so that we don't
    hammer the qemu-nbd server while it is starting up.

commit a4fc4154c7259cc43557d09c6901bd2526c0a9f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 20 07:58:34 2015 +0000

    p2v: Move debug message earlier.
    
    This ensures we can see the port numbers even when the
    connection fails.

commit 30d8ec70871cb9fe9bf23fbdedae770f95b2a81d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 20 07:45:18 2015 +0000

    p2v: Correct garbled comments in test script.

commit 34c5fe9d91e3ea8020e7edb46771e5f212fdf21a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 20 07:35:11 2015 +0000

    aarch64: python: Skip test that requires IDE.
    
    This test launches a dummy guest using IDE.  Aarch64 doesn't support
    IDE, and because it also doesn't support PCI (virtio-mmio instead)
    it's hard to formulate libvirt XML that will work on both x86 and
    virtio-mmio.
    
    Since this bug is not architecture specific (RHBZ#912499), skip it on
    non-x86.  The test will print:
    
      skipping test: arch is not x86 and does not support IDE

commit abdce2e7667c8d0f9a5e118ca97b6805d440dbc8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 19 19:19:12 2015 +0000

    Version 1.29.21.

commit 08efbd3f2d95e14f559c4dd06fb56799706e9859
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 19 16:20:44 2015 +0100

    gobject: fix printf conversion specifier
    
    Use PRIu64 to correctly handle uint64_t.

commit bd1b1bbd9efecb8434dd5c5cfddf5903208bc3b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 19 16:05:41 2015 +0000

    gcc5: test-tool: Initialize local variable.
    
    gcc 5 cannot prove that the variable is always initialized
    and therefore prints a warning.

commit 95fbf65287088d97361814345e7352ceda757c0c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 19 15:58:36 2015 +0100

    build: check for single libsystemd before libsystemd-journal
    
    Since systemd 209, all the functionalities of the former libsystemd-*
    (including libsystemd-journal) have been merged into a single
    libsystemd, with the former libraries left as compatibility ones.
    
    Thus, first look for libsystemd, and if not found try again with the
    libsystemd-journal as used before.

commit a2b82fbe334a843420afb42b193aa946115bd65b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 16 19:25:26 2015 +0100

    sparsify: handle output filenames with ':'
    
    With commit a594b7f90a682e2a9327b142138edb76ad8ba8ff the checks for
    input and output files with ':' were removed; while the input file is
    handled correctly by the disk_create API, an output filename with ':'
    could still be handled as specifying a transport, failing the last
    "qemu-img convert" call.
    
    Use the new qemu_input_filename helper to handle the output filename
    correctly.

commit f7b729e4e9144f47ee8c4c9921555aa7f3f1500a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 16 19:19:16 2015 +0100

    mllib: add simple qemu filename sanitizing function
    
    It mimics a bit in OCaml the logic used in
    commit a95214b1985e694946e3426120a6fdc13a3f081f (for the main library)
    and commit 588af1953e5f7ab74009b9175cc5d3efb8bb651a (in disk-create),
    so in OCaml tools direct calls to qemu/qemu-img with filenames provided
    by the user can properly handle filenames with e.g. ':'.

commit 3cbe4535b448bf291262b5dfe7d4077f9d5e384a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 15 14:40:17 2015 +0100

    mknod: filter modes in mkfifo, mknod_b, mknod_c (RHBZ#1182463).
    
    Since mkfifo, mknod_b, and mknod_c add the correct file type to the
    modes of the resulting file, make sure the specified mode contains only
    permissions bits.

commit 94336691dd5fc810429bebf0333a741ce8ba029c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 14 18:59:57 2015 +0100

    daemon: use ntfslabel(1) to get ntfs labels
    
    blkid(1) (or actually, libblkid) seems to handle filesystem labels up
    to 127 characters. Considering that btrfs labels can be up to 128
    characters, this means long labels are not read correctly (i.e. get
    truncated) by blkid.  Furthermore, ntfs labels are actually unicode,
    and libblkid seems to not decode them correctly.
    
    Hence, if ntfsprogs is available invoke `ntfslabel` to get the label
    of ntfs filesystems.
    
    Related to RHBZ#1164708.

commit ae8960c5b1742d16150310641ae5673dc90bd86e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 14 18:55:13 2015 +0100

    daemon: use btrfs(1) to get btrfs labels
    
    blkid(1) (or actually, libblkid) seems to handle filesystem labels up
    to 127 characters. Considering that btrfs labels can be up to 255
    characters, this means long labels are not read correctly (i.e. get
    truncated) by blkid.
    
    Get the filesystem type, and if btrfs is available invoke
    `btrfs filesystem` to get the label of btrfs filesystems.
    
    Related to RHBZ#1164708.

commit 3d0cdb78ddb7800d4f715bd31bf19dd5b285fa8c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 9 18:57:24 2015 +0100

    format, make-fs: specify the label on mkfs
    
    If specified, pass the label for the new filesystem directly to the
    mkfs (or mkfs_btrfs) call.
    
    This saves one set_label call, mostly.

commit 14064895b8a339b4ec596232ab12dca669b3784c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 9 18:56:28 2015 +0100

    mkfs: add 'label' optional argument
    
    Add the 'label' optional argument to the mkfs action, so it is possible
    to set a filesystem label direct when creating it. There may be
    filesystems not supporting changing the label of existing filesystems
    but only setting it at creation time, so this new optarg will help.
    
    Implement it for the most common filesystems (ext*, fat, ntfs, btrfs,
    xfs), giving an error for all the others, just like set_label does.

commit a4f341ac0e8393161411684abf58485457960b8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 19 15:00:57 2015 +0000

    tests/lvm: Remove use of deprecated sfdiskM API.
    
    See: https://bugzilla.redhat.com/show_bug.cgi?id=1183236
    for the sorry tale.

commit ed91ed4d3efc7f3a135b9c620159d2621afce028
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 19 13:03:24 2015 +0000

    valgrind: Remove suppression for fixed memory leak in libselinux.
    
    This memory leak has been fixed since libselinux 2.1.13.
    
    Thanks: Daniel Walsh

commit 27e8f36ad3054166aac06dc50b60ed58f184c595
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 18 07:38:58 2015 +0000

    lua: Define luaL_checkint which was deprecated in lua 5.3.

commit 6fdce69f7f39c77356765e3d22db9845d919df2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 17 14:24:35 2015 +0000

    tests/lvm: Allow test-lvm-mapping.pl to be skipped.

commit a20b3c87a0aa4224b469d760a01ce1d6e760c7a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 17 09:02:37 2015 +0000

    Version 1.29.20.

commit 295de1d675e1866165f0ae358e02728ed8c5af74
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 17 09:08:08 2015 +0000

    Update copyright dates for 2015.

commit c665166ebeabeddf604c54208679473c44bb2eee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 1 06:11:39 2015 +0000

    ocaml: Convert debug_logging example from C to OCaml.
    
    Continue gradual conversion of C examples to other languages.

commit 8261375a1dcd5ca854062d5c046f06d60f4d47ea
Author: Kashyap Chamarthy <kchamart@redhat.com>
Date:   Tue Jan 13 19:31:09 2015 +0100

    virt-buider: doc: Use osinfo-query to get OS variants
    
    Upstream dropped[1] support for '--os-variant list' in favor of using
    `osinfo-query` tool provided by the libosinfo project.
    
    To get a list of all accepted operating systems, invoke:
    
      osinfo-query os
    
    [1] https://git.fedorahosted.org/cgit/virt-manager.git/commit/?id=bcb60f0

commit 3e16bcf230a44f615f1ec2c9cfc46209c6522979
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 9 11:14:35 2015 +0100

    builder: export the "osinfo" attribute to json
    
    Thanks to: Federico Simoncelli.

commit 77ee19117a98c6b95b8e636769b411c543a66926
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 7 15:07:07 2015 +0100

    ocaml: findlib is required when building from git
    
    Update README according to the current requirement.
    
    Thanks to: Gabriele Cerami.

commit b78e355ab8d68445e2828c3670404e565224d4ca
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sun Dec 28 08:33:30 2014 +0100

    Fix out-of-tree build: Don't create empty .y file in builddir

commit db351e74d9b99758b4b12e5081e4930bdb899609
Author: Shahar Havivi <shaharh@redhat.com>
Date:   Thu Dec 25 11:57:12 2014 +0200

    v2v: adding --vdsm-ovf-output option
    
    This option is needed by vdsm for writing the ovf to a specific directory.
    The default is current directory.
    
    Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1176598
    Signed-off-by: Shahar Havivi <shaharh@redhat.com>

commit d61e88e0aa0b24380b3e9f3daabfcc194d396307
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 24 18:10:37 2014 +0000

    v2v: Reduce use of polymorphic variants.
    
    Ordinary variants prevent coding errors.

commit 409c7ef9a611def024d1a0e749fa1ea45860db7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 24 17:46:08 2014 +0000

    v2v: -i libvirtxml: Only handle NBD source with host 'localhost', for virt-p2v.
    
    We only care/support virt-p2v for network disks.  Give a warning about
    anything else.
    
    This avoids a potential quoting issue.

commit 7fd6de3116b3130ac08008f98d3eb9bb29dd05cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 24 17:05:39 2014 +0000

    v2v: Update TODO.

commit d2588ab526934391d3c17f3f6dacfedca2c15c11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 24 16:51:15 2014 +0000

    v2v: DOM: Fix quoting of XML comments.
    
    We need to quote at least & and > in XML comments.

commit 9601bbb64a8780697e1a0a12e96d359da2826b63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 24 13:34:26 2014 +0000

    v2v: Hide implementation of 'element'.
    
    Following the previous commit, the implementation of 'element'
    does not need to be public.

commit 93ce9b0bd7d39d075d372bc089d857f99763d296
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 24 13:32:18 2014 +0000

    v2v: Move append_* functions to DOM module.
    
    Just code motion.

commit 0583c72e14863f35fca7b037d0f0338f2cefc604
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 23 15:25:26 2014 +0000

    Version 1.29.19.

commit 1ccc406ffa4838ebd4aa86871623ae8513b276a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 23 15:29:26 2014 +0000

    v2v: Add a note about escaping username like DOMAIN\user.
    
    Thanks: Ben Hooper.

commit 6aa93f1febf3b5db6a248077f20c33ef769d8449
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 23 06:27:18 2014 -0500

    aarch64: builder: Silence gcc warnings from flex-generated code.

commit 1292a9eafa1e629658d8a29a4f8d52df286f01ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 21 18:47:30 2014 +0000

    fish: c-pointer: Print the pointer in hexadecimal.
    
    $ guestfish
    ><fs> c-pointer
    0x1fb4f80
    
    This updates commit d8c43d556b45f4c9676fdbfce0e9fe07b709635a.

commit 1619d061eaae9a6b3d87f0f950cd763abea4bd67
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 19 19:38:37 2014 +0000

    errors: Even clearer error message.
    
    Obviously no one reads the FAQ, so make the error message
    even clearer.
    
    The new error messages are variation on this:
    
    libguestfs: error: /bin/false exited with error status 1.
    To see full error messages you may need to enable debugging.
    Do:
      export LIBGUESTFS_DEBUG=1 LIBGUESTFS_TRACE=1
    and run the command again.  For further information, read:
      http://libguestfs.org/guestfs-faq.1.html#debugging-libguestfs
    You can also run 'libguestfs-test-tool' and post the *complete* output
    into a bug report or message to the libguestfs mailing list.

commit dfe697c3865194247541e18ad23b231fa7a5ab7d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 18 10:59:15 2014 +0000

    ping-daemon: Fix error in the description of this API (RHBZ#1175676).
    
    Thanks: Lingfei Kong

commit f015f4a3d5733ccb20955ea09a0106e8819d1ca2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 18 08:30:18 2014 +0000

    v2v: -o libvirt: Replace List.mapi with mapi.
    
    Don't depend on OCaml >= 4.00.
    
    https://bugs.gentoo.org/show_bug.cgi?id=532698
    
    Thanks: Fabian Ohler

commit 7cd3228352e2878affe9f5c3b5fdd8ad8e5fdf46
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 15 14:51:57 2014 +0000

    v2v: Treat "oraclelinux" as if it was plain RHEL (RHBZ#1174280).

commit 5388514816cc62fe38d923ef456efa41605ce3a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 17 13:02:06 2014 +0000

    fish: Add regression test for RHBZ#1175196.

commit e98e9388e576b4da334861f240154185e89dae69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 17 12:52:46 2014 +0000

    environment: Use guestfs___is_true when parsing various boolean environment variables (RHBZ#1175196).
    
    You can now use LIBGUESTFS_DEBUG=true (etc.)
    
    You can disable debugging/tracing by setting LIBGUESTFS_DEBUG=0 (etc.)

commit 591d704a1876911b1582f4786075c6b26b2cdb0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 17 12:34:53 2014 +0000

    fish: Move 'is_true' function to library utilities.
    
    The 'is_true' function can be useful elsewhere, not just for parsing
    guestfish command parameters.
    
    This is just code motion.

commit 2d18a89858723ab6c667d60a1a1022425c610dc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 17 14:37:55 2014 +0000

    v2v: -o qemu: Replace List.iteri with iteri.
    
    So we don't have to depend on OCaml >= 4.00 which is when this
    function was added to the stdlib.
    
    https://bugs.gentoo.org/show_bug.cgi?id=532698

commit a7097aa4755c7fafa190b31d6f36a12fcb15d768
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 17 10:25:57 2014 +0000

    is-blockdev: Clarify documentation (RHBZ#1175035).

commit 3a9bb11e85201363b941fd6ba6f318c29a7d688c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 16 15:52:32 2014 +0100

    builder: recommend use of --selinux-relabel
    
    Add a small documentation paragraph in the "SELINUX" section
    recommending the usage of --selinux-relabel for guests using SELinux.

commit cb277716c165ca0b60d207345c862a8d86d209b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 16 13:25:35 2014 +0000

    Version 1.29.18.

commit dd34bd7360e733e26d7d9e2da25924cb1daecae0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 16 13:16:07 2014 +0000

    python: Fix regression test so it works when KVM is not available.
    
    The test assumed (for no particular reason) that it could always run a
    KVM guest.  When run on a machine without KVM, or in a VM without
    nested KVM, you get this error:
    
    libvirt: Domain Config error : internal error: no supported architecture for os type 'hvm'
    Traceback (most recent call last):
      File "./t/820-rhbz912499.py", line 77, in <module>
        dom = conn.createXML (xml, libvirt.VIR_DOMAIN_START_AUTODESTROY)
      File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3523, in createXML
        if ret is None:raise libvirtError('virDomainCreateXML() failed', conn=self)
    libvirt.libvirtError: internal error: no supported architecture for os type 'hvm'
    FAIL: ./t/820-rhbz912499.py
    
    Use a qemu guest instead, which should have a better chance of working
    on all hosts.

commit a9d58635956fc3e753bc9b4d50d37af2ed2822b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 16 11:06:43 2014 +0000

    p2v: Document that virt-p2v-make-kickstart copies the virt-p2v binary into the kickstart.

commit 84da37201bbf91767756dcab042046afc81f4d7e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 16 11:06:15 2014 +0000

    p2v: virt-p2v-make-kickstart(1): Fix various typos in the man page.

commit 497002a62c55a53b5007691929326eb995587266
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 16 09:45:29 2014 +0000

    p2v: virt-p2v-make-kickstart: Add URL example to the man page.
    
    It turns out this is required for Fedora 21 (or perhaps livecd-creator
    is broken yet again, who knows).

commit 593fdb3e3aa6a7a75389a0ab062e47e620d82184
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 15 22:45:35 2014 +0000

    Version 1.29.17.

commit b08d07b62713ba0d5f98b4230a64473d38cece46
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 15 22:26:51 2014 +0000

    Use -fno-strict-overflow throughout the build.
    
    Builds of bison-generated files currently fail with:
    
    index-parse.y: In function 'yyparse':
    index-parse.c:1256:6: error: assuming pointer wraparound does not occur when comparing P +- C1 with P +- C2 [-Werror=strict-overflow]
         if (yyss + yystacksize - 1 <= yyssp)
            ^
    
    This error only occurred on one machine, and it was unclear why.  It
    turned out to be because the other build machines I use had:
    
      CFLAGS="-Wall" ./configure ...
    
    whereas on the failing machine I was just using ./configure w/o CFLAGS.
    
    This caused the compile flags of index-parse.c to be changed from:
    
      gcc -Wstrict-overflow ... index-parse.c
    
    to:
    
      gcc -Wstrict-overflow -Wall ... index-parse.c
    
    but since -Wstrict-overflow is short for -Wstrict-overflow=2, and
    -Wall is short for -Wstrict-overflow=1, and since the error only
    occurs at level >= 2, using CFLAGS="-Wall" was effectively turned off
    the warning.
    
    Anyway, I believe the optimizations that GCC does when
    -fstrict-overflow is enabled to be dubious, frequently dangerous, and
    useless.  They are only done because we want C99 to work on
    architectures that don't exist in reality (and which even if they did
    exist, libguestfs would probably not support).
    
    The Linux kernel uses -fno-strict-overflow, and we should too, for the
    same reasons.

commit 11824d671509d7cd876a519efe92b7dddbb2332c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 15 18:29:00 2014 +0000

    Version 1.29.16.

commit 0a688ec905655271e3cd636e7432fcf2a2f87d29
Author: Gabriele Cerami <gcerami@redhat.com>
Date:   Mon Dec 15 19:19:39 2014 +0100

    diff/diff.c: diff output to show correct file handles and presence symbol

commit 50b2aa0be1b47f998a102e0b38d149fcddc1c7f8
Author: John Eckersberg <jeckersb@redhat.com>
Date:   Mon Dec 15 13:19:06 2014 -0500

    p2v: avoid connecting to ourself while probing qemu-nbd (RHBZ#1167774)

commit 0c9cce3939670b0aebdfe7863bf0847eb2e26f64
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 15 17:28:30 2014 +0000

    tests: Fix memory leaks in test-add-libvirt-dom.
    
    Found by valgrind.
    
    This fixes commit df9782ec3a12ac46e1b8ffa31630c7a1e64162fe
    and commit 96158d42f5cb9b6c472b4630f2c97edae600f6d3.

commit 0e50929963733b6847283befa2f682faf04c7e2d
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:33 2014 +0800

    New API: btrfs_qgroup_remove
    
    btrfs_qgroup_remove removes a qgroup from its parent qgroup.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 4f5ed25822be0729107edf3b76586fb96eb988b0
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:32 2014 +0800

    New API: btrfs_qgroup_assign
    
    btrfs_qgroup_assign adds a qgroup to a parent qgroup.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit d5c37f360d9c1bbeeb0e93a373934d25ba6da36a
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:31 2014 +0800

    New API: btrfs_qgroup_show
    
    btrfs_qgroup_show shows all qgroups on a btrfs filesystem.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit dc4f9addc205768b35238e93f999549e108fca97
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:30 2014 +0800

    New API: btrfs_qgroup_destroy
    
    btrfs_qgroup_destroy destroys a qgroup.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 5c6ae7bf39d7eed264b63c5f094c83f8b5373deb
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:29 2014 +0800

    New API: btrfs_qgroup_create
    
    btrfs_qgroup_create creates a new qgroup.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 0c2bf77da49ae3cff48e425e3e0203f274b1d6f5
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:28 2014 +0800

    New API: btrfs_qgroup_limit
    
    btrfs_qgroup_limit limits the size of a qgroup.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit e1831d08599782e6421ab7dfe48855cce870458b
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:27 2014 +0800

    New API: btrfs_quota_rescan
    
    btrfs_quota_rescan trashs all qgroup numbers and scans the metadata
    again with the current config.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit f79d9049f756b132b4a4c3423354a284bd5e7372
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:26 2014 +0800

    New API: btrfs_quota_enable
    
    btrfs_quota_enable enables or disables quota for btrfs filesystems.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 646869198b630a9076ddc5fae7335b443026f9fd
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:25 2014 +0800

    New API: btrfs_subvolume_show
    
    btrfs_subvolume_show shows the detailed information of a subvolume or
    snapshot.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 76fbf38912d4826ba87805c6d5b755528c06c9ba
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:24 2014 +0800

    New API: btrfs_subvolume_get_default
    
    btrfs_subvolume_get_default is for getting the default subvolume of
    a btrfs filesystem.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 5b412f728c15b7cf173728325b59102895f854b3
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Dec 12 15:03:23 2014 +0800

    daemon: btrfs: add helper functions mount and umount
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit e5a6c5843c734006180ee565d9cf2cf1f24e515f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 15 14:29:51 2014 +0000

    inspection: Recognise 'dnf' as the package manager in Fedora 22.
    
    Also fix virt-sysprep and virt-customize so they can work with dnf.
    
    I also sorted some of the lists alphabetically.

commit 63cb2fc2bf940b3a49d527aa80105e8e985777f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 15 13:43:34 2014 +0000

    v2v: Password attr in domain XML should be 'passwd=' (RHBZ#1174123).

commit af92819e0a30810cf4957206ebb47796e0c19b3e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 15 08:55:12 2014 +0000

    v2v: Get passwords in domain XML (RHBZ#1174123).
    
    Thanks: Tingting Zheng

commit e16308cb0ec1763bd72475bc57a636b5809c70e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 15 08:54:59 2014 +0000

    v2v: Whitespace change.

commit 83e332ecf43072d7ab1aaef80e020b8b2f08b5f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 13 19:34:29 2014 +0000

    p2v: Add more authors.

commit ce9f65271e160ce515da6abc09ccc6a17f3b8503
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 13 19:30:00 2014 +0000

    p2v: Rename authors.c, copying.c -> about-* to avoid confusion.
    
    Just file renaming, no other change.

commit 9180545b47708abdaf47453d3b5f899b30a2c9a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 22:25:47 2014 +0000

    sysprep: Use automake to build the library.
    
    Normally this requires the program to have at least one C source file.
    virt-sysprep doesn't have this, but it uses C sources from other
    directories, and therefore we can make it work.

commit 6c72b5ff104a81db61b1c669593afbf4835d497a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 22:25:47 2014 +0000

    mllib: Use automake to build the library.

commit 102ada5ca5a94e0ce9144844dd72f6247377f0d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 13 14:49:32 2014 +0000

    recipes: Tidy up section about hex-dumping and hex-editing sectors.

commit ac31496ed0de520d82c3499c91e0856c2e4aee5e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 17:41:47 2014 +0000

    p2v: Test two disk guest.
    
    Make the test harder (evil grin).

commit e774407e712720ccca569f99651699e5a6e4200f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 17:13:51 2014 +0000

    Version 1.29.15.

commit 37715d4f324a12fda2f109bc3a59c3003bc7c64e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 15:58:05 2014 +0000

    builder: Try again to fix the infinitely recursive index-parse.h rule.
    
    I ran 'make clean && make' hundreds of times in the builder
    subdirectory and it didn't fail.

commit 2a2cc5e0512b8aa641d2800f0345ffbf66978fe8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 15:11:57 2014 +0000

    v2v: C files are located in srcdir, not builddir.

commit c14ff6c8829127f5a7bc5a365ff200e830a0bdf4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 15:11:37 2014 +0000

    sparsify: C files are located in srcdir, not builddir.

commit ec6c2287ec090aebbb44acbcabe775a698e82301
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 14:44:54 2014 +0000

    New API: guestfs_c_pointer
    
    This returns the C pointer to the guestfs_h handle (ie. guestfs_h *).
    
    The purpose of this API is to interwork with other non-C libraries.
    See RHBZ#1075164 for the rationale when applied to another library.

commit 1fb96e3d8388c3a776a694a6016a3a99c6b2e155
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 14:32:11 2014 +0000

    perl: Implement Pointer ("virDomainPtr", _).
    
    This allows the Perl binding of guestfs_add_libvirt_dom to work.
    
    This relies on the internal Perl representation of virDomainPtr, but
    Dan assures me this isn't going to change.

commit 2b6409ebd3b8b596ed3a075bbdb4063e4e5e1efe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 13:31:08 2014 +0000

    tests: Enable and fix test-add-libvirt-dom test.
    
    Commit 96158d42f5cb9b6c472b4630f2c97edae600f6d3 enabled the previously
    private guestfs_add_libvirt_dom API.  It also tried to enable the
    existing test for this API, but failed to do that correctly.  Also the
    test was broken.  Fix all of this.
    
    This fixes commit 96158d42f5cb9b6c472b4630f2c97edae600f6d3.

commit f25b9a39d139482e31f5793df289696b412ace92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 13:23:58 2014 +0000

    v2v: Replace .. with $(top_builddir)
    
    No functional change.

commit 79295e0cc4e9f78d4d78cc7c36f51920fecdf0ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 12:50:16 2014 +0000

    builder: index-parse: Remove unused destructor.
    
      YACC     index-parse.c
    index-parse.y:97.34-41: warning: type <fields> is used, but is not associated to any symbol [-Wother]
     %destructor { field_free ($$); } <fields>
                                      ^^^^^^^^
    index-parse.y:95.36-45: warning: type <sections> is used, but is not associated to any symbol [-Wother]
     %destructor { section_free ($$); } <sections>
                                        ^^^^^^^^^^

commit 0e454a638376a9af7da70985ef135d2b2c61ffe4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 09:43:52 2014 +0000

    builder: Use automake to build the binary.
    
    As this has the side effect of enabling warnings in the C code, I had
    to fix a lot of C problems in this commit too.

commit d92d9f7d1dec9475f7207d0c564edb9c0cc60a05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 09:43:52 2014 +0000

    customize: Use automake to build the binary.

commit 4b285f07f07df48a5f70aa16a9e25625c7269116
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 12 09:43:52 2014 +0000

    resize: Use automake to build the binary.

commit 1a9ba55d63ff89b1baca4e69d77cabc07f969ca6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 11 16:29:29 2014 +0000

    Version 1.29.14.

commit 45ab0d3b7524b5d4af6a8804c038b92b0eb3c7a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 11 14:32:46 2014 +0000

    python: Add a regression test for disk labelling.

commit 166a3c912b7c9a84205293d6a9f8b29c1cd18adc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 11 14:05:47 2014 +0000

    launch: libvirt: Fix labelling of overlay files.
    
    We had code (added for RHBZ#912499) which labels overlay files
    correctly so that libvirt can read them.  Unfortunately this code was
    broken by subsequent commits: the new backend setting for the
    imagelabel is only copied to the 'data' struct during launch, but the
    create_cow_overlay callback is called before launch (when adding
    drives).
    
    The fix is easy: ensure create_cow_overlay_libvirt checks for the
    backend setting and initializes the 'data' struct.
    
    This change also means we need to free (data->selinux_imagelabel)
    before setting it in launch (and we do the same for
    data->selinux_label, although that's not strictly necessary).
    
    For background on this, see:
    https://bugzilla.redhat.com/show_bug.cgi?id=912499#c10

commit 72a1cac86d2d49e97eb54512651ba3837dc3a367
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 11 13:47:01 2014 +0000

    debug: add-domain: Dump XML of original domain.
    
    Useful for debugging labelling issues.

commit 96244f65d22bc841e2ef32b6e83169b477e36513
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 10 20:53:27 2014 +0000

    python: Implement Pointer ("virDomainPtr", _) (RHBZ#1075164).
    
    This allows the Python binding of guestfs_add_libvirt_dom to work.
    
    There is a regression test to ensure this keeps working.
    
    Note this requires a patched libvirt-python, supporting the
    c_pointer() method.

commit cd695e4277f7496e8f7be2b9a824f69e5d7ac78f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 10 21:33:24 2014 +0000

    python: Improve harness for running Python tests.
    
    It now understands exit code 77 == skip, amongst other improvements.

commit 3b84f58a1b56b2076f02f647beae374fc07ebc9e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 10 17:11:31 2014 +0000

    New(ish) API: guestfs_add_libvirt_dom.
    
    This API already existed (as guestfs___add_libvirt_dom), and was used
    by a few tools.
    
    This commit changes it to a public API.
    
    Note that for reasons outlined in the previous commit message, it is
    impossible to call this from guestfish or from non-C language
    bindings.

commit 6e8efc682e805e05eb7900d4bcb878998e0cf7ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 10 17:04:38 2014 +0000

    generator: Implement Pointer arguments.
    
    This implements Pointer arguments properly, at least for certain
    limited definitions of "implements" and "properly".
    
    'Pointer' as an argument type is meant to indicate a pointer passed to
    an API.  The canonical example is the following proposed API:
    
      int guestfs_add_libvirt_dom (guestfs_h *g, virDomainPtr dom, ...);
    
    where 'dom' is described in the generator as:
    
      Pointer ("virDomainPtr", "dom")
    
    Pointer existed already in the generator, but the implementation was
    broken.  It is not used by any existing API.
    
    There are two basic difficulties of implementing Pointer:
    
    (1) In language bindings there is no portable way to turn (eg.) a Perl
    Sys::Virt 'dom' object into a C virDomainPtr.
    
    (2) We can't rely on <libvirt/libvirt.h> being included (since it's an
    optional dependency).
    
    In this commit, we solve (2) by using a 'void *'.
    
    We don't solve (1), really.  Instead we have a macro
    POINTER_NOT_IMPLEMENTED which is used by currently all the non-C
    language bindings.  It complains loudly and passes a NULL to the
    underlying function.  The underlying function detects the NULL and
    safely returns an error.  It is to be hoped that people will
    contribute patches to make each language binding work, although in
    some bindings it will always remain impossible to implement.

commit dc4d4e651eaedef935b23ad4fb82931c60e5026c
Author: John Eckersberg <jeckersb@redhat.com>
Date:   Thu Dec 11 08:38:49 2014 -0500

    p2v: show error dialog if virt-v2v fails (RHBZ#1167601)
    
    Ensure the control connection exits with the same status code as
    virt-v2v, and return an error from start_conversion if virt-v2v
    failed.

commit 11ec402fbe79a7792e6376dda6cf821397f114c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 10 13:28:35 2014 +0000

    lib: Don't mention whitelist in guestfs_modprobe documentation.
    
    There is no such whitelist any longer.  All modules are copied into
    the appliance.

commit 29d7073ff0838624859dc2ed1fadcc1dfab07f10
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 10 13:03:55 2014 +0000

    v2v: linux: Fix modifications to default kernel for legacy grub.
    
    This didn't work at all because the regular expression did not match
    the returned Augeas path.
    
    In future if the regular expression doesn't match, this will give an
    internal error instead of continuing with a bogus value.
    
    Thanks: Junqin Zhou for providing the test case and debug information.

commit 0021f007d83ea74af9f2e11bc6fc190685a2f4a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 9 19:16:57 2014 +0000

    builder: Add Fedora 21 image, remove RHEL 7 RC image.

commit d75884a374d76e7ac21cde2e4e0dff5f90ca8a9d
Author: Kashyap Chamarthy <kchamart@redhat.com>
Date:   Tue Dec 9 16:58:11 2014 +0000

    arm: Use -cpu host on KVM.

commit b1d19257b811f727fa825018643f9e7cee06a181
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 9 14:06:18 2014 +0000

    inspection: Not an installer if there are multiple partitions (RHBZ#1171666).
    
    Regular EFI disks have /EFI on the first (VFAT) partition, but they
    are not installers.
    
    Fix this by only considering something to be an installer if it has a
    single partition (or whole disks like ISOs).
    
    Implementing this is quite complex since when checking a filesystem,
    we don't have information about whether we are even looking at a
    partition, nor about whether it's the first partition out of how many.
    The majority of the commit is changing the code to collect that
    information.

commit c30cfe406da52f33b654cfedf64e1ec987e248f9
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Mon Dec 8 11:20:54 2014 +0800

    resize: fix 'No space left on device' problem when copying to an extended partition (RHBZ#1169015)
    
    Because of the size of an extended partition reported by Linux is always 1024
    bytes, so it will always fail to copy to an extended partition.
    
    This patch fixes this problem by copying to the offset of an extended
    partition in the destination disk.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 565a8142daf7fb280e1df5a7765df7f5a4159e03
Author: John Eckersberg <jeckersb@redhat.com>
Date:   Fri Dec 5 16:58:13 2014 -0500

    p2v: wait for qemu-nbd before starting conversion (RHBZ#1167774)
    
    Wait up to 10 seconds for qemu-nbd to start up and respond to clients.
    Otherwise the conversion server may attempt to connect before qemu-nbd
    is ready to serve it.

commit 509812f79b58d6e9ea48682a5b68ac45fcf0dde8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 5 16:15:57 2014 +0000

    Version 1.29.13.

commit e467fc2d7e5697fae22603e0d2236f34a63f9856
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 5 15:23:28 2014 +0100

    sysprep: user-account: mark "changed file" if users were removed
    
    Removing an user causes /etc/passwd, /etc/shadow, and /etc/group to
    change, so mark the side effects as such if any user has been removed.

commit 7414e1f7692ec45e1ffe6a148cfa07b515c342cc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 5 15:20:37 2014 +0100

    sysprep: add a "changed file" side effect

commit 3a639352bdd0a8b2e09920d3897b6fce00ac30a2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 5 15:14:17 2014 +0100

    customize, sysprep: add a short SELinux note
    
    Add a short paragraph about SELinux, mostly to point to the
    documentation about it provided in the documentation of virt-builder.

commit 10109197f87d89ec1a4060fa049350e4dea53abe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 5 15:04:03 2014 +0000

    v2v: Add documentation about what to do about BSOD 0x0000007B (RHBZ#1161333).
    
    After a very long and trying episode with a Windows guest that refused
    to boot after conversion, we managed to successfully boot it by
    disabling Windows Group Policy.  It appears that Group Policy
    prevented the virtio driver from being used.
    
    Document this in the manual.

commit f482ce1fd947b9bc5997639a01e188e3ad9d1bd3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 5 14:29:26 2014 +0000

    v2v: Remove documentation about Windows Recovery Console not supported.
    
    We have now successfully converted guests using WRC, so this statement
    is no longer necessary.

commit d4697a237837384135659f8886969fdb8f78695c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 5 13:52:25 2014 +0000

    v2v: Fix missing loop device which breaks conversion of RHEL 3 guests (RHBZ#1171130).

commit 07987ab0a827975d3378b355416349d99073f0cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 5 13:09:10 2014 +0000

    v2v: Don't use epoch prefix on RPM command line for RHEL <= 4 (RHBZ#1170685).
    
    See the explanation here:
    https://bugzilla.redhat.com/show_bug.cgi?id=1170685#c7

commit d2e396131f8eede1b3c3e72c29c914a02c0da745
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Thu Dec 4 16:40:58 2014 +0800

    fish: fix build warning when readline-devel is missing
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 657f642b112a0318b71fa1aff5e19ef0484e3b58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 5 09:00:11 2014 +0000

    builder: Add support for RHEL 3, RHEL 4.

commit ea4bb4dc3c8f4894142b50b97d3371e33d6b9689
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Wed Dec 3 16:13:12 2014 +0200

    Add freebsd and netbsd distros
    
    Prior to this commit the distro for a FreeBSD or a NetBSD system, in
    conjuction to what happened for OpenBSD, was shown as 'unknown'.
    *BSDs are complete OSes, not a kernel like Linux, but theoritically you
    could have FreeBSD as ostype and PC-BSD as distro.
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit 6e84c3ed6b008abac6eff9a4acad98e30d53127f
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Wed Dec 3 16:12:22 2014 +0200

    Fix fstab block device resolution for FreeBSD
    
    Take into granted that partition 'c' has a special purpose. It has
    always the same size as the enclosing slice and is not mapped under
    Linux.
    
    This is a best effort try. The mapping will be incorrect if there is a
    gap in the disklabel partitions sequence, e.g. 'b' (swap) partition is
    missing but 'd' partition is defined.
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit 631c9d5850fe27548d6527b0f8aac0d4d17525ad
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Wed Dec 3 16:11:33 2014 +0200

    Support fstab block device resolution for NetBSD
    
    Make a best effort try to map NetBSD disklabel partitions to Linux
    partitions. The mapping will be incorrect if there is a gap in the
    disklabel partitions sequence, e.g. 'b' (swap) partition is missing but
    'e' partition is defined.
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit 02f0d0784d19991c820d581cecb0ce14a35a2f4f
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Wed Dec 3 16:10:48 2014 +0200

    inspect_os: Add support for detecting OpenBSD
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit a7f4ef64a087984b21252305f680413c515d3618
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 4 09:13:23 2014 +0000

    v2v: When picking a default kernel, favour non-debug kernels over debug kernels (RHBZ#1170073).

commit 656e354a624bbe1aa1d3c7ec2a02f11506b44d2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 4 22:00:35 2014 +0000

    mllib: Add Common_utils.string_suffix function and extend test coverage.

commit ac7fdb75ef692194206df160478cfa6ea2476d4e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 4 09:12:27 2014 +0000

    v2v: Disable autoreboot when converting Windows guests.
    
    This allows users to see stop errors, so we can get an accurate report
    when things go wrong.

commit db5503890ff84a792071f7d43dabf6ca3fb53552
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 4 17:09:32 2014 +0100

    gobject: link against uninstalled libraries
    
    Make sure to link the gobject library and the gir using the in-tree
    built libguestfs, so a system library won't be used accidentally.

commit 08b003b88afc9a682bb0bab6cddcd9407c2777c0
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Tue Dec 2 19:11:55 2014 +0200

    Remove extra space in inspect-fs-unix.c
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit 11f52af2bf56dcbce3505df9261cbffc7d29ec9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 2 09:50:02 2014 +0000

    build: Map host CPU 'powerpc64le' to qemu-system-ppc64.
    
    Make the corresponding change in libguestfs-test-tool as well.
    
    Thanks: Dan Horák

commit a87c0a50f31bc097ac8c62b11d34523d527091e7
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Mon Dec 1 18:26:12 2014 +0800

    fish: show synopsis if command syntax is wrong
    
    This patch lets guestfish show command synopsis if the syntax of command issued
    by user is wrong, rather than telling user that the number of parameters is wrong.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 7d1a220b1393ee926b9676bf2cea82ba4e233ce2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 29 18:20:52 2014 +0000

    p2v: Refer to virt-v2v resource requirements in virt-p2v man page.

commit e77f094196adc952ff1daaa61af7f2d926e549a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 29 18:20:00 2014 +0000

    p2v: Mention sshd_config setting in the manual page.
    
    The precise sshd configuration has confused some users of virt-p2v.
    Only one setting (AllowTcpForwarding=yes) is required, so document it.

commit ca4af2fdd774ebb3cc4c3cacea6878e12d1857c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 29 12:01:48 2014 +0000

    configure: Require yajl >= 2.0.4 (RHBZ#1169045).
    
    Earlier versions fail to parse integers from 'qemu-img info' output
    correctly, resulting in bugs like
    https://bugzilla.redhat.com/show_bug.cgi?id=1169045
    
    Thanks: muued @ IRC

commit df3e8b22de36024f05247172d1b04d346f1847c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 28 22:26:57 2014 +0000

    tests/c-api: Test that the library can really be loaded with dlopen.
    
    Answer is yes, but it was good to know.

commit 5c5c786a7db1805fd71e99b7039ce782dc688a8f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 28 19:51:47 2014 +0000

    Version 1.29.12.

commit 17e4384116413764ef31ef658b91eaa616cb6b4a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 28 19:50:56 2014 +0000

    Add HACKING file to EXTRA_DIST.
    
    Updates commit 3d3694610fc353ae28c9cf88ff105a04da108c4a.

commit 635553cbf259b29a66fd822ba62d8fce8e2751db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 28 14:43:11 2014 +0000

    lib: Add COMPILE_REGEXP macro to hide regexp constructors/destructors.

commit bafe45a73101dc8fdff15c99f4d425c16c5d2eae
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Thu Nov 27 18:30:33 2014 +0200

    inspect: Fix a bug in the *BSD root detection
    
    The assumption that Linux will map the MBR partition to /dev/sda1
    and the BSD 'a' partition to /dev/sda5 is not always correct.
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit ce1ee7abcdd27227e843b6ae11e55398a3868817
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Nov 28 15:58:07 2014 +0800

    uuid: make alias get-uuid for vfs_uuid
    
    Because get-uuid looks more like a counterpart to set-uuid, and is
    more likely come to mind if one knows set-uuid.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 099e6d86b6686b9197135de69fafcfd99cccd773
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Nov 28 15:58:06 2014 +0800

    uuid: cannot change btrfs filesystem's UUID
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 9caaeacc6ef3e4e4f2770e1c0ca7d3caaeb43df3
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Nov 28 15:58:05 2014 +0800

    uuid: add support to change uuid of swap partition
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit d9df7052f59478a26a9fae803c5527b6f97ac41b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 27 17:40:52 2014 +0000

    v2v: Fix command line --help output for --no-trim option.

commit 56ed943b44b08cae4920f9202e799df2a4a03459
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 26 11:28:24 2014 +0100

    bash: add a completion module for virt-v2v

commit a422277aa6ccbd2d0c8e5d6c3d3ba231e97824c8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 25 20:08:46 2014 +0100

    bash: complete some params for resize, sparsify, and builder
    
    Hardcode the list of fixed arguments for some of the parameters of these
    tools.

commit f1b6a0ddd451c701f76ced967caf38492da09899
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 25 18:36:14 2014 +0100

    bash: complete also short options
    
    Propose both short and long options when trying to complete a single
    dash ("-").

commit 730bdec2bb50ac762d6b3357da7d24493caa906c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 25 18:15:37 2014 +0100

    bash: execute --long-options only when needed
    
    Delay the execution of $tool --long-options only when really using its
    output.

commit 1ba4721bc447fc7dd547c9cac76ccd7d1c53d637
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 25 16:47:34 2014 +0100

    tools: implement --short-options
    
    Just like --long-options, it makes it possible to know which short
    options are supported by each tool; this can help improving the bash
    completion, for example.

commit 1d4403a33ecc49f08b0190dc204b148acff73140
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 27 14:39:31 2014 +0000

    p2v: Add HACKING file.

commit 02f7c584919a27f81f01b4935c97e03da170778d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 26 16:15:40 2014 +0000

    Version 1.29.11.

commit be2269422cd4f72f370dfafb79830209ab1b711d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 26 15:09:33 2014 +0100

    Update gobject/Makefile.inc and POTFILES
    
    Followup of commit a120449c979993f4b5bd458ece00fadb339546d3.

commit b1654279c5168f0bbfbfde09f9105b218f43003b
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Wed Nov 26 17:04:06 2014 +0800

    btrfs: add optional parameter `qgroupid' to btrfs_subvolume_create
    
    Parameter `qgroupid' is for adding the created subvolume to a qgroup.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 01924cc9f12e4d399442066090a1d2c4ecdbbb70
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Wed Nov 26 17:04:05 2014 +0800

    btrfs: add optional parameter `qgroupid' to btrfs_subvolume_snapshot
    
    Parameter `qgroupid' is for adding the created snapshot to a qgroup.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 198769584bbe5428d8376f0f6fc0a8c9c3c4f1de
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 26 14:51:33 2014 +0100

    Update gobject/Makefile.inc and POTFILES
    
    Followup of commit 0b3c1762965f339915fd080884a61dbb36545204.

commit c9ec63d3f764d6d2882475b3a1eeb5b749b0adf7
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Wed Nov 26 17:04:04 2014 +0800

    btrfs: add optional parameter `ro' to btrfs_subvolume_snapshot
    
    Parameter `ro' is for creating readonly btrfs snapshot.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 5ce811be2935f2f86022014dfdae3c645b915aa8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 23 14:32:46 2014 +0000

    Add debug APIs: bmap-file, bmap-device, bmap.
    
    Add *interim* support for a block mapping API, used by the 'virt-bmap'
    tool.  These are debug APIs so they will eventually be replaced by
    real APIs along the lines described here:
    
    https://www.redhat.com/archives/libguestfs/2014-November/msg00197.html

commit 2c76c128a24183f7096d5d009e116a7fd86f8890
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Wed Nov 26 18:10:07 2014 +0800

    typo fix: commmand -> command
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 73b920afc3638d59bfebf30fc3e231888cb54bd6
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Wed Nov 26 18:10:06 2014 +0800

    typo fix: preceeding -> preceding
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 1877e68c7241e35c7c7fe94fb31e999ab2930702
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 25 19:38:44 2014 +0000

    Version 1.29.10.

commit d159f5e8ea5ace9dac1e2c89998362d03f213abc
Author: Nikos Skalkotos <skalkoto@gmail.com>
Date:   Fri Nov 21 21:47:12 2014 +0000

    Add tests for Arch Linux
    
    Signed-off-by: Nikos Skalkotos <skalkoto@gmail.com>

commit ea9db0f56d9fa793436808fdbba75f77fcbd9b1e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 25 11:53:11 2014 +0100

    mllib: check the right out channel for tty
    
    Make sure to check whether the given output channel is a tty before
    sending ANSI terminal codes to it, instead of always check what stdout
    is.

commit af02f0babdf796392d13c7f88f9df9fef1322563
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 25 11:46:02 2014 +0100

    mllib: remove the TTY module
    
    The only function provided is isatty_stdout, which is no more used now
    in favour of Unix.isatty.

commit 0911517f2edb818fa95f6a036b2495a33f9af6ee
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 25 11:40:04 2014 +0100

    mllib: use Unix.isatty
    
    Make use of Unix.isatty instead of our TTY.isatty_stdout, as the
    supported OCaml provides the former already.

commit fab8fb686d95977fa6ae68aba72f7a52f4f81ecc
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Tue Nov 25 13:10:43 2014 +0800

    generator: force longdesc to begin with uppercase
    
    As contrast to shortdesc which is forced to begin with lowercase, this
    patch forces longdesc to begin with uppercase.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 1a3452a95c26a2c2278986781c8117577e5a087a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 25 14:33:55 2014 +0000

    v2v: -i ova: Small correction to warning message.
    
    Thanks: Pino Toscano

commit 39b9058c1cd817634e0d5999735852f56b14f117
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 23 14:31:43 2014 +0000

    New API: guestfs_blockdev_setra: Adjust readahead for filesystems and devices.
    
    This adds a binding for 'blockdev --setra', allowing you to adjust the
    readahead parameter for filesystems and devices.

commit 68b3a68e05045bc0333ad71dc492e5c8a22f586d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 25 14:31:42 2014 +0000

    daemon: blockdev: Allow extraarg to be 0.
    
    No change, since extraarg is not actually used.

commit 587b82808302f82a78a2f7fc9acf6564c03d5b1c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 24 15:59:36 2014 +0000

    v2v: -i ova: Remove incorrect warning for disks that have no parent controller (RHBZ#1167302).
    
    Don't assume every disk <Item> has a <Parent> field.  For floppy disks
    this is not the case.
    
    Thanks: Junqin Zhou

commit 054a491b8d1faec3b70d98ddb63bacb7490a3781
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 24 10:56:57 2014 +0000

    ntfsresize: Capture errors sent to stdout (RHBZ#1166618).
    
    ntfsresize sends error messages to stdout.  Capture those error
    messages.

commit 4ccec1a84ccdbf08ee913cfe50be95d6a6ae2a7f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 23 14:28:46 2014 +0000

    lib: guestfs_disk_create: Allow vmdk as a valid backingformat.
    
    Commit 588af1953e5f7ab74009b9175cc5d3efb8bb651a started with a very
    conservative list of permitted backing formats (just "raw" or
    "qcow2").  We can allow almost any format permitted by qemu, but this
    commit just adds "vmdk" to this whitelist.

commit b1f0bd2f87c2d5d124df6c422f2ae52efb5b74dc
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Nov 21 13:17:55 2014 +0800

    btrfs: correct words about subvolume and snapshot
    
    btrfs_subvolume_create creates only subvolumes. btrfs_subvolume_delete
    deletes subvolumes or snapshots.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit a6ad657ffd152c1bc6965d3dea9b7f8aee1f3a16
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 21 16:10:33 2014 +0100

    src: inspect: move read_package within the -Wno-cast-align block
    
    Starting from commit e260460a8f608cb30093d7512b12f6ee11841456 be32toh is
    used, which means possible "unaligned cast" warnings (already covered in
    get_rpm_header_tag).

commit 61d10282f622318ae7a816731dfa7bb141c96689
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 21 16:08:50 2014 +0100

    build: mllib: put $(LIBTINFO_LIBS) within '...'
    
    This helps when $(LIBTINFO_LIBS) contains spaces (i.e. more than one
    "word").

commit 0b74d0f90b5e304e2757313a570768875e3aba28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 22:22:49 2014 +0000

    p2v: Include version and md5sum in kickstart.
    
    Include the version of virt-p2v and its MD5 checksum in the source
    kickstart.  This is useful for working out which version of virt-p2v
    the kickstart corresponds to.

commit ff1a95585a2877935b0b406655d713465c7db53f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 21:49:03 2014 +0000

    Version 1.29.9.

commit 89bfb04e9304dc5ed1f474acccd91dc6025ad843
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 16:08:43 2014 +0000

    p2v: Make the "Cancel Conversion" button work (RHBZ#1165569).
    
    This relies on the remote to keep sending us data.  If it hangs, then
    the cancel button won't work.  This could also be fixed by introducing
    a timeout to the read syscall.

commit 443e5b0ee1c787f0231c0912c17c24bc3e4b62da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 16:01:09 2014 +0000

    p2v: Disable "Cancel Conversion" button after the conversion (RHBZ#1165569).
    
    Actually this bug does nothing and remains cancelled all the
    way through.  The next commit makes it function.

commit 58ea493588d227af48e977fb0ebe93b93af9c058
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 15:59:50 2014 +0000

    p2v: Add 'Reboot' button to the GUI (RHBZ#1165564).

commit 7c5d4e450eabf63744d2b7c5a223452ce4737e87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 15:37:44 2014 +0000

    p2v: gui: Get the correct button for cancel_button.
    
    I was fetching cancel_button from the wrong dialog (conv_dlg, not
    run_dlg), and therefore getting the wrong button.
    
    This explains why the back button on the conversion dialog was always
    insensitive.  It's because cancel_button was assigned to this button,
    and then I was setting cancel_button to insensitive.

commit 99a1ee1d71955d89efc1cba4b113fd65addbd596
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 16:10:08 2014 +0000

    p2v: Remove --fullscreen option.
    
    It did nothing and was left over from an earlier attempt to add
    fullscreen mode.  That is not needed any longer since we now run
    virt-p2v under the matchbox window manager.

commit c669e0404687abcf8988a1e6dbb352060e59366b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 13:05:26 2014 +0000

    appliance: When running systemd-tmpfiles, pass --boot option (RHBZ#1165785).
    
    This causes all tmpfiles to be created.

commit 65e031a68907db8f05bc366ad3ddc578e672fbd1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 13:04:45 2014 +0000

    appliance: Create tmpfiles before running udev.
    
    This is the same order as systemd would run them.

commit 50d34d63e68f80b2f9780d29e1c7cb57c78f6bf0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 11:22:32 2014 +0000

    v2v: linux: Delete the LVM cache which may reference old devices (RHBZ#1164853).
    
    Thanks: Bryn M. Reeves

commit a8e71c75e42af5945eb512e819ffef873dfa9ee0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 20 10:08:51 2014 +0000

    v2v: linux: Remap device names in /boot/grub2/device.map (RHBZ#1165975).
    
    Thanks: Junquin Zhou

commit 2ab1d5a91b1371eb6f15f86bb8118e3fe19b67ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 19 13:20:13 2014 +0000

    v2v: linux: In verbose mode, add dracut --verbose parameter.
    
    So we can see exactly what dracut is doing in the debug output.

commit 21d5f2a335a5a45292629bb2c439975d6ee5e8fe
Author: Nikos Skalkotos <skalkoto@gmail.com>
Date:   Mon Nov 17 22:48:01 2014 +0000

    inspection: deb: Seperate epoch field from version
    
    Return it in the app2_epoch field of the guestfs_application2 struct
    
    Signed-off-by: Nikos Skalkotos <skalkoto@gmail.com>

commit 9fcabf203c786d7c5a070335df64c831fcc2fd4f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 18 16:55:21 2014 +0000

    Version 1.29.8.

commit f256d49a645a8e5b94a457272ebcceed2ab0b7e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 18 14:17:35 2014 +0000

    v2v: linux: Refactor device replacement code.
    
    No functional change.  This should be equivalent to previously.

commit ca4cb00cb864395762a8aa1cb5f62ff654e991c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 18 14:16:39 2014 +0000

    v2v: linux: Always match partition number in regexp.
    
    Change the rex_device_p regular expression to always include a
    partition number.
    
    There should be no functional change here.

commit 5529c7c07b88c163ac29cd196f78d21fca1c833f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 18 13:53:13 2014 +0000

    v2v: linux: Print block device map in verbose mode.
    
    Very useful for debugging device mapping problems.

commit 160ccbaa0689ebb1af31c6a2c6043009f674319b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 18 13:37:21 2014 +0000

    v2v: Don't change Augeas device entries unless the value has changed.
    
    When remapping block devices, don't change an entry unless its value
    has changed.  This avoids unnecessary Augeas writes.

commit d543445ca70a02cc58ccab2aa180b1abfafcb22d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 18 13:07:42 2014 +0000

    v2v: Don't use <target dev> attribute, use <target bus> instead.
    
    The <target dev> attribute in libvirt isn't very informative.  What we
    really want to know is whether the source disk used IDE or SCSI, as
    that allows us to remap block devices accurately during conversion.
    For example, if the source was IDE and RHEL 5, and after conversion
    virtio will be supported, then we know that we need to remap
    "/dev/hda" to "/dev/vda".
    
    Drop the s_target_dev and s_removable_target_dev fields and replace
    them with s_controller and s_removable_controller.
    
    For -i libvirt, use the <target bus> attribute to get this information.
    
    For -i ova, use the OVF disk controller's ResourceType.
    (http://blogs.vmware.com/vapp/2009/11/virtual-hardware-in-ovf-part-1.html)

commit 5b25fc393a36903553bbe1a824fefc591d7d636b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 18 12:35:38 2014 +0000

    v2v: -i ova: XML is case-sensitive, so replace 'InstanceId' with 'InstanceID'.

commit f4b2938c28b68f3128b8613d3c6f1e8dc3a9aaf5
Author: Nikos Skalkotos <skalkoto@gmail.com>
Date:   Mon Nov 17 19:24:03 2014 +0000

    list-applications: Add support for pacman
    
    Extend the guestfs_inspect_list_applications2 API call to work on Arch
    Linux guest images.
    
    Signed-off-by: Nikos Skalkotos <skalkoto@gmail.com>

commit 3c368b795f981b84245d85e25c5d9102453b3aa3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 17 13:11:38 2014 +0000

    inspection: rpm: Return Epoch field of RPMs in application data.
    
    Bug found by: Nikos Skalkotos

commit 320b4fae4986af3e0b3a17399937055666ded41f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 17 10:33:35 2014 +0000

    inspection: Allow /etc/favicon.png to be a symbolic link (RHBZ#1164619).
    
    If /etc/favicon.png is a symbolic link, follow it.
    
    Unfortunately RHEL 7 and Fedora have crappy 16x16 /etc/favicon.png
    symlinks in the base distro.  It would be nice to ignore this symlink,
    but it's almost impossible to determine if the symlink is part of the
    base distro or was added by the user.  (This is a bug in those
    distros.)  virt-inspector and virt-mananger both ignore favicons.

commit 6ed05d1b508c6fda1657c7651812726f83282a9e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 17 10:25:33 2014 +0000

    inspection: Get icons from RHEL and CentOS 7 (RHBZ#1164619).

commit 8f6a1af6a57e8fcb56fba9879de8256d0da79b41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 17 10:07:28 2014 +0000

    Fix description of 'set_append' and 'get_append' APIs (RHBZ#1164732).
    
    These should refer to the libguestfs appliance kernel command
    line, not the guest kernel command line.
    
    Thanks: Lingfei Kong

commit 56e73f0761839ec74ffecae38566fa387fb0552d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 17 09:31:55 2014 +0000

    Fix minor typo in release notes (RHBZ#1164697).

commit f44b79921f9047f13a6e48adbb4158d0221c02c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 17 08:58:08 2014 +0000

    v2v: Simplify calculation of Mbps in verbose output.

commit 1e779bcf4ae311b58e54a3fb3a1c23652350d66e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 17 08:57:34 2014 +0000

    v2v: Comment change.

commit 7f74871364f2a283b68ff4678b6257d1188c0f79
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 15 18:26:54 2014 +0000

    v2v: Make source s.hypervisor field type-safe.

commit 0049c305240fb08ab9807321af2e2984a403542b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 15 17:42:19 2014 +0000

    v2v: Rename source field 's_dom_type' to 's_hypervisor'.
    
    Also the source hypervisor cannot be "kvm".  Choose another example
    for the comment.
    
    For disks, set the source hypervisor string to "unknown".

commit a1fc25068e3b0cb455754d440e9264ca599552f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 15 17:38:00 2014 +0000

    ocaml: Remove *.annot files when doing 'make clean'.
    
    Commit fd70cdc3c58a9f240ef8dbbef73ed13054917220 passes the -annot flag
    to the compiler, generating *.annot files (containing type information
    used by emacs and IDEs).  Remove these files when doing 'make clean'.

commit adb05dc9729bf581effab2d98b91765cd36b40fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 15 17:09:59 2014 +0000

    Version 1.29.7.

commit 12e80dc8eecc1e3b9fe491dfa4205e1986c0fb74
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Nov 14 18:04:12 2014 +0100

    appliance: explicitly add libyajl2 on openSUSE
    
    While it has always been needed, it has been implicitly pulled in by
    some other package. Hence, make it sure to always have it.

commit 732491fb4b6e5b8c7714631721ae9eacb1f83422
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 13 15:30:52 2014 +0000

    df: Allow policykit and SASL authentication when reading list of domains.
    
    Use virConnectOpenAuth instead of virConnectOpenReadOnly.
    
    See also:
    https://www.redhat.com/archives/libguestfs/2014-November/thread.html#00035

commit ba6d90ef4703040e868d32423fb0e0ea904ad94d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Nov 12 09:50:59 2014 +0100

    daemon: check xfs label lengths (RHBZ#1162966).
    
    Similar to commit 52f9cd4882135910ea06e1e50ac6441d455c9ab1, but for xfs
    filesystems.

commit 9964c7454996b8cfecc3de439ab9fd61e62258ad
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 10 14:53:07 2014 +0100

    configure: simplify the qemu cpu mapping
    
    Use AS_CASE to properly map from the host cpu to the qemu cpu suffix;
    this avoids doing multiple string replacements using sed, and it is
    possible to use case-like syntax.

commit d25fc45ad6f0e7ba42ee6542332e37444995d0e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 13 13:22:21 2014 +0000

    Rename LIBNCURSES* to LIBTINFO*.
    
    We actually depend on libtinfo or libtermcap, not curses, so
    rename the variable.
    
    This updates commit 96add4d5b34daabbae5a2766f564ae98b48cf576.

commit 02ced320a649b8022d319b96249e461ee9410a39
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Mon Nov 10 22:47:51 2014 -0500

    use pkg-config to look up ncurses
    
    Hardcoding -ltinfo breaks on distros that do not build the sep library
    (which is the default ncurses behavior).  Use pkg-config to look up the
    right libraries regardless of how the distro built things.

commit 22f898bead32a407dc5f63b0304af32614210d1e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 7 11:25:06 2014 +0000

    v2v: -o glance: Fix metadata for disk type and NIC (RHBZ#1161575).
    
    The labels 'hw_disk_bus' and 'hw_vif_model' were swapped.  This
    happened to work for virtio guests.  For non-virtio guests you ended
    up with absurdities like requiring an rtl8139 driver for the disk.
    
    Thanks: Junquin Zhou

commit 781e2e45e634094f6799e6cfa965d838da1afbe0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 6 22:07:26 2014 +0000

    Version 1.29.6.

commit 23bc738c6aa8d923a19f899439622dfb28b6ed2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 6 18:49:46 2014 +0000

    v2v: Warn if a kernel-* package is found containing no files.

commit a82a3638eb4cc643e11500eaa2192fcc041d3b26
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 6 18:47:34 2014 +0000

    v2v: Fix kernel detection when multiple kernels are installed (RHBZ#1161250).
    
    Previously we used to try to find the 'vmlinuz' file by running 'rpm
    -ql kernel' and looking for any file called 'vmlinuz-*'.
    
    If there were multiple 'kernel' packages installed, the rpm command
    would list files from all of them, resulting in a random 'vmlinuz-*'
    being chosen, not necessarily the one corresponding to the kernel
    package we were looking at.
    
    Use 'rpm -ql kernel-<VERSION>-<RELEASE>' instead so that we only look
    for files in the right kernel package.
    
    Thanks: James Mighion

commit 6bf30ddc40111390f3aa739a8ba33fa7a7ee78ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 6 15:15:39 2014 +0000

    test-tool: Map powerpc64 -> ppc64 when searching for qemu.
    
    Consequence of the previous commit.
    
    This also adjusts the whitespace to make the generated script
    a bit nicer.

commit e9764e20d50b23041cc0737db1b2a31a3f37da4f
Author: David Sommerseth <davids@redhat.com>
Date:   Thu Nov 6 15:14:04 2014 +0000

    configure: Map powerpc64 -> ppc64.

commit fd69858c8a81d0de2d2352bb1953f960b2851fe8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 6 09:52:32 2014 +0000

    v2v: Document minimum free filesystem space requirements.

commit 20d31776f6d26f5358cb2e6931e68009fdda133c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 6 09:47:21 2014 +0000

    v2v: Ignore small filesystems when checking for sufficient free space.

commit c38798fe85dfac6a9be884cc81be5a8aedb91f6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 5 21:34:58 2014 +0000

    Use -ltinfo instead of -lncurses.
    
    In tools except guestfish, we don't use ncurses, or even curses, just
    2 termcap functions and a global variable.  These are provided by
    libtinfo, so just link to that.
    
    In guestfish we use readline which needs ncurses.  Leave that alone.

commit 7795baa6b78e4540752da6c140a158ed51bd3dd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 5 15:41:32 2014 +0000

    Version 1.29.5.

commit b5002b30ff270c540731c8836e752db2aabc671e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 5 14:33:39 2014 +0000

    daemon: strings: Use -a option to avoid using BFD to parse files.
    
    Avoids hitting CVE-2014-8484 and CVE-2014-8485 and similar problems
    with BFD parsing on untrusted files.

commit 462a813d7e9def1b76080890e0ff7ab7d6a2ce52
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 4 18:02:56 2014 +0100

    build: check for libintl, and use it
    
    Look for libint/gettext and link to it; this properly detects whether
    libint is part of libc.

commit 74010433477d2e23799fa5e8ad968a9d61dd67c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 4 21:21:20 2014 +0000

    v2v: -i libvirt vcenter: Change 'esx:' to 'vcenter:' in errors/warnings.
    
    'esx' is inaccurate.

commit f6a70c36918474d2ba7b4523a765bb531945fb43
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 4 09:59:41 2014 +0100

    tests/qemu: isolate MD5 calculation in an own shared function
    
    md5sum(1) does not exist everywhere, so wrap it in an own function so
    the right implementation can be chosen on each OS.  Also, wrapping it
    avoid using awk everytime.

commit ff4fd32684dc3747e70a9cd7486cf9da2e4ead25
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 3 16:49:59 2014 +0100

    ruby: fix detection of ruby library
    
    Query RbConfig::CONFIG for "libdir", and use that when trying to link to
    the ruby library.  This fixes the libruby detection when it is installed
    in a non-standard library directory.

commit 4b094aa26091d02685ae0e43347c6c3b12faa5a0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 4 18:02:04 2014 +0100

    test-charset-fidelity: use and link against gnulib
    
    It uses error() which is specific to GNU libc, but supplied by gnulib if
    not available.

commit 5a4962dfc6813097e4ee0241c06c601194c06474
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 30 14:52:28 2014 +0100

    build: isolate the libdb tools search in an own autoconf macro
    
    Create an autoconf macro to deal with the possible combinations of names
    and versions of the libdb tools. This also eases the addition of a libdb
    version, or a new pattern for the names of tools.
    
    There is no functional change.

commit c8769830a4b3a79e99c8a11d9ef5e6b56bc666e4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 29 18:53:07 2014 +0100

    builder: fix inclusion of <config.h> in lex-generated source
    
    Use a %top block for including <config.h>, so it is included prior to
    any other include, even for system ones. This makes sure its definitions
    are properly used in gnulib replacement headers.

commit d5550f0c882258c013527a7ad8d364d9f380b2cc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 27 13:08:34 2014 +0100

    src: launch: cast the sockaddr args to sockaddr*
    
    This matches what generally done for passing socket addresses to e.g.
    socket and bind, and already done in other parts of libguestfs.

commit 010c9270dd465075bbf159da48eaddb6cbd87104
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 27 10:59:43 2014 +0100

    build: check for UNIX_PATH_MAX, and properly define it if not
    
    Do a configure check to see whether UNIX_PATH_MAX is defined; if it is
    not defined, provide it with the size of sun_path in the struct
    sockaddr_un, thus with the proper size for any libc.

commit 11830cd887e73cb93a63c1e51ac1058147253784
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 4 10:49:01 2014 +0100

    bash: fix build/clean when srcdir==builddir
    
    Use CLEANFILES to remove the generated symlinks, and just ignore the
    errors when copying the scripts in srcdir!=builddir situations.
    
    Followup of commit 40ac54829d4e71b1bac76343872a2674a40c7ac0.

commit fa5b55025ff80aa45397e05b0edaa9c0fe031ebb
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri Oct 31 20:03:22 2014 +0100

    Fix, simplify out-of-tree build/install for bash completions

commit 4b1cd40635d4dcd7ce953865ed4c8e5fdb8fdfdc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Nov 4 09:16:17 2014 +0100

    customize: firstboot: fix Linux log output
    
    Pass -a to each tee invocation, otherwise just the last one (so only for
    the last script executed) will appear in the log file.

commit 2a08b83e1820db21d721adbddb7f68a12b1d1579
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 3 21:15:59 2014 +0100

    customize: firstboot: make sure to run Linux scripts only once
    
    If a script does not finish, hangs, etc, it would be executed again at
    the next boot, since the injected firstboot.sh helper removes it only
    after it finished.
    
    Before executing a script, move it to another internal subdirectory
    (scripts-done) and execute it from there, so it is not run again by
    firstboot.sh.  The downside is that now scripts are executed only once
    at all, so if a script fails it will not be attempted at the next boot.
    
    Also, remove all the files found in scripts-done, as they have been run
    (or at least attempted) in a previous boot.
    
    This fixes RHBZ#1159651.

commit 69e23d33af7f20826f6069dd9f840288bc5f4190
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Nov 3 19:30:54 2014 +0100

    customize: Add --ssh-inject option for injecting SSH keys.
    
    This adds a customize option:
    
      virt-customize --ssh-inject USER
      virt-customize --ssh-inject USER:string:KEY_STRING
      virt-customize --ssh-inject USER:file:FILENAME
    
    (ditto for virt-builder and virt-sysprep)
    
    In each case this injects into the guest user USER
    a) the current (host) user's ssh pubkey
    b) the key specified as KEY_STRING
    c) the key in FILENAME
    adding it to ~USER/.ssh/authorized_keys in the guest.
    
    For example:
    
      virt-builder fedora-20 --ssh-inject root
    
    will add the local user's ssh pubkey into the root account of the
    newly created guest.  Or:
    
      virt-customize -a disk.img \
         --ssh-inject 'mary:string:ssh-rsa AAAA.... mary@localhost'
    
    adds the given ssh pubkey to mary's account in the guest.
    
    This doesn't set the SELinux labels correctly on newly created files
    and directories, so you have to use --selinux-relabel (probably we
    should fix this as part of the general effort to fix SELinux
    relabelling).  However it should preserve the labels if the
    ~/.ssh/authorized_keys file already exists.
    
    Most of this work is based on a patch sent to the mailing list by
    Richard W.M. Jones <rjones@redhat.com>:
    https://www.redhat.com/archives/libguestfs/2014-November/msg00000.html

commit 8cb16f25c4beb6467091960f0a245ea339ea58ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 3 19:38:12 2014 +0000

    v2v: Ensure --bridge and --network args are documented correctly in --help output.

commit 382af85221fa2476b2ba3e5feaea70a8f3e3c59e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 1 21:08:53 2014 +0000

    generator: customize: Insert whitespace between entries.
    
    Just a whitespace change.

commit 084fb8131fff5c2582357d2d85d45aefe29bb1ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 31 18:30:36 2014 +0000

    daemon: No longer needs its own copy of gnulib.
    
    Since the daemon has long since used the same build system as the rest
    of libguestfs, it no longer needs its own gnulib.
    
    This arcane bit of code was left over from
    commit e05ddc70f1fa6d1e8253d69c5d17e69bfad2be90 (added 2009-08-03 !)

commit ce1b226e56243197d86a5cdb201eedad9319cd53
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 31 17:47:18 2014 +0000

    Version 1.29.4.

commit 7de9c5a69350232770ecdb802e51cc11e12c999e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 31 11:02:33 2014 +0000

    launch: libvirt: Implement drive secrets (RHBZ#1159016).
    
    Implement the GUESTFS_ADD_DRIVE_OPTS_SECRET argument of
    guestfs_add_drive_opts.  For libvirt we have to save the secret in
    libvirtd first, get a UUID, and then pass the UUID back through the
    domain XML.

commit 955cfdd77ae8676d35db4ead9f0f79bb3f1be21d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 31 14:16:36 2014 +0000

    v2v: -o libvirt: Get the <features/> right in the output XML (RHBZ#1159258).
    
    Implement what old virt-v2v did (from
    lib/Sys/VirtConvert/Connection/LibVirtTarget.pm)
    
    Thanks: Tingting Zheng, Matthew Booth

commit 50fb643304466443a39f279d29f75abca18cd792
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 31 17:45:04 2014 +0100

    fish: complete symlink properly
    
    When an entry is a symlink, check whether it points to a directory, so
    the entry for it can be completed correctly.

commit 4b6e4008361813aa7fb2e237d9887033b1b338a2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 31 17:37:22 2014 +0100

    fish: fix dir completion on filesystems w/o dirent.d_type (RHBZ#1153844).
    
    On filesystems whose dirent.d_type is DT_UNKNOWN or some unknown value,
    manually check whether an entry is a directory, thus completing in the
    proper way.

commit 52776e5b3f75106ac7e89fbad379e883ce7df098
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 31 16:11:01 2014 +0100

    builder: pass Sources.source objects directly
    
    Instead of passing the (uri, key, proxy) tuple around, pass the whole
    Sources.source record; this requires creating proper Sources.source also
    for uri+fingerprint passed via command line.
    
    No functional changes.

commit 0e82f440542d798f53b9d1755fea6cfb34f1a0e4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 31 15:17:51 2014 +0100

    builder: use gpgkey_type for the gpgkey field in sources

commit ac7be1b2403834f312f3f8c8ce332aec42597038
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 31 15:05:32 2014 +0100

    builder: move the gpgkey_type type from Sigchecker to Utils
    
    No functional change, just code motion.

commit 3e53dbd0e4eb91655656de44791f950f115f4251
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 31 15:57:45 2014 +0000

    v2v: Add bounds check to Xml.xpathobj_node function.
    
    I accidentally called it with an out-of-bounds index, and it caused a
    core dump.  Add a bounds check to stop this from happening in
    production.

commit 942f15dadcbd341c314c07e73c0af72aece5c5ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 31 13:44:57 2014 +0000

    builder: Updated CentOS image to 6.6.

commit d199d648161593fa24563402bba74d968a5f1693
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 31 10:50:20 2014 +0000

    src/info.c: Remove incorrect comment.

commit 54c4123f8cd1b8a8ce5491adf80b4a4909084708
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 30 22:21:47 2014 +0000

    Version 1.29.3.

commit dfb14132463f86cd80c682465cef26186940e51e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 30 13:34:12 2014 +0000

    v2v: Add --password-file parameter (RHBZ#1158526).
    
    This allows you to send passwords to virt-v2v input modes without
    being interactive.

commit ecc13b68f2d9dfeca9625118dd195cf7f52d2624
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 30 09:02:00 2014 +0000

    v2v: vmware: Use 'curl --config' to pass arguments securely to curl.
    
    Instead of making up an ordinary curl command line, write a temporary
    config file and use 'curl --config tmpfile' to pass the arguments.
    
    The advantage is that it's more secure if we want to supply passwords
    to curl, since a '--user username:password' parameter on the command
    line could be read (eg. by 'ps ax'), but the temporary file has mode
    0600 and cannot be read by other users.
    
    This is mostly code motion, but it also passes the '-q' option to curl
    to stop it from reading default configuration files.

commit 737adf1debed31b2dc957ffbb0d1f1d40068a919
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 30 13:47:23 2014 +0000

    v2v: Remove useless parentheses around expression.

commit e4815f036cbfaebdb910586644fa3d8d93b76de5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 28 11:21:08 2014 +0000

    p2v: kickstart: Add rpm to list of packages.
    
    Avoids RHBZ#1089566.

commit e23826fea4c3656f554a628fe8174d3ab57c8700
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 28 11:20:30 2014 +0000

    p2v: kickstart: Remove 'install' line.
    
    'install' is the default operation, it doesn't have to be specified.

commit 804b7fb4c8057997b9a70b5343ccfa07cb8971f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 28 09:00:29 2014 +0000

    p2v: kickstart: Add firewalld to the ISO to allow firewall to be enabled.

commit fc2801ff1cae63eb895ed58186fd42a66c43f15e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 28 08:55:46 2014 +0000

    p2v: kickstart: Name the ISO 'virt-p2v'.

commit 93e6c435e52df876c0cbdbfe619e12ba380eff9e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 29 18:01:52 2014 +0000

    v2v: Add a support matrix to the manual page.
    
    This explains what does and doesn't work.

commit 36f1894fa4d49d57e9c14f6825f4e7b4f82290b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 28 22:48:57 2014 +0000

    builder: Document that --edit option can be split across lines.

commit 2aae92b95d92c83fabf9d9645d92c1c4d4c9c107
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 28 08:51:06 2014 +0000

    p2v: Ensure we are using virt-v2v >= 1.28.
    
    Must NOT use:
    
    - One of the interim versions of virt-v2v (1.27.x) that we published
      during development.
    
    - Old virt-v2v (0.9.x).
    
    Also use the --version option (instead of -V) since old virt-v2v
    required it:
    
      $ virt-v2v -V
      Option v is ambiguous (version, vmtype)
      Usage:
      [...]
      $ virt-v2v --version
      0.9.1

commit d37510a4153026bed3b8a7e5ced4aa8728845f8b
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Tue Oct 28 15:51:24 2014 +0800

    sysprep: remove /var/spool/mail/username
    
    remove /var/spool/mail/username if --enable user-account.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit ceb949885a5d23be3cff6a99bc4ebd1bcbbfdc51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 27 17:50:58 2014 +0000

    Document three (fixed) security problems in the main manual page.
    
    Previously these were only covered in the release notes, but not in
    the "SECURITY" section of guestfs(3).

commit dab5a2b4186ce0e6a2ab01520a56593c65b4665a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 27 17:44:54 2014 +0000

    Add warnings about using guestfs_strings* APIs because of CVE-2014-8484 and CVE-2014-8485.

commit 83e6c56bcde8887890843886644460214109a771
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 27 15:42:02 2014 +0000

    p2v: Add usb-storage module and rebuild initrd (RHBZ#1157679).
    
    Include the usb-storage kernel module, to permit booting from USB
    keys.
    
    Rerun dracut to rebuild the initramfs.  This is complicated because by
    default dracut will try to build an initramfs for the running
    (ie. appliance) kernel, which is completely useless.  We need to find
    the latest installed kernel and rebuild the initramfs for that
    instead, which is hairy.
    
    This also does a small refactoring of the distro-specific code,
    removing the $selinux_relabel variable and replacing it with a generic
    $extra_args variable.
    
    I only added this to the virt-builder script, since one assumes that
    livecd-creator/whatever should make the kickstart ISO bootable by
    installing whatever drivers and modules are necessary.

commit ce43ddd852d39f99ee731edd0a93dd79ed7b8ae9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 27 16:10:28 2014 +0000

    Revert "p2v: Add usb-storage dracut module to allow boot from USB key (RHBZ#1157679)."
    
    Running 'dracut -f' installs a dracut for the running kernel (of the
    appliance) not the installed kernel.  Stupid stupid stupid.
    
    This reverts commit 7a6d44ebfe23f28f46f6af1fd48ea8371473529b.

commit bb1b12b0e91c607f0b8e66c95d9304e5284184ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 27 15:42:02 2014 +0000

    p2v: Add usb-storage dracut module to allow boot from USB key (RHBZ#1157679).
    
    I only added this to the virt-builder script, since one assumes that
    livecd-creator/whatever should make the kickstart ISO bootable by
    installing whatever drivers and modules are necessary.

commit 3dd58d318c59399e7e45b9e86d782822b1b87b36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 27 13:41:49 2014 +0000

    p2v: Add "Hardware Support" group to the P2V images (RHBZ#1157679).
    
    Thanks: Chris Adams

commit a751a26b75b4820a095639e867e056547b229fe4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 26 19:35:36 2014 +0000

    p2v: Explain in the man page why the virt-p2v ISO is used.

commit 62ae01bbd3bf819c40285a548102bc4096b06fd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 25 17:56:45 2014 +0100

    Version 1.29.2.

commit c34c63ec8bb974fac418ac6f8d95158364c28816
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 25 15:35:49 2014 +0100

    sparsify: Add Utils module and use common error/warning/info functions.
    
    This program needs quite a lot more work, in particular to make the
    regular messages use 'make_message_function' instead of 'printf'.

commit 73bc5488a8748b6f625b51fb960dbe3d2218cdfb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 25 11:36:15 2014 +0100

    resize: Tidy up messages.
    
    Add common error/warning/info functions.
    
    Examine every existing call to printf/eprintf and change where
    necessary so that:
    
     - error is used instead of eprintf + exit 1
    
     - warning no longer needs ~prog argument (it is added by Utils module)
    
     - any verbose output should go to stdout, not stderr
    
     - info is used to print general informational messages
    
    Also, don't indent summary of changes.

commit 38aa4d50f78b275741e980e9d6a817a95ebd30f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 25 15:13:27 2014 +0100

    sysprep: Use common error/warning/info functions.

commit bb715e0c6248100eac0d83cf0f9d31437f953858
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 25 15:06:08 2014 +0100

    v2v: Add Utils.warning and Utils.info that don't require ~prog parameter.

commit 1b30cd1e178b0d0d3fea4e47393941fa5ca483cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 25 11:36:15 2014 +0100

    customize: Add Customize_utils module and use common error/warning/info functions.
    
    Add a Customize_utils module.  This contains common error/warning/info
    functions, and also quote = Filename.quote.
    
    Examine every existing call to printf/eprintf and change where
    necessary so that:
    
     - error is used instead of eprintf + exit 1
    
     - warning no longer needs ~prog argument (it is added by Utils module)
    
     - any verbose output should go to stdout, not stderr
    
     - info is used to print general informational messages
    
    Also, don't pass ~prog parameter around.  Instead we just get it from
    the executable name.

commit cef45c22b25f595787cbb47565d560449c4e5508
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 25 11:36:15 2014 +0100

    builder: Add Utils module and use common error/warning/info functions.
    
    Add a Utils module.  This contains common error/warning/info functions,
    and also quote = Filename.quote.
    
    Examine every existing call to printf/eprintf and change where
    necessary so that:
    
     - error is used instead of eprintf + exit 1
    
     - warning no longer needs ~prog argument (it is added by Utils module)
    
     - any verbose output should go to stdout, not stderr
    
     - info is used to print general informational messages

commit 0e8408ead5e37e19d73cf53f705e9f38a5d6be95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 24 16:55:36 2014 +0100

    test-tool: Handle mapping other architectures to qemu-system-* binaries.

commit f33737951d356e6bc2eb3e2ac15fce936dee28d1
Author: Menanteau Guy <menantea@linux.vnet.ibm.com>
Date:   Fri Oct 24 16:51:02 2014 +0100

    ppc64le: test-tool: Use correct qemu-system-ppc64 binary when creating qemu wrapper.

commit d956cdff049d342922a0dcc1462062354369b2de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 24 14:40:57 2014 +0100

    ppc64le: configure: Look for qemu-system-ppc64 binary (RHBZ#1156449).

commit efbd6e64485836802687ce46f8ca4ff6cd7a4be5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 24 09:53:21 2014 +0100

    inspector: Document that -a option can take a URI for remote storage (RHBZ#1156301).

commit 0f8a10b20f413035adb544e4aee6feef9ef93b97
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 24 09:13:25 2014 +0100

    bash-completion: Install symbolic links instead of copies of files (RHBZ#1156298).

commit 7812967175e4cc2dfbd745d316631e18f4a83cb4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 24 09:12:56 2014 +0100

    bash-completion: Replace 'ln -sf' commands with rm; $(LN_S).

commit 650c13db04eb56acc447158f75cf80f47ef7bd35
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 22 19:23:18 2014 +0200

    configure: map also amd64 as host_cpu to x86_64 qemu

commit ff484344a49e9a2164ea55d8e0d1a973f9afd891
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 22 18:13:49 2014 +0200

    tests: switch from get_current_dir_name to getcwd(0, NULL)
    
    get_current_dir_name exists on GNU libc only, so not portable.
    On the other hand, while POSIX leaves a null buffer argument for getcwd
    as unspecified behaviour, basically the most used/important Unix
    implementations (GNU libc, FreeBSD's libc, etc) allow such value,
    returning a new allocated buffer with the current directory.
    
    In any case, the change just affects two tests, so even if it hits a
    libc not implementing this behaviour for getcwd, only tests are
    affected.

commit 502b3c0033037bf45d5fb74930395c992ab1cd58
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 22 10:20:01 2014 +0200

    customize, mllib: use the libvirt CFLAGS
    
    uri-c.c and perl_edit-c.c end up (directly or indirectly) including
    guestfs-internal-frontend.h, which in turns includes libvirt/libvirt.h;
    hence, make sure to use the libvirt CFLAGS.

commit 9781f38049bd073131ab9f8685f3ee897c59cba3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 20 18:11:00 2014 +0200

    actions: mark as IfNotCrossAppliance tests of command and command_lines
    
    All these tests copy to the appliance a tool built on the host, and run
    it.

commit c46c2af2a00585b32a535fe3cd19b68690e914e8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 20 17:59:56 2014 +0200

    tests/c-api: add a way to skip test when host and appliance differ
    
    Add a IfNotCrossAppliance prereq for tests, so a test using it can only
    be run when the appliance is a copy of the running host system; this can
    help marking tests which run stuff (usually built in the host) inside
    the appliance.

commit 415e8c03b81b31c45a1b05799591dc063d9d6f75
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 20 16:32:01 2014 +0200

    build: use $(SED) instead of sed when possible
    
    Make use of the sed executable set at configure time.

commit 07c76da7d37dcde2da71dca11fd0c903e16fce9e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 20 12:28:46 2014 +0200

    Include stdint.h where needed
    
    Required for using int64_t, etc. Apparently implicitly pulled so far.

commit 8b6862784582615bafb7986f8823a4c9264579ce
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 20 10:39:03 2014 +0200

    tests: isolate iso_system_id baseline string
    
    Move the reference iso_system_id for the isoinfo_device test to an own
    define for Linux, with an error for unknown OSes.

commit 588f66d7f47b2d1c3374fa738c5a9f104c80134e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 17 14:46:40 2014 +0200

    builder: rename "program_name" into "progname"
    
    "program_name" is already used as shorthand define for
    program_invocation_short_name.

commit a4a5baafa402a3b7f4ea392ac0a016238eed5864
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 17 13:53:50 2014 +0200

    normalize iconv handling
    
    Since the signature of iconv() changes between implementations (the
    constness of the second parameter, in particular), make use of the iconv
    module of gnulib to handle these potential differences, including an
    external (out of libc) iconv implementation.

commit 9ebf39217231bdfba4aedd5ebb9ba16616200c2b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 16 15:16:28 2014 +0200

    p2v: remove unused variable

commit 04c9752d305a917c62479830662524d4f9ffc3c9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 16 11:55:33 2014 +0200

    fuse: test-fuse: enclose acl vars within HAVE_ACL
    
    Enclose the acl-related variables within a #ifdef HAVE_ACL block, so
    when building without acl support and -Werror it can build.

commit 0c27ee8751a4a2ae9b4b2683cd7ca852d1e94442
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 16 10:42:05 2014 +0200

    build: look for and use sys/endian.h
    
    Some OSes have sys/endian.h instead of glibc's endian.h.

commit 97cfa653705642a6d4e3a029467aa210309f1c71
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 16 10:29:24 2014 +0200

    Include sys/wait.h where needed
    
    Required for using WIFEXITED, WEXITSTATUS, etc. Apparently implicitly
    pulled so far.

commit ab40ab2cead19854a8ca9041ae9ff44e66c5d73a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 16 09:29:45 2014 +0200

    Include string.h where needed
    
    Required for using strlen, memcpy, etc. Apparently implicitly pulled so
    far.

commit b19387ac115ac889029fdc23fbef019446861b16
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 16 09:28:33 2014 +0200

    build: use the ptsname_r gnulib module
    
    virt-p2v uses ptsname_r, which is not portable but implemented by
    gnulib.

commit 45ea4d4d867d0f7e878708d8638a17fee0078561
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 23 15:43:25 2014 +0100

    ocaml: Pass -annot flag to compiler.
    
    This generates .annot files that contain type information.
    In emacs + tuareg mode, using C-c C-t displays the type of the
    underlying expression.

commit d211630d3d16ef052d12e13def35cf1fe33d4e16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 23 15:41:49 2014 +0100

    ocaml: Factor out flags into configure script.
    
    No change, just refactoring.

commit f722756bf5648aa61759e6e1a9151d0d0d57af40
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 22 14:40:02 2014 +0100

    Version 1.29.1.

commit 5fbeee4b1125d5b2bdda0fc876361cb245fa2f3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 22 12:00:36 2014 +0100

    v2v: -i libvirtxml: Fix handling of nbd sources (RHBZ#1153589).
    
    Previously I modified the parse_libvirt_xml function to get rid of the
    awkward 'map_source*' functions, and have the callers map over and
    modify the source disks afterwards.  However this broke the case where
    an "nbd:..." URL was returned by parse_libvirt_xml, since the callers
    might try to map this URL (eg. turning it into an absolute path).
    This broke virt-p2v specifically.
    
    This commit changes parse_libvirt_xml to return a list of tuples
    containing disk information, giving the callers more information with
    which to do the mapping.
    
    This fixes commit 3596165282ccf2c5896894ec4e9a71c6da788463.

commit 5981680b7e631bee30aa92942228974a476b8659
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 22 12:35:53 2014 +0100

    v2v: Add some assertions to check the source was created correctly.

commit 1bf6595e447a21c9c0d3448686b8bda791fb3ba1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 21 13:36:55 2014 +0100

    v2v: -i ova: Don't fail when given a relative path to an OVA directory (RHBZ#1155121).

commit 10c929d9c379cea41bde45df13fdf2d8d6a64b3e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 20 21:48:08 2014 +0100

    v2v: vcenter: Hoist readahead configurables to top of file.
    
    No change, just code motion.

commit d71590adf27059c9c127dbe7699686e4b833b671
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 20 20:41:29 2014 +0100

    v2v: Inline and simplify Xen and vCenter input methods.
    
    Take the opportunity presented by the refactoring in the previous
    commit to inline and simplify functions in these input subclasses.
    
    This finally removes the map_source* functions.

commit 05368a118dba3bb97f436b1936a514bb9f0ffcf6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 20 19:35:23 2014 +0100

    v2v: Refactor Xen and vCenter code.
    
    This refactors the code into more logical units, based on the previous
    commits.  So Xen + the input_libvirt Xen code is grouped and moved
    into a new module called Input_libvirt_xen_ssh.  Similarly VCenter +
    input_libvirt vCenter code is moved to Input_libvirt_vcenter_https.
    
    There is no change here, purely code motion.

commit 91b4317700b7820ab23b67b2edcf06abafb52ca0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 20 18:34:48 2014 +0100

    v2v: vCenter: Adjust readahead parameter between conversion and copying phases (RHBZ#1151033) (RHBZ#1153589).
    
    Previously we fixed RHBZ#1151033 by increasing the cURL readahead
    parameter to a large value.  Unfortunately this is too large -- and
    hence slow -- for the conversion phase, which broke on slow vCenter
    servers (RHBZ#1153589).
    
    What we do now is to perform the conversion phase with the default
    readahead (2MB) to ensure stability, since performance of the
    conversion phase is not critical.  Then before copying we change the
    readahead to the larger value (64MB) to ensure efficient copying.

commit 3a0ee2de9ae5b29d1e4a59942cebcc54bfb84a83
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 20 18:21:38 2014 +0100

    v2v: Add input#adjust_overlay_parameters method.
    
    This is called before the copying phase to allow the input method to
    adjust overlay/backing parameters.
    
    The default implementation does nothing, so this commit has no effect.

commit 473e396319c71b291132a1fb245526f960f8ecd1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 20 18:18:54 2014 +0100

    v2v: Add a unique number to source disks.
    
    Note that it doesn't matter what the number is, as long as it's
    different for each disk.
    
    The unique number lets us store extra data in input objects which is
    associated with each disk.

commit 65865dc961026c9ba09ec5e768a05d08180950e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 20 18:02:57 2014 +0100

    v2v: -i libvirt: Refactor map_source* functions.
    
    Get rid of the awkward map_source* functions, and replace it with
    equivalent code which modifies the source disks objects coming back
    from Input_libvirtxml.parse_libvirt_xml.
    
    This is just code refactoring.  Apart from the order in which certain
    tests are done, this should be equivalent to the previous code.

commit c4a0905b3820c2a655c191895d4fd8532a837f64
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 20 17:37:04 2014 +0100

    v2v: -i libvirt: Create three specialized subclasses for handling vCenter/Xen/other.
    
    Previously we had one class ('input_libvirt') which handled all three
    cases.  Now we have one superclass ('input_libvirt') and three
    subclasses of that ('input_libvirt_vcenter_https',
    'input_libvirt_xen_ssh', 'input_libvirt_other') which handle the three
    cases separately.
    
    This is just code motion, and should be functionally equivalent to
    what was here before.

commit ae11c6d252ae641eceee6c4d0fb608d15e676085
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 20 14:03:13 2014 +0100

    v2v: Increase vCenter https timeout to 10 minutes.

commit d51d3f94ded10d4dad528056722bbf35daaeeb47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 20 14:01:25 2014 +0100

    appliance: Set udev.event-timeout to override default too low udev setting.
    
    Unfortunately udev removed the udevtimeout setting on the kernel
    command line.  This means the default timeout was being set back to 30
    seconds, which is way too low for remote disks.
    
    However it was re-added (2014-07-29) as udev.event-timeout.  Set both
    to be sure.
    
    Note this requires systemd >= 216.

commit 86383f7fb1b8df650d0f9ac76b436ebb2283965f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Oct 14 11:10:22 2014 +0200

    diff: do not pad uid/gid in CSV mode

commit 847439bfe446ae723ecb105163c4d20b3d0b27ce
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 13 16:49:59 2014 +0200

    cat, diff: avoid double slashes in paths (RHBZ#1151910).
    
    In full_path, skip the trailing slash in the base directory when
    different than "/", as the slash will eventually be added when building
    the resulting path.

commit baccd0ccca2062e73d0fcb39b2cb3410919f3a56
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 13 15:51:34 2014 +0200

    ls: in CSV mode, always have a checksum field (RHBZ#1151900).
    
    Make sure to output the field for checksum even for non-regular files,
    as empty, in CSV output mode. This ensures each line has the same number
    of fields, regardless of the file type.

commit 4d5162a8f1a267ca74ff476012c1ee0fc8d8bc19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 21:57:10 2014 +0100

    v2v: -i ova: Add a test for *.vmdk.gz compressed files (RHBZ#1152998).

commit 1cde10b80cb0b867f816172b470dcaab49083f9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 21:45:10 2014 +0100

    v2v: -i ova: Add a test for ZIP as a container (RHBZ#1152998).

commit 05513cc819f6fc675c9314d53d288af15c975b41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 18:54:12 2014 +0100

    v2v: Handle *.vmdk.gz compressed files (RHBZ#1152998).
    
    The OVA spec allows the disk images to be gzipped within the OVA
    container.

commit 9bc7e42ec3e2efb2f9370a75f925dfa2247958db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 18:41:43 2014 +0100

    v2v: -i ova: Allow directories and ZIP files to be used as input (RHBZ#1152998).
    
    OVA is not a particularly well-specified format.  The specification
    allows a directory to be an OVA, so enable that.  The spec doesn't
    mention that ZIP can be used in place of tar, but since we have seen
    these in the wild, allow that too.

commit a5cb05f8a33994972c8ffe86571daa16b052e794
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 18:41:01 2014 +0100

    mllib: Enhance and rename 'detect_compression' function so it can detect a few more file types.

commit ee808c01b460174a91535020ec0bf9647256c14f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 13:53:19 2014 +0100

    v2v: Change --help text URLs so they don't reference esx as main server.

commit 5764acbb4304913b1a74aed5774dbbab7e873528
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 10:27:23 2014 +0100

    p2v: Test did not recognize '1.XX.0' as a valid version number.
    
    Thus breaking when we changed the version number to 1.28.0.

commit 6bf40cafc61303a088824ced07bacaffbcd45849
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 09:45:04 2014 +0100

    Version 1.29.0.

commit 587c44d3f98e0310ef0bc52f99ca96055d8ada9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 09:26:37 2014 +0100

    Version 1.28.0.

commit 62c522efb7813b3086cb3ed17ba05167c1992f14
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 09:02:41 2014 +0100

    Update translations from Transifex.

commit f63903f527b19d4f327162e7c245a89655b95359
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 09:02:18 2014 +0100

    Update release notes for 1.28 release.

commit e48f0651f730c00fc2b483c8101fa03b4d64c9c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 18 09:12:03 2014 +0100

    Update API support for 1.28 release.

commit 4b05f3b05cf3875219b5ae1a805198ed9ddd1eee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 17 17:38:07 2014 +0100

    Version 1.27.64.

commit e35b47581de1b0d3d190bba62bd73603766b0757
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 17 17:37:37 2014 +0100

    v2v: Add test files to EXTRA_DIST.
    
    This fixes commit 852f2e8e3c3228be4b9cd2be5b1d5da10a41fe32.

commit 7f9448695f09a54e0fb12886678202c0adff7c97
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 17 17:18:25 2014 +0100

    v2v: Windows: Add &REV_00 variant, which is used by W2K8R2.

commit f85208890093a2db15e02c7c6252ac79fe666b72
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 17 17:14:52 2014 +0100

    v2v: Windows: Fix quoting and type of viostor ImagePath parameter.
    
    The way to fix these bugs -- for future reference -- is as follows:
    
    (1) Install the corresponnding Windows version with virtio enabled.
    See:
    
    https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Virtualization_Deployment_and_Administration_Guide/chap-KVM_Para_virtualized_virtio_Drivers.html
    
    (the ".vfd" method)
    
    (2) Download the SYSTEM and SOFTWARE registries from the
    virtio-enabled guest.
    
    (3) Examine each registry using 'hivexsh', especially the keys which
    we modify during virt-v2v (see v2v/convert_windows.ml).  Remember to
    use both the 'ls' and 'lsval' commands in hivexsh.
    
    (4) Download the SYSTEM and SOFTWARE registries from the guest that
    fails to boot.
    
    (5) Examine the same registry keys from each registry using 'hivexsh'.
    
    (6) Work out what the differences are, paying particular attention to
    quoting and the type of each key (eg. str(1), str(2), etc).
    
    Thanks: Matthew Booth.

commit 9ab42da29c392cab2d8a5e9db01fc229734df072
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 17 13:44:35 2014 +0100

    v2v: Print version of virt-v2v in debug output.
    
    Easier than asking users to send us this information, which they often don't.

commit 5d04967d1fcef4451854e6d4889a61c59bb31d08
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 16 18:02:46 2014 +0100

    v2v: Add new section on resource requirements of virt-v2v to the manual.

commit b368ea6752618066e14028e43297e494b0ed3360
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 16 14:08:17 2014 +0200

    tests: v2v: Test -i ova with two input disks.

commit 1b409d474f8f04b96fb0db1935799e63474ad2e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 16 15:58:41 2014 +0100

    v2v: -i ova: Fix it so it actually verifies SHA-1 hashes from manifest files.
    
    There were two large bugs before: (1) It only found one manifest file
    (meaning that multi-volume OVAs would be broken).  (2) The regular
    expression didn't work so it wouldn't check the hash.  Bugs (1) + (2)
    combined so that the check just didn't do anything at all, which is
    why we didn't notice the multi-volume problem.
    
    Actually I suspect we shouldn't be doing this check at all, since I
    bet there are OVAs out there with broken SHA-1's.

commit f8f0be24e86b961c972b628dfe89a91142bec512
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 16 08:36:33 2014 +0200

    handle: Process empty LIBGUESTFS_* environment variables correctly (RHBZ#1153515).
    
    Ignore an environment variable:
    
     - if an environment variable is an empty string, AND
    
     - if an empty string would have no meaning for that environment
       variable (eg. LIBGUESTFS_BACKEND can only take on certain values,
       and an empty string is not one of them).
    
    Note that LIBGUESTFS_BACKEND_SETTINGS is meaningful as an empty
    string, and for this case I have removed the STRNEQ (str, "") test.
    
    Previously:
    
    $ LIBGUESTFS_BACKEND="" guestfish -a /dev/null run
    libguestfs: error: invalid backend:
    
    After this commit:
    
    $ LIBGUESTFS_BACKEND="" guestfish -a /dev/null run
    
    (no error message is printed)

commit bd3c6ad4a00057630c469106640bb57d493846d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 15 22:19:19 2014 +0200

    Version 1.27.63.

commit 30764026100fde4ba10d8e411b5bf58f6d46d5b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 15 21:23:33 2014 +0200

    tests: v2v: Check -i ova generates the same XML each time.

commit 5d581e9df4fef6784c61d3735beb99f46418e0d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 15 21:18:21 2014 +0200

    v2v: -i ova: Try hard to preserve the order of floppies and CDROMs from the original OVF.
    
    Remove the common 'add_resource' function.
    
    Duplicate that function into code for adding disks, and separate code
    for adding removables (floppies & CDROMs).
    
    The removables code should look for all removable devices
    (ResourceType 14, 15, 16) in a single query, so that the order doesn't
    depend on the order in which we do the queries.

commit 89ce063a53a6790f566906792f4b7d49887b61fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 15 21:04:33 2014 +0200

    v2v: -i ova: Preserve the order of disks/removable/NICs from the source OVF.
    
    Because we built the lists up backwards, we ought to reverse them
    before passing them out of the module.

commit a0d3842b24222fe8cc68d1543dcefdbba34f1868
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 15 21:00:21 2014 +0200

    v2v: -i ova: Mainly whitespace and formatting changes.
    
    Mainly tidy up the indentation and comments to match the "house
    style".  No significant functional change.

commit c90db80409fafe545391e4313853e004401cb1b1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 13 15:06:30 2014 +0200

    bash: add virt-log completion entry (RHBZ#1151766).
    
    Thanks: Lingfei Kong

commit 4f307503e7660d5666efea1fcf32a534d38161ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 13 13:07:43 2014 +0200

    v2v: Add 'exit' choice to --root ask.
    
    If the user does ^C then this leaves temporary overlay files around
    (possibly a bug?).  Offer an 'exit' choice to the user which exits
    cleanly.
    
    The new message looks like this:
    
      Dual- or multi-boot operating system detected.  Choose the root filesystem
      that contains the main operating system from the list below:
    
       [1] /dev/sda3 (Fedora release 20 (Heisenbug))
       [2] /dev/sdb3
    
      Enter a number between 1 and 2, or 'exit': exit

commit 04443eaf554bd57dff0174ddeee756d82f49f981
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 13 11:40:00 2014 +0200

    v2v: When choosing a root from several, print an info message.

commit 563f2216095fadd945f31b75a62d143f566558d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 13 11:39:24 2014 +0200

    v2v: Add an 'info' function for info messages, and use it for virtio message.

commit a1a19f787e461de6327f028907fec7e83e8718d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 13 11:36:15 2014 +0200

    v2v: --root ask: Number the guests in the list correctly.
    
    Thanks: Junqin Zhou

commit 251eee670d9a5d38aa7f9b50f864604d637de03c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 13 11:02:14 2014 +0200

    edit: fix --format documentation (RHBZ#1151738).
    
    Use only --format=FMT as a way to specify a format, as the version
    without the equal sign will not work for that.

commit 9a4f8226047e6298469f75b0c1289392e0c500d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 10 16:58:48 2014 +0100

    Version 1.27.62.

commit 84379045036d0fb120f8af8daa2670b505d5e407
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 10 17:03:59 2014 +0200

    builder: use the JSON module
    
    Switch to the JSON OCaml module for JSON output.
    
    The resulting output is the same, except from an indentation level more
    within lists.

commit f8f6a5973bb57e4741a13e56ebe48ee5b4ebc5a1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 10 16:55:47 2014 +0200

    mllib: improve JSON: more types, indented output style
    
    Improve the homebrew JSON writer:
    - add more types (including also nested dictionaries and lists)
    - format in a compact way (single line), or indented (multilines)

commit a2cc4e18055bdff5942d0481c54b44bf3b7e94c2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 10 15:10:20 2014 +0200

    Move JSON to mllib
    
    Move the simple OCaml JSON writer to mllib, so that can be enhanced and
    used also outside v2v.

commit 53491e50b5f944582a578d187821ffd9d5f81f7d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 10 15:09:27 2014 +0200

    appliance: remove few duplicates from Mageia's list

commit c34df0dfe8191c2495a15104b9dcae65dc150574
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 10 11:47:26 2014 +0100

    FAQ: Add a section on debugging libvirtd.

commit f7caaf8a277550fe0a62432518e52eb0e068c891
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 9 18:07:33 2014 +0100

    v2v: Rename some modules to remove lib_ prefix.
    
    v2v/lib_ovf.ml -> v2v/OVF.ml
    v2v/lib_ovf.mli -> v2v/OVF.mli
    v2v/lib_linux.ml -> v2v/linux.ml
    v2v/lib_linux.mli -> v2v/linux.mli
    v2v/lib_esx.ml -> v2v/vCenter.ml
    v2v/lib_esx.mli -> v2v/vCenter.mli
    v2v/lib_xen.ml -> v2v/xen.ml
    v2v/lib_xen.mli -> v2v/xen.mli

commit bef20471818af52d367c15d6c5d073bd72ae3c0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 9 16:04:01 2014 +0100

    v2v: Increase readahead window for vCenter transfers (RHBZ#1151033).

commit c6565093e21cbb4cb23e1b77a2d418543779be39
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 9 14:53:53 2014 +0200

    appliance: add dhcp-client on Mageia
    
    dhcp-client replaces the non-existing dhclient.

commit 25bc25159bc5a95c51c2379cb965b6613a92d369
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Oct 9 14:53:10 2014 +0200

    appliance: add dhcpcd and gptfdisk on Archlinux
    
    dhcpcd replaces the non-existing dhclient.

commit b6b9f4618c7eb1c30b709ee0920f108d7c07fec6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 9 10:30:01 2014 +0100

    Version 1.27.61.

commit 9ada8567862dfa86548a3a547a35a14c6bcf6944
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 9 10:15:55 2014 +0100

    v2v: -i libvirt/libvirtxml: Give a better warning for local displays (RHBZ#1150880).

commit 8a70940dc023891db3e88bbf55d69556ac551c4e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 9 09:34:11 2014 +0100

    daemon: copy-file-to-file: Unlink destination file on failure (RHBZ#1150867).
    
    When copying from file to file, don't leave the destination file
    around if the copy fails.
    
    However in the same code don't try unlinking the destination device on
    failure.

commit d340c675aaa141c8f2ca245ef18e1c26b2e64d63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 9 09:29:31 2014 +0100

    sparsify: Fix documentation of --check-tmpdir option (RHBZ#1150858).

commit 7cec10546a4e2b71e6b62b58aa5b07f3a0ee2950
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 9 09:21:06 2014 +0100

    diff: Remove copy and paste mistake from the documentation (RHBZ#1150815).
    
    Originated from copying this section out of the virt-ls man page.

commit 4fe99ebea58e6972f98032694a286b45941d6313
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 22:32:03 2014 +0100

    v2v: Allow -b/-n as alias for --bridge/--network.
    
    This was permitted by old virt-v2v too.

commit 39a108eabc1f2ec782c31d7768c183a2eb29ba68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 21:17:43 2014 +0100

    v2v: Enable trimming of data disks and non-mountpoints (RHBZ#1150701).
    
    This also modifies the --no-trim option so you can specify a device
    name, since this is necessary if fstrim can apply to non-mountpoints.

commit fc878a8e1fb6c237a311381b696b80dd54cd0315
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 21:16:48 2014 +0100

    v2v: Fix the --no-trim option so it works.
    
    We never updated the no_trim variable in the case where this option
    was supplied, so it never did anything, proving once again that unless
    you have a test case, the feature won't work.

commit 7dc254afdcb9807da581bcc9c07a9ea7115dc73c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 20:21:36 2014 +0100

    v2v: Print virtual and real copying rates.
    
    Useful to diagnose speed issues in the qemu block drivers.

commit 19188ba0250d5fd15c177675e40ffad3d8992f27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 20:21:06 2014 +0100

    v2v: Print mountpoint stats in debugging output.
    
    Useful for debugging speed / fstrim issues.

commit 02bfd4e2809817ff1749a1a6d52d90c1a9b2b328
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 15:44:01 2014 +0100

    Version 1.27.60.

commit 00a05abdd500eab15ea87242e97917fd508f3a89
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 15:41:44 2014 +0100

    v2v: Add README.RHEV-M to EXTRA_DIST.
    
    This fixes commit 8adc32cae8898817bfa2ed7669eda1f6c4aa3dae.

commit 742a6064ba858c73ee9c2d2c47404ab7618fa4b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 15:00:25 2014 +0100

    v2v: -o rhev, -o vdsm: Fix export with multiple disks (RHBZ#1150475).
    
    When translating the original virt-v2v code, I misunderstood how image
    directories are created.  There is one directory under images/ per
    disk image, not one for all the disks in a single guest.
    
    Note this requires that -o vdsm uses multiple --vdsm-image-uuid
    options, one per disk image of the guest.
    
    Reported by: Alain Vondra
    Thanks: Tingting Zheng

commit 60280d1114ae01ffe1a29637445c0294ee258147
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 14:59:52 2014 +0100

    mllib: Add 'combine3' function.

commit 2d0ecffe6acc99804aa8bb52849a28180ae3f32b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 14:39:40 2014 +0100

    v2v: Add notes about layout of Export Storage Domain for multi-disk guests.

commit 9bf6e93ed89102de06a8434f2cf92fe9fac8145e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 8 13:44:25 2014 +0200

    log: tests: switch to a temporary file for outputs
    
    Using a pipe to redirect the output of virt-log will lose his return
    value, so use a temporary file to collect the virt-log output.

commit 8bb097af34b3950d49c6c69c8ae6c4f36bceb534
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 12:40:32 2014 +0100

    Revert "log: tests: fix appending the virt-log output"
    
    This reverts commit cfe2daabb2c146c96b1c291a97f08e58cfcdfd2a.
    
    The pipe hides the return code from virt-log or valgrind.

commit 1c074f9454d80e19f39032c64dd37edab97a9cbb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 8 12:37:51 2014 +0100

    v2v: Add missing disk <rasd:Caption>.
    
    Possible fix for RHBZ#1150475.

commit 51045551267009c299230015b16d4e4891a792c2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 8 11:14:28 2014 +0200

    log: tests: fix appending the virt-log output
    
    virt-log uses /dev/stdout as output file for guestfs_download, which
    will open the output file in truncate mode, truncating the output of
    test-virt-log.sh.
    
    Make sure to redirect the output of virt-log so it does not clobber the
    test output.
    
    Thanks to Richard for the hint.

commit 71c750777daa245d59633b3ae31f03a3a93500c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 7 15:29:12 2014 +0100

    Version 1.27.59.

commit f7721a90713ebb030b5117452f08c224cb873758
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 7 15:29:39 2014 +0100

    p2v: Fix virt-p2v-make-kickstart so it won't fail when using a custom repo.
    
    Because of `set -e', using the `((i++))' expression causes bash to
    fail, unless we tell it to ignore the error code on that line.

commit 63fb562170064bb06665af4df39380e1388fc5ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 7 15:04:26 2014 +0100

    Update API support.

commit 7b42d3a4ccfd2d50c0453252118749018a4cbbf3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 7 13:54:50 2014 +0100

    Update gnulib to latest upstream.

commit 1b9e161744b406c0e217653129ec4d38bd0d55a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 7 13:31:47 2014 +0100

    Update translations from Transifex.

commit c65692a62ba6ba47193a7f054cf22691540f7644
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 7 13:31:36 2014 +0100

    Update BUGS.

commit 384a9d3a050fc615421acf2ddce021fe7a79806b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 7 13:20:12 2014 +0100

    Update release notes.

commit a31113b698ecfc824cf6756ee0c3b07f5d5f3b7e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 7 12:40:41 2014 +0100

    v2v: Further documentation fixes.
    
    Replace more instances of 'esx.example.com' with
    'vcenter.example.com', and rearrange command line arguments
    semantically.

commit c3fc772f69d26312149d43bbd21d5441543dd6f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 7 10:17:33 2014 +0100

    FAQ: Need to set SUPERMIN_KERNEL_VERSION in recent supermin.

commit 16991a73978fc0ae2039c9bcc15581876c790a52
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 7 09:27:09 2014 +0100

    v2v: Improve VMware import documentation.
    
    Additional information about URIs, which may contain cluster and/or
    folder names (thanks: James Mighion).
    
    Replace esx.example.com with vcenter.example.com to reduce confusion
    about vCenter vs ESXi.

commit 041a2d1e1095ce728d6256601b531cddf5097799
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 6 18:05:53 2014 +0200

    log: tests: skip fedora.img if journal is not available

commit 5b08bd9cc7db14c90c7162c2bb853b7328a52ede
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Oct 6 16:10:44 2014 +0200

    tools: fix free -m invocation
    
    Since procps 3.3.10, free does not output the "-/+ buffers/cache" line
    anymore. On the other hand, the data from it can be calculated from the
    memory values, so just do the calculation manually (with awk).

commit 92188b999fca540049baa2ba7d11f19659fc7ddc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 6 13:09:58 2014 +0100

    lib: Enable detection of ARM (32 bit).
    
    This includes some empty binaries to use for detection testing.

commit 4861559d32e7d558a516fc86fe9eecf31373809b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 6 13:09:46 2014 +0100

    lib: Document output of 'file-architecture' API for aarch64 binaries.

commit 4a410da7f31f81b2916a7e3bf9e68578305b10d0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Oct 3 14:24:48 2014 +0200

    sysprep: remove more logs
    
    - remove firewalld, grubby, and proftpd logs
    - extend the cups log removal also to its timestamped rotated logs
    - remove also the libvirt/libxl logs

commit 24a8b98332aef2fcc3cfbbc6e8a8506ab8abf284
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 2 17:02:21 2014 +0100

    tests: Fix SKIP_ environment variable in a couple of scripts.
    
    I checked and bug 690819 has nothing to do with either of these
    tests.  It was just a copy and paste error.

commit c8993b433c03958e6c8fe1ae73f4e58a19ed3f17
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 2 15:55:51 2014 +0100

    Version 1.27.58.

commit a40607af6212da815b99d1d224b3e78aa6533441
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 2 15:30:02 2014 +0100

    tests: Disable UML tests in 'check-release'.
    
    This effectively demotes UML to unsupported status.  This has happened
    because UML has regressed quite a lot upstream.  There are multiple
    grave bugs revealed by running the test suite and I don't have the
    inclination to fix them.

commit 6103beb9005d2689306da33455e7f2467250bfc6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 1 20:12:41 2014 +0100

    tests: rsync: Skip this test when the backend is libvirt.
    
    It would work, except if you have a host firewall which will block
    inbound connections on virbr0 to non-standard ports.

commit 90682146385e046d6185845de58cb5da6df0a38a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 1 20:12:04 2014 +0100

    appliance: Change example ping lines to ping 8.8.8.8.
    
    This are commented out (still) so this change does nothing.

commit 37cabc71a77f6a38963d3d0ccac7ed22fb87b44f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 30 16:44:05 2014 +0100

    launch: libvirt: Use qemu-bridge-helper to implement a full network (RHBZ#1148012).
    
    When using the libvirt backend, don't use the SLIRP.  Use
    qemu-bridge-helper via libvirt to give us a full network connection.
    
    One consequence of this is that 'ping' works in
    'virt-builder --run-command'.
    
    A less useful consequence is that the host firewall will prevent
    connections on non-standard ports to the host.  So you can't (eg)
    connect to a rsync daemon on the host listening on an arbitrary port,
    which worked before.
    
    The default bridge is 'virbr0', but you can override this by setting
    LIBGUESTFS_BACKEND_SETTINGS=network_bridge=<some_bridge>
    
    Note: this does not fix virt-rescue (since it overrides the default
    backend and uses 'direct' for various reasons).

commit 2f4e362c519941c61500a01c12ed5a691e6df2cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 30 16:44:04 2014 +0100

    appliance: Use dhclient or dhcpcd instead of hard-coding IP address of appliance.
    
    qemu in SLIRP mode offers DHCP services to the appliance.  We don't
    use them, but use a fixed IP address intead.  This changes the
    appliance to get its IP address using DHCP.
    
    Note: This is only used when the network is enabled.  dhclient is
    somewhat slower, but the penalty (a few seconds) is only paid for
    network users.
    
    On SuSE or other distros, dhcpcd could be used if available.

commit 7644808f1b34683e6288962538d858fe7a6cc1e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 2 13:19:03 2014 +0100

    mllib: Coloured messages, errors, warnings.
    
    Uses ANSI terminal codes to colour the output.

commit faee073509a27eaddeef1b9d270202c5d0f43753
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 2 13:01:12 2014 +0100

    v2v: Print the difference between our disk size estimate and actual size.

commit c6be942a0aafc72a9f46bc96b0e0610bde28d50e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 2 13:00:13 2014 +0100

    v2v: 'du -b' doesn't show real (sparse) size.
    
    This caused the actual size to be wrong (in OVF output).
    Use --block-size=1 instead.

commit 7a8604992d26067c680257c246e9542608ece089
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 1 16:49:57 2014 +0100

    Version 1.27.57.

commit 8fc04e080e6dd3ccbdde8bb0cd274cef17e37503
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 1 13:40:54 2014 +0100

    v2v: Copy post-conversion tasks section from old virt-v2v documentation.
    
    Copied verbatim, apart from some minor reformatting.

commit c76ed45d1e0128af4fddcf21b4e0bd23834216be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 1 13:36:47 2014 +0100

    v2v: Copy -o rhev information from old virt-v2v manual page.

commit aa74afd3b87eb17d519096e554bf00ea98a1b9d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 1 12:11:50 2014 +0100

    lib: Avoid rewriting LV names when creating canonical device name (RHBZ#1148355).
    
    Thanks: Timothée Ravier

commit 755c606d6f50575a9950007a4bd95e1615e3944c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 1 10:07:08 2014 +0100

    v2v: Add note to man page about removing VMware tools before conversion.
    
    Thanks: Matthew Booth.

commit ba1d3017a4663becde2ecb65fa6a8d39699116ff
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Oct 1 10:12:38 2014 +0200

    sysprep: add no-op --no-selinux-relabel (RHBZ#1148072)
    
    Add a no-op --no-selinux-relabel option, to be compatible with
    virt-sysprep < 1.26.

commit 4361c94cb85875a7fec8b61a68cd2238b0f171ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 30 13:28:31 2014 +0100

    p2v: Fix reference to virt-v2v(1) in manual page.

commit 421b9ddad2d8a19a47ec2b601649f5c12542f114
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 30 11:27:35 2014 +0100

    resize: Don't test MBR extended partitions while virt-resize handling is broken.
    
    The intention is to fix virt-resize and then revert this commit.

commit 94a321e81242d6b1f963b90298c6ecd52fd261ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 29 14:45:13 2014 +0100

    resize: Rewrite the tests to use a stochastic testing method.
    
    The previous tests were very limited, and ran the same two tests
    on every run.
    
    Randomly test:
     - MBR vs GPT
     - Primary, extended partitions
     - Expanding vs shrinking
     - Use of multiple --resize parameters
     - Source and target raw vs qcow2 formats
     - Resizing various different filesystem types
     - LV expand
     - extra partition or no extra partition
    
    To run the test over and over again (useful for finding regressions in
    virt-resize), do:
    
      while (cd resize; LIBGUESTFS_TRACE=1 ../run ./test-virt-resize.pl) >&/tmp/log ; do echo -n .; done
    
    If it fails, you can see the failure in /tmp/log.
    
    To rerun a specific test, search for the 'seed:' in the output of the
    original test, and specify it on the command line:
    
      (cd resize; ../run ./test-virt-resize.pl --seed=<SEED>)

commit c40c3f63390d695255ff4bcc823e7f1b4c563635
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 30 13:51:16 2014 +0200

    inspect: document also MINIX as OS
    
    Followup of commit 5b65d05d5a31415aaa6f284f73da745e0ee0408a.

commit 2cf46bbe70ad18e92193b679f2348b5c3ff9947a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 29 16:06:06 2014 +0100

    Version 1.27.56.

commit 93f55cd0524c25d68683e8cd93a5858382bf96ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 29 16:19:31 2014 +0100

    v2v: Add v2v/HACKING file to EXTRA_DIST.
    
    This updates commit ce814c6b6cdf939c95e70741c84c1757c72edf60.

commit 863c4f4a7fec706d39b604fa38f76fff63d0c365
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 29 14:49:11 2014 +0100

    resize: docs: --expand is above, not below, the current point.

commit 73e8cf014dccf2a136f0643156f3abb35ea57a16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 29 14:48:41 2014 +0100

    resize: Using qemu-img create -c doesn't create a compressed qcow2 file.
    
    Remove inaccuracy from the manual page.

commit 1bb8fcbe8bdedac22b22b562b30c0b9119be52a3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 29 13:49:09 2014 +0200

    customize: fix attributes of /etc/shadow (RHBZ#1146275)
    
    When saving a configuration file, Augeas creates a new file and
    replaces the old one with it; this creates a /etc/shadow file without
    the SELinux xattrs, since they are missing.
    
    Thus, create a temporary file with all the attributes of /etc/shadow, so
    all the attributes of it (permissions and xattrs, among others) can be
    restored properly on the new /etc/shadow.
    
    As side effect, if a guest is already properly SELinux-labelled, then
    there should be no more need to relabel it to make sure /etc/shadow
    still has the right SELinux xattrs.

commit e934034cd3aeb369eaa23fa5d9de870670eded0e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 29 13:48:10 2014 +0200

    builder, customize: disable SELinux
    
    Having SELinux enabled (even if not enforcing) in the appliance causes
    troubles to applications/libraries that read/write SELinux attributes.

commit a88e129437815270119a435000a4b8440c12f417
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 29 12:07:19 2014 +0100

    resize: Simplify if-conditional in mbr_part_type function.
    
    This should be equivalent to the previous code, but it makes it easier
    for the compiler to pick up errors (eg. missing cases).
    
    This updates commit fc34e2d16c2d13d6ae7a381ba931e345ab5ae56d.

commit e2800b0efafd6be046eb6ce7af79d059670aa571
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Sep 26 11:04:07 2014 +0800

    resize: add function mbr_part_type
    
    Function mbr_part_type returns one of "primary", "extended" and
    "logical". The type is used by parted when adding partitions.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 6e5966f07501a24f6e15aa2f3620b355ae974109
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 29 12:04:32 2014 +0100

    resize: Fix whitespace in calculate_target_partitions function.
    
    This updates commit 21677c5b46468609d393a724ea629d948c87aec7.

commit ebee5f39e9460754c20356d9f29c0f6d5ee67ca7
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Sep 26 11:04:06 2014 +0800

    resize: add function calculate_target_partitions
    
    And introduce parameter create_surplus to indicate whether to
    create surplus partition or not. Later this parameter will be
    used by when calculating positions for target logical partitions.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit cf5ff3aac5cc2dbd35a0c2dc55da9dc676e5ec0a
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Sep 26 11:04:05 2014 +0800

    resize: add function find_partitions
    
    find_partitions can find partitions of given type.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 19a90c5d6df8c336b9988d8632dd68673299c51f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 29 11:18:56 2014 +0200

    diff: flatten also atime nanoseconds
    
    When not considering atime changes, flatten also the nanoseconds.
    
    Followup of commit 8664337cc39c8575ccb60abb8c6e30f92828ea51.

commit bb762ab45649d0705bdcf4ba676b41deb5440c8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 28 21:13:34 2014 +0100

    v2v: Document when you need to run virt-v2v as root, and how to avoid it.

commit 0246ae8312fac4474c136018aa35f0ee35b8bd59
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 28 21:13:12 2014 +0100

    v2v: Use Glance (capitalized) consistently in documentation.

commit 31481ea22cfd2e4f7715124e777c57479bc1c75d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 27 19:35:13 2014 +0100

    p2v: docs: Change boilerplate in description to reflect reality of hypervisors we support (continued).

commit c89e38ea2e54fd848bd4b90e05166e53121635e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 27 21:51:22 2014 +0100

    p2v: Fix documentation for p2v.of kernel command line option.
    
    Copy and paste errors.

commit 6b006720a8e70b9ca593285f818feaa13b204d1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 27 21:21:57 2014 +0100

    p2v: Revise virt-p2v(1) manual page.

commit 459b5e816bbcd879684fa5e6a3e9ac2e804d0926
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 27 19:35:55 2014 +0100

    p2v: Use "panel" consistently through documentation.

commit 6be715a1db74070506b6f18fc67474f3f1ed295f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 27 19:35:13 2014 +0100

    p2v, v2v: docs: Change boilerplate in description to reflect reality of hypervisors we support.

commit 1641ad3ccbf95634c9a80abdf3fdb2da499cc446
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 27 18:39:48 2014 +0100

    p2v: Document the virt-p2v GUI dialogs.

commit 2cc12c86768f6317d11ab7d615d3bab0413dfb58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 27 17:11:51 2014 +0100

    p2v: Rename guest.xml -> physical.xml.

commit 6813736c9a8051a3a8879ca28a94a9ab3712d159
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 27 16:49:28 2014 +0100

    p2v, v2v: Document how it works for hackers.

commit b5dd937812a425c55cd24074e539beace75d44c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 20:09:44 2014 +0100

    Fix update-bugs.sh script so it doesn't write an empty BUGS file.

commit 13492696a36fedad781db072b6232161348ba53a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 19:30:57 2014 +0100

    v2v: Don't warn about being unable to rewrite /dev/cdrom (RHBZ#1146815).
    
    Old virt-v2v probably emitted the same warning.
    
    However it seems unlikely that /dev/cdrom needs to be remapped, as
    udev or the user should be able to supply a suitable symlink from
    /dev/cdrom to the removable device.  Therefore suppress this warning.

commit e5ac64f64b093d53a3994173e874951113012f21
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 19:26:14 2014 +0100

    v2v: Generate qemu-0.10 compatible qcow2 files for RHEV-M.
    
    RHEV nodes running on RHEL 6 cannot read the new qcow2 compat=1.1
    (a.k.a qcow2 v3) format.
    
    Thanks: Junqin Zhou, Tingting Zheng

commit 6227a132f93a8824540d9552c4657b697c360f84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 19:14:57 2014 +0100

    v2v: Add documentation for diagnosing RHEV-M import problems.

commit e939969f35586ae5703322a7be9228ccd5e0a552
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 17:14:19 2014 +0100

    Version 1.27.55.

commit 56a935ca9397fe2d1486c29d77adf1ef16d6ee0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 14:06:48 2014 +0100

    v2v: -o qemu: Add a display to the shell script.

commit cbd609c5ad5557b2b4aca015430a19d5ee9888ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 14:06:22 2014 +0100

    v2v: -o qemu: Only add a serial console to Linux guests.
    
    Makes no sense for Windows guests.

commit 096607b5d2869c10d00a80e100bf61e9c7460d11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 14:03:21 2014 +0100

    v2v: -o qemu: Refactor end of line handling.

commit 8a3f701096112bd6d02c532734ee7f1ff99b5e39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 14:01:37 2014 +0100

    v2v: Add a source 'window' display type.
    
    This maps to SDL/GTK, ie. qemu opening a window on the desktop.
    We only use it for -i disk -o qemu to help with debugging.

commit 6b2855ce2b79105984ef1383679af1b9bcb3d308
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 12:42:08 2014 +0100

    v2v: Add --no-trim option, allowing fstrim to be suppressed.
    
    Mainly useful for testing whether fstrim is responsible for various
    unexplained boot failures.  We can also suggest it in the field.

commit 88386d85b30fe7c52ec206f272b02fbc34b7ca05
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 26 14:27:04 2014 +0200

    fuse: test-fuse: use acl_to_any_text
    
    Switch from acl_to_text to acl_to_any_text, so it is possible to specify
    options, like forcing the numeric IDs for users/groups. This ensure the
    resulting string has always numberic IDs, so the comparison can always
    succeed.
    
    Adapt the comparison string to the lack of final endline now.

commit b0d970fcdec843e6a8b90742fff6ae66f45216d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 10:21:07 2014 +0100

    v2v: windows: Sort files before uploading.
    
    This makes it easier to compare the trace output from different runs
    of virt-v2v.

commit 475bbe21dec47b6a72d267291e9297d58af87713
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 10:06:00 2014 +0100

    v2v: Add --debug-overlays option.
    
    You can use this to accelerate testing:
    
      $ virt-v2v --no-copy --debug-overlays [etc]
      [...]
      [  82.0] Converting Windows 7 Ultimate to run on KVM
      This guest has virtio drivers installed.
      [  86.0] Closing the overlay
      [  91.0] Creating output metadata
      Overlay saved as /var/tmp/win7-test-sda.qcow2 [--debug-overlays]
      [  91.0] Finishing off
    
    No disk format conversion/copying is done, so it's very fast.
    
    The overlay file is preserved and can be tested directly (it uses the
    source file as backing).

commit cb83f4eab8d28a18c0f40c5554bbb62bc203aeaf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 26 10:05:30 2014 +0100

    v2v: Don't use Unix.unlink since Unix module is open in this file.
    
    Minor code refactor.

commit 739a3156e84a8c08d6cf33e194fadf4e0d5ec1b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 25 17:35:02 2014 +0100

    v2v: Disable extended debugging of hivex_open.
    
    It's not really necessary: we have never needed this for debugging
    inspection for example, and if hive open failures did occur we would
    ask the user to send us the hive files.  And it causes huge amounts of
    debugging messages to be printed which fills up the log.

commit 798786226be93446c67471d7b6b1c95fe44ed924
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 25 14:30:37 2014 +0100

    v2v: Put overlay on LIBGUESTFS_CACHEDIR, not /tmp (RHBZ#1146017).
    
    Since the overlay could grow very large (because of copy-on-read) it
    is not suitable for /tmp.

commit f77c76052c5b73fb9f60b347e9af3074d780b074
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 24 23:47:40 2014 +0100

    v2v: windows: Print product variant in virtio drivers warning message.
    
    The inspection product variant field is used to determine which
    drivers to install, so print it in case we couldn't find any drivers.

commit d7e0ec9b50bbd2479ae0b25f25bcac3c38b9fde7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 24 23:44:19 2014 +0100

    v2v: windows: Rearrange the order of virtio drivers match clause.
    
    No functional change.

commit 77fb56ec84b196c7472321b4c67779761d8f0cbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 24 19:03:42 2014 +0100

    Version 1.27.54.

commit 22cf26bf69a187dbd36683a68831cb2506a86cb0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 24 18:18:40 2014 +0100

    v2v: windows: Give a better message when Fast Restart is found (RHBZ#1145995).
    
    Thanks: Tingting Zheng

commit c27af57b86aad29da509bed8b98d2df8c014dcc9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 24 18:11:40 2014 +0100

    v2v: Failure to mount the root partition is a hard error.
    
    For other partitions, it is a warning.

commit b4dc537327ab49eee051b89a647dcd0bab778f9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 24 17:51:43 2014 +0100

    v2v: Update list of virtio-win drivers to latest (RHBZ#1145908).
    
    Update with latest list from:
    - virtio-win-1.7.2-1.el7.noarch
    - https://en.wikipedia.org/wiki/List_of_Microsoft_Windows_versions

commit 0082778761794d9831d9e99b8cbb41e87ee71c18
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 24 17:27:18 2014 +0100

    v2v: windows: Set filename correctly when uploading virtio drivers (RHBZ#1145916).
    
    Thanks: Jeff Forbes, Alain Vondra, Junqin Zhou

commit f819245a2ed30866b22c4e6e1905a9f42510ffd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 24 18:29:27 2014 +0100

    v2v: tests: Don't care about the <model> XML when testing network and bridge mapping.

commit 397855968f4c5dddc757eaf575aca98808c30056
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 24 17:55:27 2014 +0100

    tests: Add drivers directory to phony Windows image.
    
    Allows virt-v2v to upload drivers.

commit aee6d84d1a5d9fbcdcb02730a5ab0c6af1c81aa0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 23 22:16:24 2014 +0100

    v2v: Remap device in /etc/sysconfig/grub boot= entry.
    
    Old virt-v2v did not remap this device, so after conversion from Xen
    the file would have something like:
    
      boot=/dev/xvda
    
    Although this does not appear to affect anything, better to remap it.

commit f2faa3c090087e69a4748afb474c121ff03b3895
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 23 16:54:26 2014 +0100

    Version 1.27.53.

commit d15b71010c6d6a3eeec7201b990bff571e72e88c
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Tue Sep 23 17:20:34 2014 +0800

    syntax-check: fix prohibit_getopt_without_use check
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit ef796ec6d86694cde1d7656ea2e91403fad1e3d4
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Tue Sep 23 17:20:32 2014 +0800

    syntax-check: fix prohibit_dirent_without_use check
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit e7226a526ccd4e83419a3533939dd10f2fce556a
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Tue Sep 23 17:20:31 2014 +0800

    syntax-check: fix prohibit_c_ctype_without_use check
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit f917cf102330a9f2f5b27296df77ca491b501171
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Tue Sep 23 17:20:30 2014 +0800

    syntax-check: fix prohibit_assert_without_use check
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 01e61f55f9e23aba961d7bef059534cd0720cbd3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 23 15:42:05 2014 +0100

    v2v: -o rhev: chmod the image so we will definitely be able to write to it.
    
    NFS sucks.

commit 07eba93fcb4b9d87c1a3a01037a31a69c34f119a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 23 15:36:12 2014 +0100

    v2v: -o rhev: On failure path, use forking wrapper to clean up images dir.
    
    Otherwise you get lots of errors like:
    
    rm: cannot remove ‘/var/tmp/mm/42f5e571-21af-44bd-8164-3ebe6bbc9f5a/images/7b28b0e6-79ce-4d78-a6cb-769760a3d373/31e2b06b-85cb-46ed-aac3-8bcef93dc704.meta’: Permission denied
    rm: cannot remove ‘/var/tmp/mm/42f5e571-21af-44bd-8164-3ebe6bbc9f5a/images/7b28b0e6-79ce-4d78-a6cb-769760a3d373/31e2b06b-85cb-46ed-aac3-8bcef93dc704’: Permission denied
    
    because the code is running as root.

commit bc978cc671e8a99ffd2611c0ca2c8848af247804
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 23 15:28:28 2014 +0100

    v2v: -o rhev: Use a random name when testing UID:GID mapping.
    
    Using a fixed name is risky if there are multiple parallel virt-v2v
    processes running.

commit 10342ebbd1deceaa6f347edb60bb1c7e1b2c9da5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 23 15:26:03 2014 +0100

    v2v: -o rhev/vdsm: Remove the test that the storage domain is writable.
    
    For '-o rhev' this is likely to fail (although for obscure reasons it
    *doesn't* fail on a real RHEV server, I don't quite understand why).
    The reason is because virt-v2v may be running as root, and with root
    squashing we don't have permissions to write into the storage domain
    directory.
    
    For '-o vdsm', VDSM is supposed to make sure we are running as the
    correct user, so there's no reason to doubt things will work.

commit ac70bf1d0963e025e83ed7ac795f6f8145cc5260
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 23 13:49:03 2014 +0100

    valgrind: Add suppression for another libvirt/selinux leak.

commit d1f25575293a01095924b5e1b58723810ccbee50
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 23 12:47:40 2014 +0100

    v2v: Disable valgrind tests that are confused by -o rhev forking.
    
    This updates commit 0dfa96c043cee4ce82c0a45c3ad09b0a61798b79.

commit 4c0a69cd01eaf013794b056cff8d708f1d894d76
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 23 12:22:26 2014 +0100

    v2v: Add -o qemu output mode and --qemu-boot flag.
    
    This lets you write a shell script that runs the guest under qemu.
    Specifying the --qemu-boot flag also boots the guest after conversion.

commit 6777dcbcad76da9d5529ed99a0c20a463ec6fc9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 23 11:52:00 2014 +0100

    v2v: docs: Change examples so -i input comes before -o options.
    
    Make the input/output ordering of command line arguments clearer by
    changing:
    
     virt-v2v -i disk -o local -os /var/tmp disk.img
    
    to:
    
     virt-v2v -i disk disk.img -o local -os /var/tmp

commit 0086e96265af2d997cfe55427ff2724535a1bb1e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 23 15:03:55 2014 +0200

    configure: switch from "java-default-runtime" to "default"
    
    Archlinux switched to "default" as directory for the default JDK
    version.

commit 67d8b0129410582ef9756316a90235278adb6d58
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 23 15:01:53 2014 +0200

    inspect: map Hurd devices, and enable fstab introspection
    
    Add a mapping for the Hurd device names, so it is possible to enable the
    inspection of /etc/fstab.

commit c14748adbd2192a5ef7f6035b966bbf5dadcba7c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 22 19:48:41 2014 +0200

    inspect: basic Minix support
    
    Add a basic support for identifying Minix, extracting its version and
    hostname.
    
    Related to RHBZ#1144137.

commit 2af1813c424a8eb9ce2acb7140b6df0f5f586f61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 22:41:33 2014 +0100

    Version 1.27.52.

commit 78e6d2ae8f0f5ae725d0adb14689adb02eb9c1a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 21:57:57 2014 +0100

    v2v: -o rhev: Write files and directories as user:group 36:36 (RHBZ#1143887).
    
    We need to write files and directories as user:group 36:36, else
    RHEV-M cannot import the VM.  Doing this in the presence of NFS is
    difficult.  See v2v/kvmuid.mli for how it is done in this commit.

commit d2596d00c8e7985b8499e4503e421f1d50d37290
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 22:10:44 2014 +0100

    v2v: Allow the output mode to override disk_create.
    
    Also we allow the output mode to actually create the disk image.  This
    lets the output mode set ownership and permissions correctly if
    required.
    
    The default method just calls Guestfs#disk_create, so there is no
    actual change in this commit.

commit eb47fd29adb5c7070f83485054bb2c1bffa35253
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 19:31:37 2014 +0100

    v2v: lib_ovf: Change create_meta_files so it doesn't write the files.
    
    Change Lib_ovf.create_meta_files so that instead of writing the
    .meta files, it just returns the content.  Output_rhev and
    Output_vdsm are correspondingly changed so that they write the
    content to the .meta files.
    
    This is just code refactoring, there is no functional change.

commit 6009878bd94d4a45cd1fd8f205a3f6ad3e20677f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 18:28:07 2014 +0100

    Version 1.27.51.

commit 6426ce99f1fd394f12e3189dd2bf0b12bd62c6c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 18:25:51 2014 +0100

    v2v: Windows: Uploading viostor driver needs upload method, not copy.
    
    Thanks: Jeff Forbes

commit f1efe818402ffdd19ebdc2802188778239a80ae5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 18:25:26 2014 +0100

    fuse: Remove test-fuse.sh (rewritten script) from EXTRA_DIST.
    
    This fixes commit aca076e2e2b3e03f4cf5b09cf7766925f97e4b68.

commit 385455d5b65803913d67f110794828bdd465b914
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 18:13:34 2014 +0100

    Revert "v2v: -o rhev: Chown the image files and metadata after the upload."
    
    This reverts commit dd58cde929ade2dd6bc216aac21658ed3b3f51aa.

commit 931017bdc607a0fcd799e9cf2092b006ea6ecb2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 18:13:22 2014 +0100

    Revert "v2v: -o rhev: Use chown --reference instead of 36.36 (RHBZ#1143887)."
    
    This reverts commit 70444670acc60c5700bcd07ea7440d186eb4b60c.

commit c44c612cc818a5b55027466e85d115330a9ddb78
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Mon Sep 22 15:47:35 2014 +0800

    resize: simplify the code to filter parts
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit d0f1f2fd8d351044ab1ee82c395794b311dcf741
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 16:44:19 2014 +0100

    v2v: For grub legacy, edit grub config file instead of using grubby (RHBZ#1141145).
    
    The old virt-v2v code would either edit the grub config file (grub
    legacy) or use grubby --set-default (grub2).
    
    When translating this code, I figured we could use grubby in both
    cases, since grubby exists for grub legacy guests.
    
    However it doesn't appear to work for grub legacy guests.  Use the
    configuration file editing method for these, same as old virt-v2v.
    
    Thanks: Tingting Zheng

commit 77b785e010be64645b61b84a34fa75fae3fe7ba0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 13:57:02 2014 +0100

    fuse: Enable futimens test (RHBZ#1144766).

commit 83c62248aa59006cc01b1e2bbe6005a22b8a7682
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 22 10:27:21 2014 +0100

    New APIs: Implement stat calls that return nanosecond timestamps (RHBZ#1144891).
    
    The existing APIs guestfs_stat, guestfs_lstat and guestfs_lstatlist
    return a stat structure that contains atime, mtime and ctime fields
    that store only the timestamp in seconds.
    
    Modern filesystems can store timestamps down to nanosecond
    granularity, and the ordinary glibc stat(2) wrapper will return these
    in "hidden" stat fields:
    
      struct timespec st_atim;            /* Time of last access.  */
      struct timespec st_mtim;            /* Time of last modification.  */
      struct timespec st_ctim;            /* Time of last status change.  */
    
    with the following macros defined for backwards compatibility:
    
      #define st_atime st_atim.tv_sec
      #define st_mtime st_mtim.tv_sec
      #define st_ctime st_ctim.tv_sec
    
    It is not possible to redefine guestfs_stat to return a longer struct
    guestfs_stat with room for the extra nanosecond fields, because that
    would break the ABI of guestfs_lstatlist as it returns an array
    containing consecutive stat structs (not pointers).  Changing the
    return type of guestfs_stat would break API.  Changing the generator
    to support symbol versioning is judged to be too intrusive.
    
    Therefore this adds a new struct (guestfs_statns) and new APIs:
    
      guestfs_statns
      guestfs_lstatns
      guestfs_lstatnslist
    
    which return the new struct (or array of structs in the last case).
    
    The old APIs may of course still be used, forever, but are deprecated
    and shouldn't be used in new programs.
    
    Because virt tools are compiled with -DGUESTFS_WARN_DEPRECATED=1, I
    have updated all the places calling the deprecated functions.  This
    has revealed some areas for improvement: in particular virt-diff and
    virt-ls could be changed to print the nanosecond fields.
    
    FUSE now returns nanoseconds in stat calls where available, fixing
    https://bugzilla.redhat.com/show_bug.cgi?id=1144891
    
    Notes about the implementation:
    
    - guestfs_internal_lstatlist has been removed and replaced by
      guestfs_internal_lstatnslist.  As the former was an internal API no
      one should have been calling it, or indeed can call it unless they
      start defining their own header files.
    
    - guestfs_stat and guestfs_lstat have been changed into library-side
      functions.  They, along with guestfs_lstatlist, are now implemented
      as wrappers around the new functions which just throw away the
      nanosecond fields.

commit f0891de0cd208ae412b9ed45fcdce3c79883bbd0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 21 21:40:13 2014 +0100

    fuse: Rewrite test-fuse.sh in C.
    
    This gives us finer control over how system calls are done,
    and also potentially lets us test more.
    
    Currently two tests are disabled:
    
     - utimens because of https://bugzilla.redhat.com/show_bug.cgi?id=1144766
    
     - utimes because our stat call does not return the nanosecond fields

commit 2596afaecbe7425b8b03cfb3a2d174d67f418272
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 20 14:48:17 2014 +0100

    tests/data: Remove abssymlink.
    
    This file causes the test ISO to be rebuilt every time.
    
    Instead of including it as a Makefile dependency, create it just
    before making the ISO, which has the same effect.
    
    A test in fish/ also used this file.  Change it so it doesn't need it.

commit acfe0c911c8a25a94b92613280e11168c51a724f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 20 13:10:19 2014 +0100

    tests/guests: Don't calculate checksums of generated images.
    
    Turns out not to be useful, and takes a long time.
    
    This reverts commit 0c605eb94f20cb08e4a858988e0da121af6f66cb.

commit dcfd1498bd2ec00be2b9dbf01283d579aa3931f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 20 11:38:39 2014 +0100

    v2v: Move mpstat type definition.
    
    It's only used by the core v2v.ml code, so move it to that file.
    
    This is just code motion.

commit 285d1c8bf63dd8d0832e5099644886c80c37d06a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 20 10:11:25 2014 +0100

    v2v: Move target actual size computation into core v2v.ml code.
    
    This was only calculated for RHEV, but might benefit other output
    modes in future, and is generic code, so move it into the core code.

commit 3becc9b754a574fa95ddc4883a5e93fe432a3ede
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 20 10:13:13 2014 +0100

    v2v: Clarify description of ov_sd field in comment.

commit 22d3bfe8a62b96d70b010068548e5d92b0ecd64b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 20 09:03:36 2014 +0100

    aarch64: Add support to file_architecture API.
    
    Add support for aarch64 to the file_architecture API, so we can
    detect aarch64 guests correctly.
    
    Add a test binary and library.  These were generated on an aarch64
    machine by doing:
    
      echo 'main(){}' > bin.c
      gcc bin.c -o bin-aarch64-dynamic
      strip --strip-all bin-aarch64-dynamic
      echo '' > lib.c
      gcc -shared lib.c -o lib-aarch64.so
      strip --strip-all lib-aarch64.so

commit 27769234be8be76ad23f51f4cf57b253d00d126a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 20 08:53:38 2014 +0100

    v2v: Remove source.s_arch field and find architecture through inspection.
    
    Previously we required that the source hypervisor knew the
    architecture of the guest, and passed that through to KVM.
    
    However this was error-prone for several reasons:
    
     - OVF (-i ova) doesn't define the architecture
    
     - Disk images (-i disk) don't have an associated architecture
    
     - Libvirt XML sometimes lacks the <type arch=...> field, especially
       for RHEL 5-era libvirt.
    
     - It might not be set correctly for the guest.
    
    We know the real architecture from inspection of the guest, so use
    that instead.

commit 34a4c0a72b03620a55a37b5e602f220c0a971734
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 20 08:12:41 2014 +0100

    v2v: Fix typo in comment.

commit 86d12e1a5c9256b9621cd2dc7bfaf4be2a93a852
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri Sep 19 18:55:50 2014 +0200

    appliance: Add libsystemd0 (and systemd as an alternative for sysvinit) on Debian-based systems

commit c21ae8d702d5f416019fdaac23c167350689861a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 19 14:52:16 2014 +0100

    Version 1.27.50.

commit aaf611d962455d69638ab0f4cde5b93ad6296a95
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Sep 19 15:39:13 2014 +0800

    resize: add function expand_partition_content
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 304086455c683d4baaff94649ff833fb272d660f
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Sep 19 15:39:12 2014 +0800

    resize: add function set_partition_bootable_and_id
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit d2ff7e360b03ed633385284af40d4ab763c79fac
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Sep 19 15:39:11 2014 +0800

    resize: add function copy_partition
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 32efd993b62a3a5ed4de0c153399596e5e8ebd15
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Sep 19 15:39:08 2014 +0800

    resize: add function print_summmary
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit c388b8041f14e0d74aee90d8cfe9f941ca1050e1
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Sep 19 15:39:04 2014 +0800

    add function div_roundup64
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 7ef33671443f434211d2be1c6c6fa661b62b87bd
Author: Hu Tao <hutao@cn.fujitsu.com>
Date:   Fri Sep 19 15:39:03 2014 +0800

    resize: convert sectsize to int64
    
    Because sectsize is used as int64 everywhere.
    
    Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>

commit 6d4a89235e783c067757a2af19f45ec1eb7715a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 19 13:18:45 2014 +0100

    fish: Restore text to default when exiting (RHBZ#1144201).
    
    The escape sequence \e[0;30m sets the colour to black.  This is fine
    if you use a black-on-white terminal, but fails rather badly if you
    use a white-on-black terminal.
    
    Instead use the escape sequence \e[0m which restores the terminal to
    the defaults, and works in both cases.

commit 8d46c0df29844e40c509b36e51c838c9a8c3493a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 19 12:14:21 2014 +0100

    v2v: Clean the RPM database early on (RHBZ#1143866).
    
    If the RPM database in the source guest is corrupt, then subsequent
    operations will fail randomly.
    
    Old virt-v2v appears to have avoided this by cleaning the RPM database
    very early on.  When translating the code I inadvertantly moved this
    cleanup to a later stage -- in particular, after inspection of kernels
    was done which requires running rpm commands.  Move this back to the
    start.

commit 39361b302f52a6e2293560541fd9d24d69364ca4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 19 12:13:41 2014 +0100

    v2v: Move initialization of Augeas after inspection housekeeping.
    
    Just cleanup, it should have no effect on the way that the
    conversion works.

commit 971fa00ce7704eec44c8c2a207f9aa9f3a54c97b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 19 13:33:21 2014 +0200

    appliance: move e2fsprogs as common for all distros
    
    All distro-specific sections have it, so just make it really common.

commit f9e59224a9c93c46bac12f50bdbc2a39a2b79276
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 19 13:26:37 2014 +0200

    appliance: remove duplicate packages in OpenSUSE, Frugalware, Mageia
    
    From some lists of distro-specific packages, remove the ones that
    appear already in the common list.

commit 0520cb58f9a319e644e0d26a2574dfd1d55dff77
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 18 18:08:43 2014 +0100

    Version 1.27.49.

commit ef0bbd7d8c761cdf86525b9101366cd0c05bb001
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 18 17:45:12 2014 +0100

    v2v: Print a message if the guest is virtio-capable after conversion.

commit 06005cd2a17a5d5b90c542da10fcf2986c86a4d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 18 15:07:32 2014 +0100

    v2v: -o rhev: Use chown --reference instead of 36.36 (RHBZ#1143887).
    
    When chowning the final directories, instead of chowning them to 36.36
    (ie. hard-coding those UID/GIDs), use a --reference chown so it should
    take the ownership from the parent directory.
    
    Unfortunately chowning is very complex because of:
    
     - NFSv3 vs NFSv4
    
     - root squash
    
     - idmap
    
    which creates approximately 8 different ways for this to fail.

commit 988cbe9ba0ab3f0362ed75cfbd59180da52ed5c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 18 14:43:12 2014 +0100

    v2v: Fix code for editing grub2 console=... parameter (RHBZ#1143883).
    
    When presented with a RHEL 7 guest, virt-v2v would print the following
    warning message:
    
      virt-v2v: warning: could not update grub2 console: aug_get: no matching
      node (ignored)
    
    This happened because on RHEL 7, /etc/sysconfig/grub is a symlink to
    /etc/default/grub, and the Augeas grub2 lens returns entries under
    /files/etc/default/grub/*, but the code was checking for
    /files/etc/sysconfig/grub/*.
    
    The fix is to check all the possible Augeas paths until one matches.
    (Only the first match gets updated however).
    
    Also, don't rebuild the grub2 config unless we've actually changed it.
    This avoids doing a potentially failure-prone operation when it's not
    necessary.
    
    I suspect that the old virt-v2v code did not work correctly for RHEL 7
    guests, but old virt-v2v didn't print a warning here, it just failed
    to update silently.

commit 7cf1723665e35ba01fb3feb71bacffff893568e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 18 13:56:58 2014 +0100

    customize: Make usage of --password-crypto option clearer (RHBZ#1143949).

commit d792bb29535db84ad9c4324147968e7a042a4c3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 18 13:35:03 2014 +0100

    Update release notes.

commit 825296655cd9dc7c498ff6c387ed52f40c728428
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 21:34:10 2014 +0100

    v2v: Document the input: output: and convert: features in --machine-readable output.

commit 203d92fcb0b22ebe04e9d8bcc33e9ef734ac420c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 15 18:44:51 2014 +0100

    generator: Change type of 'tests' to 'c_api_tests'.
    
    Just a code refactoring, has no functional effect.

commit 69c4fbe9419d519e2a196e1d6adbd5096e8a1690
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 15 15:17:47 2014 +0100

    tests: Don't use relative paths to binaries in tests.
    
    All tests run under the ./run binary.  For a long time the ./run
    binary has set the $PATH environment variable to contain all of the
    directories with binaries in them.
    
    Therefore there is no reason to use ../fish/guestfish instead of just
    plain guestfish (and the same applies to other built binaries).

commit e99e6b1cbb78e5a2163384dc975cae1ff982ad9d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 16:33:55 2014 +0100

    FAQ: Note that update-guestfs-appliance is not needed with libguestfs >= 1.26.

commit 59643b70f748f7a36526018bbd0a92ae15f19dee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 15:51:30 2014 +0100

    Version 1.27.48.

commit 2b3bfc7dcaf0236a4e556c1c6012379fc61e271c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 15:36:15 2014 +0100

    daemon: parted: Fix error message when part-get-name is called on non-GPT (RHBZ#1142416).
    
    The error message was bogus, fix it.
    
    This fixes commit 0316d247706aab7ce7c2225472feeb51fa8b1664.
    
    Found by: Lingfei Kong

commit cdfe77717930a3e5b58c71bbc010e555cc564d43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 15:34:03 2014 +0100

    daemon: parted: Don't crash if part-get-name called on non-partitioned device (RHBZ#1142158).
    
    If do_part_get_parttype returns NULL, then return from the function
    instead of dereferencing the NULL pointer and crashing.  Note that
    do_part_get_parttype has already called reply_with_error in this case.
    
    This fixes commit 0316d247706aab7ce7c2225472feeb51fa8b1664.
    
    Found by: Lingfei Kong

commit 01e37a164793fffe6a41c9a03680ed3b1503f618
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 15:13:33 2014 +0100

    v2v: Reconfigure /etc/modprobe.conf (RHBZ#1141145).
    
    More code that was omitted during the translation of old virt-v2v.

commit d7b663ef39820473c89ef9dcd79c4fa004bb7ec7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 15:13:21 2014 +0100

    v2v: Rebuild initrd last.
    
    Old virt-v2v rebuilt the initrd late.  Currently we rebuild the initrd
    right after choosing a kernel, but it's best to update the initrd
    at the end since mkinitrd may depend on other configuration files
    that we are changing (especially see next commit).

commit 15752e0fefdb481eddbeb27328b0deaa892fc26e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 13:59:39 2014 +0100

    v2v: -o rhev: Don't quote 'root' in error message.

commit fa7fa0989195137d63a448b03c6b431d1c44953b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 13:40:10 2014 +0100

    v2v: -o rhev: Chown the image files and metadata after the upload.

commit 745fc29da93f395cb98abf0f15df8190f31d8591
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 12:56:53 2014 +0100

    v2v: Fix OVF VmType field, which should be 0 or 1 (RHBZ#1142008).
    
    Thanks: Shahar Havivi.

commit d20d2303a716d44617fffbe1f782a165e2c369c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 12:55:06 2014 +0100

    v2v: Fix capitalization of ovf:volume-type (RHBZ#1142008).
    
    Thanks: Shahar Havivi.

commit eef57288368d631db33005b10810a08d8e045fec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 12:49:00 2014 +0100

    v2v: -o rhev/vdsm: Fix ovf:size and ovf:actual_size fields (RHBZ#1142008).
    
    These are integers in gigabytes (2^30).
    
    Thanks: Shahar Havivi.

commit 439f5eb073eb86806b425f742411ca5b5112e29f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 12:13:42 2014 +0100

    v2v: If virtio is enabled, map device names to vd* (RHBZ#1142004).
    
    The old virt-v2v code had:
    
        my $prefix;
        if ($virtio) {
            $prefix = 'vd';
        } elsif ($libata) {
            $prefix = 'sd';
        } else {
            $prefix = 'hd'
        }
    
    The translated code dropped the test for virtio by accident, which
    meant that device names would be mapped to sd* or hd* even if the
    virtio-blk driver was enabled for the guest.
    
    Thanks: Tingting Zheng

commit e595e0627713f53c43a4b73740322ae43c24541b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 17 11:51:54 2014 +0100

    sysprep: Clarify the documentation for 'flag-reconfiguration'.
    
    It was quite obscure what this actually did.  Make it clear
    in the documentation.

commit fe673cc3e631af7d2c2a1edc71fb0d6ae1cbe2e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 16 16:46:34 2014 +0100

    sysprep: Clarify when --mount-options is used and what it does (RHBZ#1142186).

commit b784ea7fe976461bb0027997da4b2c849aa65836
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 16 16:43:28 2014 +0100

    Version 1.27.47.

commit 66000322ab1e8d93d8e05098fd005ad2d4ba60dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 16 16:20:15 2014 +0100

    v2v: Add xvda -> sda etc mappings (RHBZ#1142004).
    
    For Xen guests, a device can be presented twice as (eg) xvda and sda,
    and therefore we should map any otherwise unmapped xvdX.
    
    For non-Xen guests, this should have no effect.

commit 7a0d6da176dd91b8886d9bc0c11c24b81dd04502
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 16 15:49:34 2014 +0100

    v2v: Fix for 'grubby: bad argument --set-kernel: unknown option' (RHBZ#1141145).
    
    I made a mistake while translating the Perl conversion code and
    transcribed --set-default as --set-kernel.  grubby has no --set-kernel
    option so it failed.
    
    Thanks: Tingting Zheng

commit 7236ea867e80f1d73c483c9cecbcfaddecd69dab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 15 15:36:23 2014 +0100

    run: Add p2v to the PATH.

commit 5385cb1c0a1e24fa988a5f4c8b5e5eaf5dba9566
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 16 08:36:38 2014 +0100

    v2v: Prevent conversion of "blocked" and "paused" domains also.
    
    Previously only "running" domains were blocked from conversion.
    However "blocked" is essentially the same as running (on Xen it just
    means the domain is running but waiting on an I/O resource).  And
    "paused" domains probably shouldn't be converted either since their
    disks are only crash-consistent.

commit e04c4706cb2715e3a45770cc4c5f0fb3df265bc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 15 11:31:55 2014 +0100

    v2v: Clarify the missing input format error message (RHBZ#1141723).

commit a08aed4485f987c172f9d38dcb2121045f5ba84a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 15 11:03:35 2014 +0100

    Version 1.27.46.

commit 0a4748a1ff3a7fdb8d753389fd164aaaadb6ebd2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 15 10:17:01 2014 +0100

    v2v: Allow pool UUID to be used in -os parameter (RHBZ#1141631).
    
    Thanks: Zhou Junqin.

commit 832364c7e88975e1a5bdc5b784f3deb1e533d367
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 15 10:15:10 2014 +0100

    v2v: Allow domain UUID to be used in place of libvirt guest name (RHBZ#1141680).
    
    Thanks: Zhou Junqin.

commit 1f884a40867a542f51721a69e280b2d6168ff24d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 15 10:13:09 2014 +0100

    v2v: domainxml: Rework libvirt error handling.
    
    Don't rely on libvirt's implicit print-to-stderr.  Instead make sure
    that libvirt error messages are raised in the exception message.
    
    Also allow error strings to be translated.

commit cf860354871a68c2b74e0bb0885d6cac8502f58a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 15 09:46:30 2014 +0100

    Revert "v2v: -i libvirtxml: Give an error if local disks are not readable (RHBZ#1140946)."
    
    This commit breaks remote disks.  See:
    https://bugzilla.redhat.com/show_bug.cgi?id=1141654
    
    This reverts commit 73c1f1cf7e1c4aa4e70407feff49ba847f7ebb63.

commit 95801a47a86f02f945ea39747dce30fa853a4219
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sun Sep 14 21:21:25 2014 +0200

    Generate *.cmx targets only if a native OCaml compiler exists

commit 9cf8b7e45b93036569055c3812ca7f8667ff5316
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 14 19:03:28 2014 +0100

    v2v: Add stringMap.mli (interface).
    
    Hopefully this should fix the incorrect build problem.  See discussion
    here:
    
    https://www.redhat.com/archives/libguestfs/2014-September/msg00071.html
    
    The interface was generated using 'ocamlc -i'.

commit a3964c87e038264dbd40f9282f349bc7da8aadbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 14 18:46:49 2014 +0100

    Revert "Use ocamldep -all option."
    
    This reverts commit a3881445efd04d5fe6da29db8b2d62a30088b9d1.
    
    See discussion on the mailing list:
    
    https://www.redhat.com/archives/libguestfs/2014-September/msg00069.html

commit 87e6ea7c0382da50b226d4d7f6981376b4a617bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 14 14:02:12 2014 +0100

    Version 1.27.45.

commit eca2085b6895fa87563281a7d8f698c92822e314
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 13:54:50 2012 +0000

    daemon: Run udev_settle after pwrite-device finishes (RHBZ#1141451).
    
    When you call close on any block device, udev kicks off a rule which
    runs blkid to reexamine the device.  We need to wait for this rule to
    finish running since it holds the device open and can cause other
    operations to fail, notably mkfs.
    
    (cherry picked from commit a9c8123c72db47bcab8dd738e8d5256a9ae87f11)

commit 20c0fdfdc492c933fb0b532e4d47c853e72a5a46
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 14 12:22:11 2014 +0100

    appliance: Add comment with udev debugging option.

commit 6e1f5add37158f3e20ff72ec967c8ef68b4b6e8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 13 16:44:47 2014 +0100

    v2v: -o rhev/vdsm: In --no-copy case, use estimate for ovf:actual_size (RHBZ#1140156).

commit 61f7e3a14f0b63638fd7c94e67128a3c499006db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 13 16:44:17 2014 +0100

    v2v: Fix variable name usage_mb -> usage_gb.
    
    It's actually storing usage in gigabytes, not megabytes.

commit d1cb1998572b3802b101f4129b3fe3b9163be10e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 13 16:18:16 2014 +0100

    v2v: Estimate the amount of space required on the target.
    
    Estimate the amount of space required on the target by each source
    disk after conversion.  The estimate is approximately a ceiling on
    this, and actual use should be considerably lower.
    
    Provide an extra output method (#check_target_free_space) which output
    modules may use to check that there is sufficient free space to
    proceed, before conversion starts.  None of the output modules
    actually implement this at the moment.

commit 9ab261c278368c5971e4c4f7b61ede631f4c9e05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 13 14:54:39 2014 +0100

    v2v: Introduce Types.mpstats struct storing mountpoint statistics.
    
    This is just code refactoring.

commit 559dc1573130e04751b2ad466a3934e48fc4f9f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 13 09:45:59 2014 +0100

    tools: Check for dangling --format parameters (RHBZ#1140894).
    
    In most C tools, virt-sysprep and virt-customize, you have to put the
    --format parameter before the corresponding -a parameter.  ie.  The
    following is correct:
    
      guestfish --format qcow2 -a disk1 -a disk2
    
    But the following is incorrect.  The --format parameter is dangling
    and prior to this commit would have been silently ignored:
    
      guestfish -a disk1 -a disk2 --format qcow2
    
    After this change, dangling --format parameters now lead to an error:
    
      guestfish: --format parameter must appear before -a parameter
    
    In virt-customize, also check that --attach-format parameter appears
    before --attach parameter.
    
    Thanks: Lingfei Kong

commit a6257cc8acc4809faddc24e7ccbac3c39e9a3193
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 22:44:07 2014 +0100

    Version 1.27.44.

commit de931bc7f93905df476a902461b7b7e4ba5505fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 22:29:49 2014 +0100

    sysprep: Use 'error' function consistently throughout the program.

commit 5f81abd68b7e5ef452c78507386b587fe89cba93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 22:19:42 2014 +0100

    sysprep: Ensure error handler surrounds all the code so we catch and print all errors.

commit 4b4cbf7986820cb2a1e8e3bb1077b34a7d65fa48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 22:06:06 2014 +0100

    v2v: esx: Clarify that username can be specified in vpx:// URI (RHBZ#1141113).
    
    If there is an authentication error when getting the session cookie,
    emphasize in the error message that the username can be specified in
    the URI.
    
    Unfortunately libvirt asks for the username previously, but we cannot
    access that.

commit f5898bbb57b58b8917ffa323642ba7c2c617dae9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 20:06:49 2014 +0100

    v2v: Add -o null mode.
    
    In theory this discards the output.  Unfortunately in practice we have
    to write the output to a temporary file and delete it (because of
    limitations in qemu-img convert).

commit e877fd72ca4792eae48604bf6c90b067c67cedbb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 19:37:03 2014 +0100

    v2v: -i libvirtxml: Give an error if local disks are not readable (RHBZ#1140946).

commit 5f2bf85423cd863b4be8616e9d3d236682827bac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 16:39:55 2014 +0100

    sysprep: Check --{keep,remove}-user-accounts parameters are not used when operation is disabled (RHBZ#1141157).
    
    You will see an error like this:
    
    $ virt-sysprep --remove-user-accounts foo,bar -a /dev/null
    virt-sysprep: error: user-accounts: --remove-user-accounts parameter was
    used, but the "user-account" operation is not enabled

commit a4798121d54ebf2f9264935c78645f85465cdf15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 16:34:58 2014 +0100

    sysprep: Add an optional method for checking if unused arguments were passed to disabled operations.

commit e2c2ef69caec51739db6774864ccbfa8eec1be76
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 16:21:11 2014 +0100

    sysprep: Replace --user-accounts option with --{remove,keep}-user-accounts.
    
    The --user-accounts option, with its double-negative '-' prefix on
    user names, is confusing.  Replace it with '--remove-user-accounts'
    and '--keep-user-accounts' options.
    
    This updates commit 128d474095bfabc2d724d0181155e364f1afbabf.

commit e31ada8f93844b0d1fbb80d7ec8b8d7d386e7903
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 15:47:07 2014 +0100

    v2v: If non-Xen and Xen initrds match a kernel, take shortest name (RHBZ#1141145).
    
    Thanks: Tingting Zheng.

commit c723f3e6cbf45156f9ec79211b1d7cfbc9d30c9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 12 12:41:26 2014 +0100

    v2v: Fix --help documentation of -o glance option.
    
    Thanks: Junqin Zhou

commit 4968fdae50f2439b46e1d9d2a26e507546119429
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 11 19:38:10 2014 +0100

    Version 1.27.43.

commit 3241a830f9858bfc0f4d74130652a6f647587cca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 11 16:55:15 2014 +0100

    v2v: Split off -o vdsm mode from -o rhev (RHBZ#1140156).
    
    -o rhev: This is "traditional" output to a RHEV-M Export Storage Domain.
    It requires no cooperation from RHEV itself, and in all other respects
    works the same way as old virt-v2v did.
    
    -o vdsm: This is the new mode which requires VDSM cooperation.  VDSM
    manages the conversion, creating the directories, suggesting UUIDs,
    and cleaning up on failure.  This allows direct import into a Data
    Domain.
    
    The --rhev* command arguments now only apply to -o vdsm, and therefore
    have been renamed to --vdsm*
    
    The --vmtype command line argument may be used with -o rhev or -o vdsm.

commit 2d42e500b78640ddb64c15784f646d57c27e3d8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 11 16:21:16 2014 +0100

    v2v: Move some utility functions into Lib_ovf module.
    
    This is just code refactoring and has no functional effect.

commit 7645e443477476c50d9dbf325f58ef27a650d214
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 11 16:14:51 2014 +0100

    v2v: Remove unused struct (Types.output_rhev_params).

commit 9430384ef376110a5814ee699cddec9cef92ef02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 11 16:14:06 2014 +0100

    v2v: Rename module Output_RHEV to Output_rhev.
    
    This is just code refactoring, and has no functional change to the
    program.

commit 22a598bdd5dda15ca5da4647da7e1a74ba9f05c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 11 10:11:09 2014 +0100

    builder: Fix documentation of --list --list-format option (RHBZ#1140547).
    
    Also give an error if users use the incorrect one:
    
    $ virt-builder --list --format json
    virt-builder: virt-builder --list: use '--list-format', not '--format'.

commit 768aba1505754f951bf829441b5407ba8ccf8385
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 10 22:31:06 2014 +0100

    Update BUGS file.

commit c6093871c1bec2e40fb017f1e7e7fee1bce6727a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 10 22:11:01 2014 +0100

    Version 1.27.42.

commit 730cd2c679fb1659086e5245eb989de0d1a79ccc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 10 11:39:55 2014 +0200

    fish: fix small memory leak in completion
    
    Do not leak the small memory buffer with the path.

commit 195fdad0bf34ac757ae9fe2c0e4995e21c8dedf9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 10 11:16:23 2014 +0200

    resize: print FSes which cannot be expanded
    
    Should ease a bit the discovery of a filesystem which cannot be
    expanded.

commit e3beed05d294bd44cbc7420fa787ce1f81386ca6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 10 11:01:34 2014 +0200

    test-charset-fidelity: set iocharset in vfat/msdos FSes
    
    The default charset for these filesystems depends on how the kernel was
    configured with, so explicitly set the default one (as specified in
    Linux sources), eventually setting later a new one for the tests.

commit 4f91cb65f1407f7617612673ee88fb270f056227
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 10 17:01:10 2014 +0100

    v2v: Clearer error message if ssh-agent authentication is not set up (RHBZ#1139973).

commit e1841f933c61df69e931903e0c9e13b92dbed60f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 10 16:29:28 2014 +0100

    v2v: Fall back to virDomainGetInfo if remote libvirtd does not support virDomainGetState (RHBZ#1138586).
    
    RHEL 5 Xen doesn't support the relatively new virDomainGetState API.
    Instead you will see a warning message on stderr:
    
      libvirt: Remote Driver error : unknown procedure: 212
    
    If we detect that virDomainGetState is not supported, then fall back
    to calling virDomainGetInfo instead, which works everywhere.
    
    This updates commit 096c05a750b8b525e48149c0c6522769c92ab07c.
    
    See also:
    https://bugzilla.redhat.com/show_bug.cgi?id=1139973#c2
    https://bugzilla.redhat.com/show_bug.cgi?id=1138586

commit 7af5d7a8d8f6be0d4fe4b44d1ba2da8cd98ed56c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 10 11:20:56 2014 +0100

    v2v: Report error when multiple conflicting command line options are used (RHBZ#1140050).
    
    $ virt-v2v -i disk -i libvirt
    virt-v2v: error: -i option used more than once on the command line

commit 9e0ea050fb477708ef5dceaca906dbc991215246
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 10 00:03:20 2014 +0100

    v2v: List convert modules in --machine-readable output.
    
    $ virt-v2v --machine-readable
    [...]
    convert:enterprise-linux
    convert:windows

commit a47305095dc4c2ea5bd08e5c891ffaa310e7bb58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 23:58:17 2014 +0100

    v2v: Abstract Convert_* modules from core v2v code.
    
    Previously the core virt-v2v code had to know which Convert_* module
    to call for each guest type (based on inspection).  After this change
    the core code doesn't need to know that, but instead Convert_* modules
    register their interest in particular guest types.

commit 4089e9baeaeced3eccea2d345eb73cae94439bbc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 23:27:51 2014 +0100

    sysprep: Don't use --option=arg in documentation.
    
    Fedora patches OCaml's Arg module to support --option=arg.  Since this
    won't work on other distros or upstream OCaml, don't include such
    examples in the documentation.

commit 4270534a84738ac390a532a3c60e73da2767d0f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 23:08:24 2014 +0100

    v2v: Allow -o local as an alias for -o disk.
    
    This is symmetrical with -i disk / -i local.

commit 9df36e4ee20286ef958ccd7f6e6ebbbdba4d787c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 23:06:54 2014 +0100

    v2v: Sort the -i options alphabetically in the man page.

commit 5ada4bbbcdddbc412c9d5c55c92d698ba61f1b0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 23:02:21 2014 +0100

    v2v: Update documentation credits.
    
    Shahar Havivi and Tingting Zheng for development & testing respectively.

commit 9d1557a3d36c6e5e73ed6b75c030c0ed4a068c35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 20:27:33 2014 +0100

    FAQ: Repeat advice to use ./run.
    
    The two adjacent sections can be read separately, and the second
    section doesn't mention not using make install / using ./run, so
    repeat it a second time.

commit 77adfe5c4a64bcdc420893d26268354928ac33ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 17:04:47 2014 +0100

    resize: Support for expanding XFS filesystems.

commit f550992da0ba78a1b8ae762caa906339ce6224b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 16:02:44 2014 +0100

    Version 1.27.41.

commit 1f44f74c4b6203a58fc074ef9a1f4b30574a3416
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 14:20:43 2014 +0100

    daemon: Run 'udevadm settle' with debugging and warn if the command fails.

commit e1da8dea637e40b00126973491fb96a57975243d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 15:42:05 2014 +0100

    Version 1.27.40.

commit 4fd6986ad1e341982b8cab65ef41e59045cc0414
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 15:04:24 2014 +0100

    v2v: Calculate dracut/mkinitrd kernel version correctly (RHBZ#1138182).
    
    Thanks: Tingting Zheng.

commit 615b9809bbdec1532d92ec4fad28c0d3ccb1e0e7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 9 15:10:33 2014 +0200

    tests: sysprep: slightly improve output
    
    Add minor spacing changes, and report the image being sysprep'ed, so it
    is easier to spot which image caused some warning message.

commit 786cf4347683549aa3a03248d0aef7e7868210ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 9 10:46:55 2014 +0100

    v2v: Check if there is sufficient free space for conversion (RHBZ#1139543).
    
    Before trying to perform the conversion, estimate if there is
    sufficient free space on the guest filesystem(s) for the conversion to
    be successful.
    
    If not, you will see an error similar to this one:
    
    [   6.0] Checking for sufficient free disk space in the guest
    virt-v2v: error: not enough free space for conversion on filesystem '/'.
    4354048 bytes free < 20000000 bytes needed

commit e736428c3860ee20d3c5d65c5fa31640b1bf055d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 8 13:13:01 2014 +0100

    p2v: Use matchbox (window manager) in the virt-p2v ISO.
    
    virt-p2v can run without a window manager.  However it then sits in
    the top left corner of the screen.  Add a lightweight window manager
    to the ISO so that position and geometry hints work.

commit c9f912a49f4ab78f96fe73001a99de7072761cb4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 8 11:07:03 2014 +0100

    p2v: Whitespace change in options list.

commit 244a07d9fc556903180f4d50869ba54dd35d06b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 6 20:06:50 2014 +0100

    Version 1.27.39.

commit 8da5a571e8afffccd895c3d8ee3dde2b26a7b932
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 6 10:05:18 2014 +0100

    p2v: Add scripts to make disk or kickstart-based P2V ISO.
    
    Two scripts are added, replacing the make targets from the
    previous commit:
    
    virt-p2v-make-disk: Builds a virt-p2v disk or USB key using
    virt-builder.
    
    virt-p2v-make-kickstart: Builds a kickstart file (only) which can be
    fed to livecd-creator or similar tools on Red Hat-derived distros.
    
    Kickstart generation is slightly different: Instead of requiring the
    downstream 'libguestfs-pvhelper' package, the kickstart now embeds the
    virt-p2v binary(!) making it self-contained and downstream packaging
    simpler.
    
    In addition there are documentation changes.

commit efa2c83f807dab1e926e42ea7155e6aa47bccf73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 6 09:41:15 2014 +0100

    p2v: Remove p2v-iso directory.
    
    As part of reworking the scripts that are used to build the P2V ISO,
    first remove the separate p2v-iso directory.  Similar scripts and
    documentation will be introduced back into the p2v/ directory in
    following commits.

commit 2ae2d641cc0ccd7ad516a076114e1229dfc68f6e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 6 19:49:16 2014 +0100

    p2v: Temporarily remove Configure Network button.
    
    We will ship 1.28 without the capability of configuring the network
    (ie. DHCP will always be used).

commit 6f0b7610a558a76852fe03ed0460a313ab0f7006
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 6 19:47:15 2014 +0100

    p2v: Ensure the current version of virt-p2v is always displayed.
    
    This will help with debugging customer problems.

commit 27ee45401d6686a023219801b0a8ac824cb21e9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 6 13:49:13 2014 +0100

    p2v: Success message should have info logo, not error logo.

commit 8321fa14bf34ffe5f2a7bd62f2d5c443b3bcc4e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 5 20:05:40 2014 +0100

    daemon: Check return value of end_stringsbuf.
    
    Found by Coverity.

commit e34d94e463b68041927d06d50885d127495deedc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 5 15:12:53 2014 +0100

    Version 1.27.38.

commit f7546137fbe4def4715e191c7563b18831640ed9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 5 15:18:54 2014 +0100

    appliance: Add guestfs_shadow.aug to EXTRA_DIST.
    
    Fixes commit 61917136f5ad5efe30502f46f1adf60c20f15c97.

commit 07fda15293cde12988a9de6cc03615b6668b2d08
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 4 16:16:06 2014 +0200

    customize: use augeas to change passwords
    
    Make use of augeas to load and edit /etc/shadow, now that we have
    (either from upstream or by ourselves) a lens handling it.

commit 3927fc383d549ef43044fc076863bbb5e5bf3954
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 4 16:14:42 2014 +0200

    sysprep: remove comment and notes about /etc/shadow lens
    
    We are either using the upstream lens, or our copy of it, to handle
    /etc/shadow, so now removing entries from it works.

commit 5a7e54b4a399cfa8604ae20fa3d98e8c32419bf9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 4 15:27:37 2014 +0200

    appliance: daemon: import and use upstream shadow lens
    
    Import the upstream lens for the shadow file, just with a different
    identifier and not matching /etc/shadow by default. Instead, apply a
    transformation to have it match /etc/shadow only if the version of
    augeas is at least 1.2.1 [1].
    
    [1] While the last upstream version is 1.2.0, all the development seems
    to happen in master, so whatever the next version is going to be
    numbered (e.g. 1.2.1 or 1.3.0), the check will be fine anyway.

commit 8c665116a10e712e28f7c454f2d01b36ca5f93ed
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 5 14:47:22 2014 +0200

    daemon: add a way to check for the version of augeas
    
    Query augeas for its version when required, i.e. only once when using
    the new augeas_is_version function.

commit 1a7ed351f38257f3d83da24d75bf54847b7ab289
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 5 14:44:48 2014 +0100

    v2v: -i libvirt, -i libvirtxml: Print libvirt XML when debugging.

commit 18d2a075262e0f38e810361c4e7400704dada27e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 5 14:13:28 2014 +0100

    v2v: When locating initramfs, ignore kdump initramfs images (RHBZ#1138184).
    
    Thanks: Tingting Zheng.

commit 25e8b03a80cafaf97f9908120ae11eee315d1fa0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 5 13:36:01 2014 +0100

    v2v: -i libvirt: Check the domain is not running (RHBZ#1138586).
    
    It will print an error like this:
    
      virt-v2v: error: internal error: invalid argument: libvirt domain 'windows'
      is running, it must be shut down in order to perform virt-v2v conversion
    
    This only works for libvirt domains, and is explicitly disabled for
    test:/// URIs since these domains are always "running", but we use
    these URIs for testing.

commit 31f2d2b69dd44b1651301a4dd424111707287f6f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 3 17:38:32 2014 +0200

    daemon: make aug_close cleanup available for all
    
    Just code motion, no behaviour changes.

commit 617c7c456a0d5dfb5fd30c8c5ffc60142fd2fe0e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Sep 5 11:29:57 2014 +0200

    v2v: R_OK is in Unix module

commit 1a00a26df2069249277fa9bb8019dc730b06dabd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 5 09:54:32 2014 +0100

    v2v: -i disk: Add a clearer error message if the disk doesn't exist or is not readable.

commit e941a440951a8491a6fbfcfa67d65d494514cb2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 5 09:49:39 2014 +0100

    v2v: -i disk: Don't fail if filename has no extension.
    
    Unhelpfully, Filename.chop_extension throws an exception if the
    filename has no extension (instead of just returning the filename).
    Therefore the -i disk option would fail if you passed any filename
    that didn't have an extension.

commit b5147714dddaf7ae431cb08151b3795a3b90dac5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 4 15:21:17 2014 +0100

    Update gnulib to latest.

commit 6be0287905e8b7adcca1132e8f620285201955a6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 4 16:52:36 2014 +0200

    v2v: skip test-v2v-i-ova.sh if rhsrvany.exe is not installed

commit 561fe3b55231cfa19d2980c6e5452230410dd847
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 4 14:58:04 2014 +0100

    Version 1.27.37.

commit 505f6b596eb7f1fde385e9fb5b90a333010d2cf0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 4 14:57:35 2014 +0100

    v2v: Add test OVF file to EXTRA_DIST.
    
    This fixes commit 90b1e9845fa0a25de12587749f259d0da8d70a01.

commit 3d8ee6179c5124e4f37ae76d7acfa4d6643ae529
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Sep 4 13:42:20 2014 +0200

    customize: fix locking accounts with passwords
    
    When setting the password for a locked account, make sure to still write
    the password after the "!!" marker, otherwise the account will have no
    password.

commit 731649f0b53656fa8e62485de0793723a9085a57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 4 12:55:40 2014 +0100

    v2v: docs: Clarify how ESX & Xen imports happen through libvirt.

commit b4b8ea87ec543de35af8ed0f7a8a5bb537ef0f2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 4 11:32:33 2014 +0100

    v2v: Add support for access to remote RHEL 5 Xen hosts over ssh.

commit 840dea6fe882531d20447e147aff1922fa0cbe98
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 4 12:37:12 2014 +0100

    v2v: -i libvirtxml: Detect disk format using any <driver type=...> field.
    
    Previously we only looked for <driver name=qemu type=...>.  However
    for Xen imports, the name field could be name=tap (or other values in
    fact).  Since there can only be one <driver/> element under <disk/>,
    look for any <driver type=...> in order to get the disk format.
    
    A further complication for Xen is that type=aio means "raw" (for
    obscure historical reasons), so map that.
    
    Thanks: Dan Berrangé.

commit 503db6769b40ee9c547594f2c037b9b7ee9ffd4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 4 12:07:36 2014 +0100

    v2v: Move json-generating code into separate module.
    
    Just code motion so we can reuse the same code for making
    `json:' remote SSH URLs.

commit 5380de174059e97e92fbd2a36f58d95db4e41483
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 4 11:19:24 2014 +0100

    -i ova: Tidy up the description in the manual page.
    
    This updates commit 90b1e9845fa0a25de12587749f259d0da8d70a01.

commit aa634edf6342e5dfcf25b6b4867b2440a49ed96e
Author: Shahar Havivi <shaharh@redhat.com>
Date:   Thu Sep 4 11:51:02 2014 +0300

    v2v: adding input -i ova
    
    Adding ability for v2v to get Vmware ova file as an input.
    
    Signed-off-by: Shahar Havivi <shaharh@redhat.com>

commit f46eda398abf922d0c7f506a6869037dd568b3a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 3 14:01:20 2014 +0100

    launch: libvirt / p2v: Fix empty_element macro.
    
    The empty_element macro was not safe when used in a "naked" if
    statement such as:
    
      if (config->flags & FLAG_ACPI) empty_element ("acpi");
    
    Fix the macro so it uses do { ... } while (0) to make it safe here.

commit 3a6fe68e8c2a6012a631c8657838d074d82ece65
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 3 12:25:37 2014 +0100

    v2v: Don't hard-code list of -i and -o options in help output.
    
    We can now get it from Modules_list.

commit e930baa2f7def87f161c7e135d1eaa420e0d128b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 3 12:15:27 2014 +0100

    v2v: Update TODO.

commit ef66af27ae37b53fdd17eea0e2fce03d4822b0e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 3 12:15:00 2014 +0100

    mllib: error: Clearer message about how to enable debugging.

commit 39760c8111a347eb7e4a1a0a5ddf14ab66d155fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 3 12:14:27 2014 +0100

    mllib: Wrap errors at column 76 instead of column 72.
    
    Allows for slightly wider, better looking error messages.

commit f631adc285f9427feb02ac92fcc2650d0cf570af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 3 12:13:42 2014 +0100

    OCaml virt-* tools: Handle pretty printing of exceptions through a common library function.

commit 541d5bbee6dd2f180c6c4e172ea454d2963aadba
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Sep 3 11:13:54 2014 +0200

    sysprep: user-account: remove the correct home
    
    Query using augeas for the home directory of an user, instead of
    hardcoding /home/<username>.

commit 7bd2db6465461593bc33affa00a4807aefdd8889
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 23:40:28 2014 +0100

    v2v: Clarify documentation for -o local.

commit 9489c1e6d7866b863f40f02bff6101f597ef7dc8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 22:40:13 2014 +0100

    v2v: Update TODO.

commit a779ba3e5efeed48da7e3a068c9bea9184790704
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 19:36:25 2014 +0100

    v2v: Review 3-X comments in TODO file and remove any which are not short-term goals to fix.

commit 2cc658de81da117a2d20354d6cdbaaa0e3197e60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 19:34:09 2014 +0100

    p2v/v2v: List output drivers in `virt-v2v --machine-readable', and use that in virt-p2v.
    
    The new output of virt-v2v --machine-readable now lists the input and
    output drivers available in the binary:
    
      $ virt-v2v --machine-readable
      virt-v2v
      libguestfs-rewrite
      input:disk
      input:libvirt
      input:libvirtxml
      output:glance
      output:libvirt
      output:local
      output:rhev
    
    With this information, we can now pre-populate the virt-p2v GUI
    combo box.

commit 4d6debde44ed90b2e177720328a1789cf995d2bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 17:06:45 2014 +0100

    Version 1.27.36.

commit 352e9f29a412fa4049181e851e5c728da545df9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 16:49:25 2014 +0100

    p2v: Support for interface to network map.
    
    Instead of having all interfaces connect to the "default" network on
    the hypervisor target, you can now create a map of interface to target
    network, either on the kernel command line, eg:
    
      p2v.network=em1:rhevm
      p2v.network=em1:rhevm,em2:management,other
    
    or through the GUI.

commit 15ae22b3cc7cfa9293c98c2867aff5883638709c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 16:22:52 2014 +0100

    p2v: Print config->output_connection field in conversion debug.
    
    This fixes commit 81d3aee0713faddc320cd1db5ac125891d07a0f0.

commit bcae4abe2f292b5ad24c56d45a1a5577c67f6c8b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 2 15:55:33 2014 +0200

    sysprep: user-account: select which users to remove or keep
    
    Enhance the user-account sysprep operation, so it is possible to select
    which user accounts should be removed only (instead of all), or which to
    eventually keep.

commit a8e7bddc0e236005fc0c6c912126665d61c08f67
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 14:25:16 2014 +0100

    p2v: Use libxml2 to write the libvirt XML document instead of printfs.
    
    Solves quoting issues.  This is just code reorganization, there is no
    substantive change in the output.

commit 9ea5f74ba206cce953752458339d42037b57fc6e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 13:29:53 2014 +0100

    v2v: Update TODO file.

commit 3bf9035abf724de51ded4b0de423b20917247410
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 13:19:24 2014 +0100

    p2v: Add some spacing on the conversion dialog.

commit fa533e5735bcdffb1305324b27b814277f2341f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 08:53:31 2014 +0100

    p2v: Add GUI controls for -o, -oc etc options on virt-v2v command line.

commit a7841744ed5c276a7b2a0f4aecf8e59a14b332ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 08:58:46 2014 +0100

    p2v: Change p2v.output -> p2v.o etc and add p2v.oc
    
    Name these the same as the virt-v2v options, so for example
    '-oa' -> 'p2v.oa'.
    
    Also add the missing p2v.oc (-oc) option.
    
    This updates commit c516d2d07dd0d1e4429ec84d2e9ebe02a951c5b5.

commit 73767960981088ad50658a1751ae04cbc8a9ffb5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 14:32:54 2014 +0100

    v2v: Give a reasonable, early failure if output format is not raw or qcow2.
    
    See comment in the code for reasoning.
    
    Thanks: Shahar Havivi for discovering this.

commit 8632798df8688f22fce27ff0c67401f967b1efce
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Sep 2 11:36:29 2014 +0200

    appliance: exclude a lvm2 rule on Ubuntu (RHBZ#1111662).
    
    On Ubuntu, exclude the Ubuntu-only 85-lvm2.rules since it causes the
    automatic activation of volume groups on addition or change. This
    interferes with libguestfs, as vgs which are disables suddently get
    enabled.

commit dee7d83b6ea4b6532b9bcf1ab8fd0abab9ac78a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 2 09:05:12 2014 +0100

    generator: Don't use ocamldep -all option in this directory.
    
    ocamldep -all (introduced in commit a3881445efd0) creates a dependency
    rule
    
      optgroups.cmi ... : utils.cmx ...
    
    Because we never build a native code version of the generator,
    utils.cmx can never be remade, and so this results in optgroups.cmi
    being always rebuilt and hence rebuilding the whole directory.
    
    It's unclear how to fix this, but reverting the ocamldep -all change
    in this directory works around it.
    
    Partially reverts commit a3881445efd04d5fe6da29db8b2d62a30088b9d1.

commit fd3489dce60fe97b26ccfb82d7183568687e20f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 22:24:14 2014 +0100

    Use ocamldep -all option.
    
    In v2v, 'stringMap.ml' has no corresponding *.mli file.  ocamldep does
    not generate a *.cmi dependency for such modules, and this can result
    in parallel builds failing rarely because:
    
     (1) stringMap.ml is built (which has the side-effect of generating
         stringMap.cmi)
    
     (2) at the same time, types.mli is compiled.  types.mli depends on
         stringMap.cmi, but it is half way through being created by (1).
    
    There is no dependency to serialize (1) and (2).
    
    The resulting error is:
    
      File "types.mli", line 1:
      Error: Corrupted compiled interface
      stringMap.cmi
    
    Using 'ocamldep -all' generates extra deps for the *.cmi files, and
    otherwise appears to be safe, so use it.
    
    There are currently a few upstream OCaml bugs with dependencies and
    parallel builds:
    
    http://caml.inria.fr/mantis/view.php?id=3190
    http://caml.inria.fr/mantis/view.php?id=4991
    http://caml.inria.fr/mantis/view.php?id=5000
    
    It's not clear which of these apply here.

commit 25fed54dcfbc90fb9327e8cd873c7f74dd7b2cc5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 21:29:13 2014 +0100

    Improve diagrams on various manual pages using Unicode box drawing characters.

commit 350413eb7bdc1b1ce89b15f22ec01b7183d3bae6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 17:40:56 2014 +0100

    Version 1.27.35.

commit 5452510c6aef2585fd96a6f095b203e8f23ca1f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 14:10:49 2014 +0100

    p2v: Add a test of virt-p2v.

commit 54539b929b59caf3e52d603a5f78622a9fab8228
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 17:16:52 2014 +0100

    p2v: Add p2v.output* controls so we can control where the output ends up.
    
    This still needs to be implemented through the GUI.

commit a496b0b83b402bb139e88b8a2d036c69436deff0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 17:14:17 2014 +0100

    p2v: Fix p2v.disks (etc) parsing on kernel command line.
    
    The parsing of p2v.disks, p2v.removable and p2v.interfaces did not
    correctly end at the first space, and therefore any other parameters
    that happened to be on the command line afterwards would be consumed
    as a list of disks or interfaces.

commit 89e0c7fde0f39c42e8d9a5ac896253ebec630cee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 16:07:04 2014 +0100

    p2v: Add a status message for when we detect the control connection has been closed.

commit 48592bf0500348a7c6b1f188088a58e65c52266a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 16:06:05 2014 +0100

    p2v: Send SIGHUP (not SIGTERM) to kill child process.
    
    One reason is that when testing the child process will be bash (not
    ssh), and bash is documented to ignore SIGTERM when it is running
    interactively.

commit abd11c0008a3402a6b415f33f5641152825c85ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 15:55:56 2014 +0100

    p2v: Allow -EIO error when reading pty to mean the writer has closed the connection.
    
    This is apparently normal behaviour for ptys.

commit e647d40e35b160066cc4b83993596c858e3b1bb7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 13:06:09 2014 +0100

    v2v: Update TODO file.

commit ef3dc32de58484af2bd4dae09b5dd0c9af518c32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 1 12:21:51 2014 +0100

    v2v: Add some defensive code to test for the broken qcow2 overlay bug.
    
    In commit 53e0d3ea5fc703066f0eb92a49eaf8be18961e7e I fixed a cause of
    disk corruption in the overlay file during conversion.
    
    To ensure this doesn't occur again unexpectedly, add a simple test to
    the virt-v2v code and to the tests.

commit a596230f7991ab8bb8c8437731e7b6f153db8062
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 1 11:46:57 2014 +0200

    fish: edit: write to the real file name
    
    When saving, resolve the path of the file being edited and use that as
    real target to write to. Otherwise, if the file name is a symlink then
    it will be replaced by a regular file with the new content, leaving the
    old file untouched.
    
    Extend test-edit.sh to check for this situation.

commit 6eec400da20ef203cd333effc29d46b77187b7da
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Sep 1 10:28:00 2014 +0200

    test-tool: stop printing the FEBOOTSTRAP_* envvars
    
    Stop printing the FEBOOTSTRAP_* environment variables, since they are
    not used anymore.

commit 2423aec0f65770cc27fed58981044308d92a0bac
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 29 16:38:04 2014 +0200

    fish: edit: centralize the EDITOR handling
    
    Allow null as value for the editor parameter of edit_file_editor, which
    will then get it from the EDITOR envvar (falling back on vi).
    
    This is basically code motion from the two edit_file_editor users to it.

commit 588330e8be26463be8e85fbd592bb288f9378310
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 29 14:58:31 2014 +0200

    fish: edit: factor out download and reupload phases
    
    Share some code between edit_file_editor and edit_file_perl; mostly code
    motion, with no actual behaviour change.

commit aacba1ccd34464f90b7aa0c909013e4fa396a4bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 31 14:09:51 2014 +0100

    v2v: -o glance: Write potentially huge temporary images to /var/tmp by default.
    
    Instead of /tmp.  This can be controlled by setting
    $LIBGUESTFS_CACHEDIR or $TMPDIR.

commit ccf7643dc69f0ac82d9e49f8d2a6ffed7981242c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 31 13:37:51 2014 +0100

    builder: Add test of the --edit option.

commit 1b38f18156d3229847d6cf53a198e97bee3a39cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 31 13:35:33 2014 +0100

    customize: perl_edit: Type of Guestfs_val() param is a Guestfs.t not the object wrapper.
    
    This fixes commit c6b7e6cddac850d6d2caf2e2f3060467c38397fe.

commit f45ce92ef96f3170f7b8528ab4c7f0793ae96d8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 31 11:35:58 2014 +0100

    -o glance: Multiple fixes.
    
    Now tested and working on a glance server.
    
    This fixes commit f01f641fbb1a29b5727c0443f3700b1c871ccfc9.

commit d8c7baf5e3b12874319dc244c05f4fd68834204a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 29 22:43:10 2014 +0100

    Version 1.27.34.

commit 61373ee17bf48cc0d8e9e96e869d6199c24e1a51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 29 21:14:24 2014 +0100

    v2v: Minor correction to -o glance documentation.
    
    This fixes commit f01f641fbb1a29b5727c0443f3700b1c871ccfc9.

commit 7fac77822680a14164ed4930d508762c45a36a74
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 29 18:27:20 2014 +0100

    v2v: Output to OpenStack Glance (-o glance option).

commit ce0473ed097c14e827df2926ac26503a4dad27e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 29 18:22:20 2014 +0100

    v2v: Use copy_on_read in the overlays.
    
    To speed up conversions by storing everything we read during
    conversion in the overlay instead of having to reread it from the
    remote server during copying.
    
    Thanks: Matthew Booth.

commit 8cae8f06b66d7f358984c069efd8fc4ec2f7a7d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 29 18:19:13 2014 +0100

    Add support for qemu copy_on_read feature.
    
    When drives are added with this flag, reads from the backing file are
    copied into the overlay, improving performance of reads to the same
    area of disk (at the expense of local storage).  This is excellent for
    reading remote / slow sources like HTTP.

commit 952d2cc2bb8a40817ce1b37c807699c973547562
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 29 16:26:45 2014 +0100

    v2v: esx: Add note to documentation about being asked for the password twice.

commit 9ccf16de70f8c1751738bbad2b67e2c7064fe600
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 29 10:05:47 2014 +0100

    v2v: More esx:// -> vpx:// changes.
    
    This updates commit 155a6f0482e5eeb6a763d4d31354edc5f48a1f43.

commit 395fae855ce5245596c35c35c84fa890d6045367
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 28 15:06:39 2014 +0200

    customize: use the common perl file editing code
    
    Wrap edit_file_perl to OCaml, and use it instead of the OCaml version
    of it.

commit 052ae3549c1c1f62e3052e0fb88ec9d20e8b810a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 28 14:23:46 2014 +0200

    fish: edit: add verbose parameter

commit a1c4be01328fc9b9531da5feb4d955d38775b8ac
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 28 11:33:14 2014 +0200

    edit: switch to common editing functions
    
    Switch virt-edit to the common edit_file_editor and edit_file_perl.

commit ec114bebb54d472459d782a6fe7f1341a3b42fa2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 28 11:21:12 2014 +0200

    fish: edit: add perl file editing
    
    Add the perl file editing, mostly based in the virt-edit implementation.
    
    This introduces a mild code duplication with edit_file_editor; will deal
    with it in a later commit.

commit 671de1b1ce9d027e2567a1d819dfd87f20ff5ed9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 28 11:02:53 2014 +0200

    fish: edit: bring the fast-time-edit protection
    
    Bring from virt-edit the small hack of putting the ctime of the
    temporary file few seconds back to notice file changes also on fast
    editing.

commit 7d36a947cb74c4a452391d847020a6128563c159
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 28 10:45:28 2014 +0200

    fish: edit: return 1 for unchanged file
    
    Change the return value of edit_file_editor to 1, in case the editor did
    not change the (temporary) file.

commit a3451f52d6549e20207323d9f2a85c206fb736fd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 28 10:44:55 2014 +0200

    fish: edit: bring backup extension to file editing w/ editor
    
    Bring the backup extension feature from the perl-like file mode
    implementation, although currently not making use of it.

commit e3ec36b78c53d44c3e832b9ab18a203855d2620c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 28 10:29:55 2014 +0200

    fish: edit: improve the editor execution
    
    Dynamically allocate the buffer for the command, and check also its exit
    status.
    
    Improvements taken from the current implementation in virt-edit.

commit bfa995f8c8a63837ed7c034d2664745e383e6b42
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 28 10:19:09 2014 +0200

    fish: isolate file editing (w/ editor) code in own file
    
    Move the implementation of file editing using editor to an own file, so
    that can be shared by different tools.
    
    Mostly code motion.

commit 79154d815615945b4f572acc044aafa5aee0d243
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 27 16:51:05 2014 +0200

    cat: use the common Windows path handling code

commit fd999792b1368c00a0097502c8467df5e9f2c70a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 27 16:44:27 2014 +0200

    fish, edit: move the exit-on-case-sensitive-error behaviour to virt-edit
    
    Do not unconditionally exit if guestfs_case_sensitive_path, but let
    windows_path still return null. Make virt-edit then check for that, and
    eventually exit on its own.

commit a2b9eedcb7f60167e467d39e0e8ab3c37e936c22
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 27 16:41:35 2014 +0200

    fish, edit: specifies whether mount Windows as readonly

commit 4e64992d459d80be29f42dbdee7a3effbd4c76df
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 27 16:18:47 2014 +0200

    edit: move windows path code to common file
    
    Move the code handling Windows paths from virt-edit to a common file,
    so that can be shared by various tools.
    
    Mostly code motion, with a minimum touch (the additional guestfs_h*
    parameter in mount_drive_letter) to make it build and work.

commit 08f15db81cf02bfad3bab970954cc3b27aa22c88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 29 09:50:40 2014 +0100

    Version 1.27.33.

commit 614f905bbfd4942d5af8bc5d994de07d9a571e78
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 29 09:41:33 2014 +0100

    v2v: Fix real conversions test by setting architecture in libvirt XML.

commit 29e783e243ff5a448a587d47e91da704f8d8e927
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 29 09:09:32 2014 +0100

    Add suppression for memory leak in libvirt testDomainGenerateIfnames.
    
    See: https://bugzilla.redhat.com/show_bug.cgi?id=1135388

commit aac52b39c4c4f0b890c336c78574d1544e44f446
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 28 22:00:33 2014 +0100

    Version 1.27.32.

commit a1f865e77770fe31d17c634ce06377a7efe776de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 28 21:49:48 2014 +0100

    v2v: Fix bugs in conversion when uninstalling VMware drivers.
    
     - Don't uninstall open-vm-tools (the old virt-v2v didn't).
    
     - Do fix the library replacement code so it works the same way as
       old virt-v2v.

commit da3c9880e6fdb609045fd2d6d7057d5b34e9d74b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 26 19:34:37 2014 +0100

    v2v: esx: Add / fix ability to import guests from vCenter Server.
    
    See additional information in the manual page for details.

commit 43a142ef31b6308da576644cf6b5d710a9ffed62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 28 15:05:17 2014 +0100

    v2v: -i libvirt: Allow map_source* functions to map the format as well as the path.
    
    For ESX we need to map the format (which is usually unspecified) to raw.

commit a353d89cd1c3ffb4114984128132285e5791242f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 28 14:59:45 2014 +0100

    v2v: -i libvirt: Add whitespace to make the code clearer.

commit b9b752439bfdff05e2a46cf963d1ebe451ecc4f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 27 20:39:35 2014 +0100

    v2v: Display a %-done progress bar when copying the disk image to the target.
    
    This isn't quite the progress bar we have in mind, but it's sufficient
    for now.
    
    When --quiet is used, the progress bar is not displayed.

commit 3932e35b17277b5730d94f03e79c6db714ee603e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 27 20:16:06 2014 +0100

    sparsify: Remove obsolete comment.
    
    We don't need to use compat=1.1 with modern qemu, and
    lazy_refcounts may be dangerous.

commit e515e9004f94e201c7ee1667bae4035fa89fe591
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 27 20:28:15 2014 +0100

    v2v: Remove lazy_refcounts option.
    
    This seems* to cause disk corruption in the overlay files.  A
    manifestation of this is that the qcow2 header is not written back
    correctly to disk, resulting in the backing file of the overlay
    "disappearing" and hence hardly any data being copied over to the
    target.
    
    * Note this could be for a variety of reasons and doesn't necessarily
    indicate a fault in qemu or qcow2.

commit 0ba2c25c0b7d177ca451b9baf149b86f517b9f8f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 27 14:42:44 2014 +0100

    v2v: -i libvirt/libvirtxml: Check that domain type, name, arch are not missing.
    
    This can lead to incorrect output.

commit aa03c3a1a990b954b6554824dc495f226c58f71b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 27 14:35:08 2014 +0100

    v2v: -o libvirt: Fix <features> XML in output.
    
    It was writing each feature as PCData (ie. text), not as a separate
    element, resulting in corrupt <features> output.

commit 478db6b9f39428a81b46635cd8ab6373b58852e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 27 09:42:50 2014 +0100

    v2v: -i libvirt: Don't access remote -ic URIs during object creation.
    
    Previously if you used `-i libvirt -ic [a remote URI]' then the remote
    URI would be opened during object creation, which occurs during
    command line parsing.  The practical effect was that virt-v2v could
    appear to hang or give an error (eg if the remote URI is inaccessible)
    before printing any log messages.  This could be very confusing for
    the user.
    
    Split out -i libvirtxml into a separate module, containing the libvirt
    XML to source parsing code as a function called
    Input_libvirtxml.parse_libvirt_xml.
    
    Modify -i libvirt so it does all initialization and calls the helper
    function during the #source method, and not at object creation time.

commit fab807a89cedeef015e219efa99e835e2582e22c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 26 22:56:31 2014 +0100

    v2v: utils: Permit more safe/unquoted characters in url_quote function.

commit 9f160d6d7183a72add9f6fd553a33d0fd7ec92b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 26 19:34:22 2014 +0100

    v2v: utils: Don't need to use module name (Common_utils.) here.

commit 7692c29304c308abea71ef532bb2ea69842a29e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 26 22:49:05 2014 +0100

    v2v: Remove bogus %systemroot%\Drivers path.
    
    This was based an incorrect translation of what the old virt-v2v was
    doing.  %systemroot%\Drivers is not expected to exist already, and
    indeed does not exist in a real Windows 7 guest.

commit c2465e69f70090ae9ece52be1adf5cfa558ab32a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 26 17:48:02 2014 +0100

    v2v: Implement binding for `virsh pool-dumpxml'.
    
    Add a mini-binding to libvirt virStoragePoolGetXMLDesc to get the pool
    XML directly using the libvirt API.  Change existing external calls to
    `virsh pool-dumpxml' to use this API instead.

commit ab5e91231ca396622adb92165d798da3a01774c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 26 17:31:08 2014 +0100

    v2v: Work around buggy `virsh dumpxml'.
    
    The `virsh dumpxml' command doesn't work properly when the libvirt
    source requires authentication.  This is because the authentication
    prompts are sent to stdout, but stdout is also the place where we are
    reading the output XML from.
    
    Add a mini-binding to libvirt virDomainGetXMLDesc which avoids this,
    getting the XML directly using the libvirt API.  Change existing
    external calls to `virsh dumpxml' to use this API instead.

commit 4595872084c40959ade277cd2f347c8588d44c01
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 26 17:34:57 2014 +0100

    v2v: -o libvirt: Mistakenly we were calling `virsh dumpxml' instead of `virsh pool-dumpxml'.

commit 6b8ec17a06b0b3474e5c05b528a1af9b6e538cc5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 26 16:12:24 2014 +0200

    daemon: lvm-filter: use augeas for setting the filter
    
    The way to set the filter for lvm devices was to open lvm.conf, look
    for uncommented "filter =" lines and replace the configuration there.
    This had the issue that if there is no uncommented filter line, then the
    filter cannot be changed at all; considering newer lvm2 releases ship a
    sample configuration with no uncommented filter lines, then the old way
    became wrong and not sufficient.
    
    Instead, take a copy of the upstream lvm.aug lens, with a simple change
    to allow parsing also negative values in configuration, and install it
    in the daemon. When asking to change the lvm filter, use augeas making
    sure to use this custom lens for the lvm.conf copy used within the
    appliance.

commit 9e4591a9b210375c24b2770fbb5923a49b2f9dbe
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 26 14:39:28 2014 +0200

    daemon: move AUGEAS_ERROR to the common header
    
    Other than for current aug_* API, it will be useful for further code
    using augeas directly.

commit f5ebfbbfd658f34312892ee220aacaf44b0bf571
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 26 14:31:05 2014 +0200

    daemon: add add_sprintf
    
    Bring the add_sprintf function for stringsbuf from the library.

commit 65a8ed25b010c04e9acc26cd7c9fab23c4b2c77d
Author: Shahar Havivi <shaharh@redhat.com>
Date:   Tue Aug 26 17:19:36 2014 +0300

    v2v: add xmlXPathRegisterNs for libxml2 binding
    
    Signed-off-by: Shahar Havivi <shaharh@redhat.com>

commit a28058f03569ccce413567395e0e16e020a67bf3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 26 16:01:39 2014 +0100

    Enable warnings in C code linked to virt-sparsify and virt-v2v.
    
    The C code didn't have -Werror enabled (when configured) and didn't
    enable the full set of warnings we would want.
    
    However OCaml-C bindings commonly declare functions which are
    called directly from OCaml, eg:
    
      external parse_memory : string -> doc = "v2v_xml_parse_memory"
    
      value v2v_xml_parse_memory (value xmlv)
    
    These do not require prototypes as no other C code will call them, so
    we have to switch off the GCC -Werror=missing-prototypes flag for
    these files.
    
    Also fixes some confusion between _CPPFLAGS and _CFLAGS.

commit 7f66f3ae5390e99897a13d2e75bc45cc963e4eed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 26 15:45:11 2014 +0100

    v2v: -i libvirtxml: Add example libvirt XML.

commit 6d7620b44a4906c221a1224495a9819bd739af16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 26 15:43:52 2014 +0100

    v2v: -o local: Use /var/tmp instead of /tmp for examples.
    
    In case people are suffering from broken tmp-on-tmpfs setups.

commit a2235f0078e2032fe6245912862942221f605d2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 22:13:34 2014 +0100

    v2v: Split Types.overlay into Types.target and Types.overlay structures.
    
    Move the fields from Types.overlay which were related to the target
    file out.  Now Types.overlay is only concerned with the actual qcow2
    overlay files, not with a mixture of both files.
    
    For every guest disk, there is one chain which looks like this:
    
       source_disk         overlay                 target
      +------------+      +----------------+      +---------------+
      | s_qemu_uri |<------ ov_source      |<------ target_overlay|
      | etc        |      | ov_overlay_file|      | target_file   |
      +------------+      | ov_sd          |      | target_format |
                          | ov_virtual_size|      +---------------+
                          +----------------+
    
       describes source    describes temp.         describes target
       disk file           overlay (qcow2)         file
    
    This is just refactoring.

commit fd607c29a885d285a5fe66a22a069a37d9fbfbda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 21:42:15 2014 +0100

    v2v: types.mli: Fix typo in comment.

commit 63572fb21df03579e733aabe9d61c0c3c1d34210
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 21:36:28 2014 +0100

    v2v: Change "Trimming the filesystems" message to something less scary.
    
    Avoid copying unused and blank areas.  Avoid alarm and support calls too.

commit 592ee301e9f4a7e9e132d44086e1a3f9b0bd93df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 21:31:05 2014 +0100

    v2v: Simplify conversion dispatch code.
    
    Refactoring, no functional change.

commit 8f56a792f751b86b9d24288cc8a17fa113af9bda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 20:35:55 2014 +0100

    v2v: Update TODO.

commit 3fec66c29ad00d946ad042112c95100849d5805e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 20:29:31 2014 +0100

    v2v: Inline the initialize_target function.
    
    This function had got smaller and smaller until now we might as well
    just inline it.  Having it after the main function just obscured the
    order that the code runs.
    
    No functional change, just refactoring.

commit 1843321816c4b022ea98cbc1e3fd53a84f823999
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 20:27:44 2014 +0100

    v2v: Remove the Types.overlay ov_source_format field.
    
    Not used by anything and unlikely to be useful.

commit 2c6c8282042eb1d35bbc5c8b4b05f0633dca7897
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 20:22:19 2014 +0100

    v2v: Remove Types.overlay ov_preallocation field.
    
    The ov_preallocation field was essentially an implementation detail of
    the V2v module.  There was no need to carry it around in the overlay
    struct, and nothing else used it.  This also allows us to simplify
    other code.

commit eb2350b9f75fc5c526429202dd7207b27b85c95f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 20:15:53 2014 +0100

    v2v: Add comments to DOM module.

commit 8bab1eaff46151596109e9ce73b036f2e009904a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 20:08:56 2014 +0100

    v2v: -o rhev: Move inspection functions.
    
    This is pure refactoring, no functional change.

commit dfc8b1018f451894de8ad60e4c4a1b8fe34e9821
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 25 15:45:31 2014 +0100

    v2v: Trivial fix to documentation in internal interface to libxml2.

commit d6c12e44aaf22fc37f004d9625bbaf3fc551069c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 24 21:21:10 2014 +0100

    Version 1.27.31.

commit af3ebbb79d93ee415f4bedc808125494abd066f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 22 09:47:09 2014 +0100

    v2v: int64 -> int fix for previous commit.
    
    This fixes commit 318a1b17a6be2e20245ca05a68448b5dcd048884
    (thanks Pino Toscano).

commit 8c38a3a1f96accaf2dc33022812c2d218d7b0144
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 23:38:34 2014 +0100

    v2v: -i libvirt: Select sensible defaults if <memory> or <vcpu> is missing from input XML.
    
    If the <memory> or <vcpu> elements was missing from the source
    metadata then we would choose useless defaults, resulting in (for
    example) <vcpu>0</vcpu> being written to the output.
    
    Choose sensible defaults for these integer values.

commit 651c5570443066add00e262be9c156899f8dc6a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 23:25:44 2014 +0100

    v2v: Store original vnet, and add comment to output metadata when mapping it.
    
    When we map the network or bridge names (using --network or --bridge
    command line options), this commit keeps the original name and adds it
    as a comment to the output metadata.
    
    The comment will look something like this:
    
        <interface type='bridge'>
          <!-- bridge mapped from "VM Network" to "bridge1" -->
          <source bridge='bridge1'/>
          <model type='rtl8139'/>
        </interface>

commit 54f3ffd3d461f9876e2b8de333ac7d91e73c3a06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 23:24:39 2014 +0100

    v2v: DOM: Add XML comments (<!-- .. -->) to the model.
    
    This allows us to insert comments into the output libvirt XML or OVF.

commit d98e3baadcce6ca60cca9539923e29925d754bd9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 21:47:22 2014 +0100

    v2v: Add a test of --network and --bridge command line options.
    
    This enhances commit aaf84abca9e19e6a358516b60cc8a49d0905aef5.

commit a5bebddaf24c7b3b59599c1b3905681d3ca63b2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 22:36:44 2014 +0100

    v2v: -o rhev: Improve the error message when you pass a bogus -os parameter.

commit 80d656903be9dd7c561079dcccfca67932cdfcf9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 22:23:55 2014 +0100

    v2v: -o libvirt: <source file=...> must always be an absolute path.

commit 82b5519f990af7a77b2ca980f9997e06db90f229
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 22:22:04 2014 +0100

    v2v: DOM: Produce pretty-printed XML.

commit a81711f4ec2620ba8388e6f978da8f68a74a8406
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 22:21:54 2014 +0100

    mllib: Export output_spaces function.
    
    This was already in Common_utils, but was only used internally
    not exported.

commit 4941d313c2999e2d8aa682acf6316c185321988d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 21:46:45 2014 +0100

    v2v: Tests can use guests.xml not guests-all-good.xml.

commit 74fb646332cfa5ba4fa1c898a71a3f73c4230294
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 21:25:33 2014 +0100

    v2v: Update documentation for input & output classes.

commit e9c4cb45daa06b124f48575c9d46e754d3a7f8e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 19:38:27 2014 +0100

    Version 1.27.30.

commit cfe10763e7941f7f5becf93e61c91010b3b759f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 19:28:41 2014 +0100

    v2v: Remove build path which inadvertently appeared in test data.

commit 200d4dfd349c4a731804fa465a68e7695404e218
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 17:08:35 2014 +0100

    Version 1.27.29.

commit 1e3d3d5639e1033c62335874cd90ebcf191d1901
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 17:06:53 2014 +0100

    v2v: Fix check-valgrind on --print-source option.
    
    This updates commit 3a6dc32342cd6a545d66e9b773bab8450f533fa5.

commit d28aa045924694d77d251ee51b0fbf7ccd5c87fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 15:00:53 2014 +0100

    v2v: Remove ov_vol_uuid hack.
    
    Now that we're using classes for outputs, we can hide the RHEV volume
    UUIDs in the output_rhev class.

commit dd198766923869601ec1294d28da8e82cd8bcaeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 14:49:43 2014 +0100

    v2v: Replace strings with variants for extra type safety.
    
    No functional change.

commit 41d19e24bb03f3cafdd9be63c64524133db8f243
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 13:35:59 2014 +0100

    v2v: Pass verbose flag into every input and output subclass.

commit ab9873c9a15b553e30663c742ec0691d4bb14b77
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 13:27:09 2014 +0100

    v2v: Print log message when opening the source.

commit 0d3b688b562bc11ade80f451673046e5e1f3dec4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 12:25:43 2014 +0100

    v2v: Change input and output variants into classes.
    
    Previously Types.input and Types.output were variants, resulting in
    the main v2v.ml code having to have knowledge of all the input and
    output types.  So you would end up with code in v2v.ml like:
    
      match output with
      | OutputLibvirt -> (* call some libvirt-specific code *)
      | OutputRHEV -> (* call some RHEV-specific code *)
    
    This changes these types to be abstract superclasses, with specific
    implementations provided by (and hidden inside) each input/output
    module.  The above code in v2v.ml now becomes:
    
      output#call ... (* no backend-specific knowledge needed *)
    
    Although this commit is very large, it is just refactoring.  There is
    no functional change in the code.

commit ae2fae38e9c7ce9d8fced4c2ddaec0ddac05395e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 21 13:20:25 2014 +0200

    appliance: add glibc-locale on OpenSUSE
    
    Provides the gconv modules, needed for iconv to work.

commit adb991c2fa7901da497833349ed97e3c3924747b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 11:02:37 2014 +0100

    v2v: Reorder sections in the manual more logically.

commit e2561460f98699ab0f6be09545efdec90d75302e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 10:21:19 2014 +0100

    v2v: Add --print-source option.

commit 51dedb324bc49975d9d423025715a565603af7a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 10:07:46 2014 +0100

    v2v: Add --network and --bridge options to perform network name mapping.

commit 833ffb865d2cb644e14f77033d6f6a62108e9d0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 21 09:12:04 2014 +0100

    v2v: Let source.s_name be the renamed guest name (in case we use -on option).
    
    The original guest name is saved in s_orig_name, although I checked
    all uses of s_name and nothing needs it at the moment.

commit 1c1a1cd295424348222c19c93802ec7524fe369c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 20 11:44:49 2014 +0100

    v2v: Update TODO.

commit 1d0d319d616452083d8f1366b77cf6a907645abb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 20 21:16:57 2014 +0100

    v2v: Add support for remote ESX connections.
    
    This allows `-ic esx://...' to work because we map the strange source
    URI used by ESX to a remote HTTPS connection.
    
    Example disk section that this handles:
    
        <disk type='file' device='disk'>
          <source file='[datastore1] Windows/Windows.vmdk'/>
          <target dev='sda' bus='scsi'/>
          <address type='drive' controller='0' bus='0' target='0' unit='0'/>
        </disk>

commit 651d3013512b2c31fc519b05540f294492376674
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 20 20:00:59 2014 +0100

    v2v: VMware returns MAC all zeroes.  Map this to None.

commit 088de7a23adcd0be0d3e7cdcf41b75d50dec1fbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 20 12:21:05 2014 +0100

    v2v: source_libvirt: Replace create_xml ?dir parameter hack.
    
    Instead of the ?dir parameter which was essentially a hack, allow
    callers of create_xml to provide functions that map
    <source file="..."> or <source dev="..."> to qemu URIs.
    
    The default for these mappings is the identity function.
    
    For -i libvirtxml we replace the old absolute_path_of_disk function
    with a source file mapping function which does the same thing.
    
    There is no functional change in this patch.

commit 3caf9a1b307f9095b0c3a08bf42af4cb85d52cd1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 20 12:14:26 2014 +0100

    v2v: Don't attempt to make block device paths absolute.
    
    <source dev=...> in the libvirt XML should always refer to a block
    device, eg. /dev/sda1.  Don't attempt to make these paths absolute
    (they should already be absolute paths, and if they are not it's wrong
    to try to make them).

commit 12e0a2a5b997184265017999bb1ba8bc6f699932
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 20 12:04:32 2014 +0100

    v2v: Add binding for libxml2 xmlParseURI.
    
    There is already a partial binding for this in fish/uri.c &
    mllib/uri-c.c.  However it is specialized to parsing the -a parameter
    on the command line and we want access to the full underlying
    functionality of xmlParseURI.

commit c5e036e73610858636f7dd4ebacd09fe2fa1ba00
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 20 18:56:39 2014 +0200

    appliance: add mkisofs on OpenSUSE
    
    Needed for isoinfo.

commit df959abd225308b6d3b0d4b70f5cc3ce9fda2874
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 20 16:57:06 2014 +0200

    appliance: add cdrkit-isotools and mtools for Mageia
    
    - cdrkit-isotools provides isoinfo, used by the daemon
    - mtools is used by syslinux without being a dependency

commit ecfa7e678435582f730e6df011cbc6cfd0a33961
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 19 22:24:45 2014 +0100

    v2v: Add some examples to the manual page.

commit f74082f8e9ce1ba4f44b49d796b9896eba7f7aef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 19 19:46:24 2014 +0100

    Version 1.27.28.

commit 65c72c2288ff1009020c2607e3368913e035513c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 19 13:34:55 2014 +0100

    v2v: Add display, removable disks, and network interfaces.
    
    These are now collected from the source metadata and (where
    possible) passed through to the destination.
    
    For reference, see the metadata structure of the old virt-v2v (roughly
    equivalent to Types.source in the new code):
    
    https://git.fedorahosted.org/cgit/virt-v2v.git/tree/metadata-format.txt
    
    As you can see the new code now covers all the metadata features of
    the old code.

commit 9f215755249b588b30404d603b443866da76f4ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 19 13:34:35 2014 +0100

    v2v: Update TODO file.

commit 8aa6f26a3dbd1265c6371d8223f320e04fe6a0df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 19 12:16:04 2014 +0100

    daemon: Fix echo-daemon so it doesn't fail on empty array input.

commit 9c6f035f3c50a04d0daead363cee911a9d28d2b8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 19 15:48:05 2014 +0200

    appliance: initial packagelist for OpenSUSE
    
    Mostly complete and making most of the features work.
    
    The notable lack is ntfsprogs and ntfs-3g, which due to the way
    mount.ntfs is handled (i.e. using alternatives) do not work properly.

commit 5125727ce641a8d5ee8c9f2223c885f065171e5c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 19 14:25:49 2014 +0200

    tests: make the scratch disk used for scratch much larger
    
    50M can be not enough when uploading various copies of unstripped
    static binaries from the system, which can fill up such a small disk.

commit 96a0ce707fe2f4ba25d1028d3089010f3ecd3d91
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 19 14:22:07 2014 +0200

    builder: do not use xz --block-size for the test images
    
    Do not use the --block-size parameter of xz when compressing the test
    images, as that option does not exist in xz < 5.1.

commit abcd54370c906db2ad8a3493b77fe2834147b042
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 19 12:11:06 2014 +0100

    drives: Add comments about fragile string handling.
    
    GC FTW.

commit d94ff1025a4b3ecdace8ddcccab94d7fa07c11a3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 18 14:56:08 2014 +0200

    drives: fix deletion of servers on error
    
    Make sure to not skip any of the created server, and to always free
    the "server" array.

commit d7aa96e56efe7f7a11990749bcc475b4daae95f9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 18 11:18:23 2014 +0200

    daemon: zfile: call pclose instead of fclose
    
    fp was opened with popen, so close it properly.

commit ba647b236bd5dd5ee6e637d6dcac818200f45298
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 20:02:50 2014 +0100

    v2v: Update instructions for uploading a volume.
    
    The previous instructions didn't include the need to change
    <disk type='file' ...> to  <disk type='volume' ...>

commit 876378a1b0e114b41bb2bba4cfdf6697909e0d83
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 19:58:10 2014 +0100

    v2v: Add some more man pages that may be relevant to "SEE ALSO" section.

commit be105506adf59d958a58c85b848a002373d4a283
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 19:57:52 2014 +0100

    v2v: Fix formatting of --vmtype option in the man page.

commit 10aefa2f2de44d03187c9a3b864ea725c1ba711f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 19:51:09 2014 +0100

    v2v: Fix typo in manual page.
    
    This fixes commit 7c7caae7c1872c317712c373217362172a46abd6.

commit 7bdcff952889af7f558654a796626a173fe1de45
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 19:50:43 2014 +0100

    v2v: Make -i local be an alias for -i disk.
    
    Analogous to -o local.

commit ef84ca3870d09bf4a9e5dac9eadf7bb1f2d9e85e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 18:07:02 2014 +0100

    v2v: Add new -i disk to allow direct import of disk images with no metadata.
    
    This is simpler to use and more convenient than -i libvirtxml, because
    users don't need to bother with writing libvirt XML.  However it is
    less expressive because many source capabilities such as memory and
    number of vCPUs cannot be specified this way.

commit 56728fa9996d7cffcc0de6226b7a96412326edb6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 18:16:51 2014 +0100

    v2v: Rename -o (target) tests.
    
    No functional change.

commit 351acc529632e43bf0e3da6011b77eaf6807aa02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 16:39:14 2014 +0100

    Version 1.27.27.

commit 223f9121419a011ad907949d6011e8d03d2188f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 16:38:48 2014 +0100

    website: Add virt-p2v(1) and guestfs-p2v-iso(1) to the website.

commit bf121241cc1d8062cf02243d6b137ebc39dfbf04
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 15 12:49:00 2014 +0200

    tests/syslinux: add /usr/lib/syslinux/bios as directory for mbr.bin
    
    On Archlinux that is the location of mbr.bin.

commit ecb6c4254712cae345951cd902919531c20b0291
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 15 12:48:59 2014 +0200

    appliance: add mtools to Archlinux' packagelist
    
    It is an optional dependency but syslinux uses it, so pull it always in
    the appliance.

commit e06751d5680f4f671b7dc93d66bae32a86af4a83
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 14:37:04 2014 +0100

    v2v: Add a test of -o libvirt target.

commit d801aef48fbab0cfe1bae3f9698b4870bb16e5dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 13:19:53 2014 +0100

    v2v: Add -o libvirt target (creates guest directly in libvirt).

commit 3a1e86b8aef4ed616551b81b311f849749a5b359
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 14:35:14 2014 +0100

    v2v: Display message when intializing the target.
    
    As initializing the target (-o ...) is a distinct operation, which can
    fail if the user supplied the wrong command line arguments, make sure
    we display an explicit message before we perform this step.
    
    It prints something like this:
    
      [   5.0] Initializing the target -o libvirt -os default

commit fe95d0472484590f31946aaf5144afbe22045d40
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 10:08:29 2014 +0100

    v2v: Move libvirt XML generation into common module, and use DOM module.
    
    Since `-o local' and `-o libvirt' both need to generate libvirt XML
    they should share the same code to generate it.
    
    Also generate it using the DOM module instead of printing the XML
    directly.  This is cleaner and avoids quoting issues.
    
    No functional change here.

commit c51a041398f1fc299e8f9c9b19e430ddd7634105
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 10:07:27 2014 +0100

    v2v: When outputting XML, write "<element/>" for nodes with no children.

commit bede1b651898ae39ea1c480492a3a07901da3503
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 15 08:51:59 2014 +0100

    v2v: Pass acpi, apic, pae features through to libvirt XML output.
    
    Notes:
    
     - Drop the acpi feature for RHEL 3.  Old virt-v2v says there is
       a problem presenting ACPI to RHEL 3 guests although it is not
       specific about what this is.
    
     - Old virt-v2v does not pass features through to OVF at all.

commit 7a12a024fcfdd2c9077c310f1784115cbd69d29a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 14 17:32:27 2014 +0100

    p2v: Find ACPI, APIC and PAE flags and add them to target libvirt XML.

commit 5cbbbefe9062948ab2c014d84b7fac30c8b7cccf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 14 17:34:39 2014 +0100

    utils: Add new CLEANUP_PCLOSE cleanup.  It calls pclose(3).

commit 737c9b6186b44b56dd1757addcea337f3024aaa9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 14 16:58:22 2014 +0100

    p2v: Rewrite /proc/cmdline reading code to use getline.

commit b3889908c98a8f3edb3abcf901d4ded6dd72a469
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 14 17:35:14 2014 +0100

    v2v: Update TODO.

commit 2ee920e1a98f46608a97ba1da103cd3af2e19234
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 14 19:06:20 2014 +0200

    configure: look for "java-default-runtime" as directory for Java
    
    This seems to be the new way [1] in Archlinux to specify, as symlink,
    the default version of Java.
    
    Thanks to Peter Wu for the notice about it.
    
    [1] https://wiki.archlinux.org/index.php/Java

commit efe2020775f8f669d003a727dcf120259faefe02
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 14 16:46:12 2014 +0200

    configure: add java-8-openjdk and java-7-openjdk as locations for java
    
    This helps some distros (e.g. Archlinux) where openjdk is installed in
    java-MAJOR-openjdk directories, without any "default version" symlink.

commit 9fb2a2fa63d4a298ed6210b62fbad82b720ea48f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 14 15:16:06 2014 +0100

    launch: direct: Only issue Debian /dev/kvm group warning if /dev/kvm wasn't openable (RHBZ#1130189).
    
    This warning was meant for the case where /dev/kvm is inaccessible and
    the user must add themselves to a special group.
    
    However we didn't take into account whether /dev/kvm was openable in
    this test.  If it's openable, no point issuing the warning.
    
    Move the is_openable ("/dev/kvm") test earlier, and don't issue the
    warning if that was successful.

commit 03d7e4cbad9213a6e2b2814979552a1fd63b3c38
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 14 14:00:35 2014 +0200

    appliance: add libc-bin to Debian's packagelist
    
    It provides libc binaries like ldconfig and its configuration.

commit 6d7585605e75d77ce2aca88e2dd418f210cef0b4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 14 13:46:18 2014 +0200

    appliance: update distros in comments
    
    Update the list of recognized names of distributions in the comments.
    
    No functional changes.

commit 1f1f05d387da80e9cbf4b285a66163c7ea1e69c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 14 10:02:33 2014 +0100

    v2v: Skip virt-v2v tests if rhsrvany.exe is not installed.

commit 111e33123bc62de69548acccafb5e23a84c941ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 22:10:22 2014 +0100

    Version 1.27.26.

commit c314d299ecb220e5f154ea5857a85d26eef9c103
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 22:18:44 2014 +0100

    lib: Missing include of <locale.h>.
    
    Required by setlocale.  For some reason you only see the error
    when compiling with -O0.

commit 510b9ab4c59bb90018ea3064ca053501f452a530
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 10:46:27 2014 +0100

    Add a separate TODO file for virt-v2v and virt-p2v.

commit 2aa8b9a9c4dc2ccd310aff1b85a60f52c00623d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 12:17:57 2014 +0100

    v2v: Add tests.
    
    The virt-v2v tests here are not meant to be thorough tests of guest
    conversion.  There is a test suite used to test conversion which is
    kept outside libguestfs because it contains lots of proprietary
    unredistributable guests like Windows.
    
    The tests here instead are testing:
    
    - virt-v2v command line arguments
    - virt-v2v reads and writes files to the correct places
    - valgrind & memory leaks
    - any conversion properties that can be tested using just the
      phony guests (but we don't go out of our way here)
    - that up to date guests don't crash virt-v2v

commit dc7de3dddc6db86b867d25e23c39cec7d738f0ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 16:50:51 2014 +0100

    tests/guests: Add Windows/Drivers directory to phony Windows guest.
    
    Allows virt-v2v to complete.

commit fcab5aaf3f8db2f95a993bc3b61ac0951ed4ec85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 13:07:28 2014 +0100

    tests/guests: Fix RPM database in phony Fedora guest.
    
    Fix the Name and Packages database so it looks enough like a modern
    RPM database to fool inspection.  I'm not sure whether or not the old
    version ever worked, but it doesn't work now.
    
    The format is not documented, but in brief:
    
    The Name database contains (Name, link) pairs.  The link is an
    arbitrary 32 bit integer.
    
    The Packages database contains (link, RPM-blob) pairs.
    
    The RPM-blob is a binary blob formatted like this:
    
     * Number of fields               4 bytes, big endian
     * Size in bytes of the store     4 bytes, big endian
     * Field descriptions:
         list of (RPMTAG, 0, offset in store, 0)
                                      4 * 4 * nr_fields bytes, big endian
     * The store                      binary data containing ASCIIZ strings
    
    For the values of RPMTAG_* that we understand, see src/inspect-apps.c.

commit a4a60e12e98757eb4cfc21d103c7a7d8f26a6d5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 12:37:48 2014 +0100

    v2v: Add fedora to "RHEL family".
    
    The calling code allows Fedora guests to be used when calling
    Convert_linux.  However Convert_linux itself would fail with an
    assertion error when you did this.

commit f50375d1337fe4f630c196590b069f3c21c66706
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 12:33:41 2014 +0100

    tests/guests: Define the disk format of our test guests in the test XML.

commit 25df19950b14c8e311dff2b15badf2ce76ba6a7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 12:34:12 2014 +0100

    v2v: Fix libvirt source to parse the format of a disk properly.
    
    Missing '@' means it wasn't looking for the attribute.

commit 24df43b0006fd7e1d48c7bb4db35eaa24ec43938
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 12 21:53:57 2014 +0100

    v2v: Add --no-copy option.
    
    This option allows callers to generate the metadata without copying
    the disks.

commit c40f9c9be02a6a6e6a55bfe728277b2581301c2d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 12 17:44:51 2014 +0100

    v2v: Nothing uses ov_target_file_tmp, remove this.
    
    Previous virt-v2v would write to a temporary destination file then
    atomically rename everything at the end.
    
    However this appears to be unnecessary since we write the OVF file
    after copying the disks, so (I assume) RHEV-M won't see the disks
    before then.
    
    In any case nothing used ov_target_file_tmp so we can remove this
    feature to simplify the code.

commit 7880666f384b6cf1f75938274b8066168e5edbab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 12 16:35:05 2014 +0100

    v2v: Allow RHEV UUIDs to be specified on the command line.
    
    Currently various UUIDs used by `-o rhev' are generated randomly.
    This means they are different on every run of the program.
    
    Allow some of them to be specified on the command line.  (If not
    specified they are still generated randomly).
    
    This allows RHEV-M to run virt-v2v several times (eg to examine the
    OVF output) while having paths to files and OVF be stable across runs.

commit 543a1b636240f91a1de5d9bdac3fe53ea77a0b38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 12 15:26:38 2014 +0100

    v2v: Combine miscellaneous RHEV command line options into a single structure.
    
    At the moment there is just one "miscellaneous RHEV command line
    option" (--vmtype), but we may add more in future.  Put them in a
    single struct for convenience.
    
    This is just code motion.

commit d5a39821c15491b248f4a7d80581c7c246389b58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 12 15:06:21 2014 +0100

    v2v: -o rhev: Fix error message.

commit 4bf8d665f56472326f58bce730e14cccacba49ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 12 15:04:15 2014 +0100

    v2v: `-o ovirt' is an alias for `-o rhev', document it.

commit bbb571e52b08313cf6735a5b322048221e4357cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 14:38:34 2014 +0100

    v2v: Don't disable trace/debug set by environment variables.
    
    If the environment variables LIBGUESTFS_TRACE=1 or LIBGUESTFS_DEBUG=1
    were set, then the current code would end up disabling trace/debug if
    the command line arguments did not contain -x/-v.
    
    Fix this so the effect of enabling trace/debug is cumulative.

commit 1e58999fa42247355a36dbd1693e8a5887fc8b73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 12 15:00:23 2014 +0100

    p2v: Clean up and fix the code for excluding the root device.

commit 637078b5c55f982dcabd44bff2b71741533e27b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 12 12:40:58 2014 +0100

    p2v: Call the remote libvirt XML file 'guest.xml'.
    
    Previously it was called 'libvirt.conf' which is more than a little
    bit confusing.
    
    This is only an internal name, so there is no visible change in
    functionality.

commit 20233e4c86b7631f5fd50eb9606da59619af912d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 13 16:43:19 2014 +0200

    build: manually drop flex-/bison-generated files from dist
    
    It seems that Automake cannot handle properly the files generated by
    flex and bison, leaving them in the dist tarball.
    
    For now, add a dist-hook to manually prune them from distdir.

commit 48a8ef28d8447d5a3a58b61b22ca9fc89ac2fcb6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Aug 13 15:16:17 2014 +0200

    fish: add test-invalid-params.sh to EXTRA_DIST
    
    Followup of commit 7912759fc331f6e8a0f7c87731f6bfe8c6e96c1f.

commit 3ae47b7ff241a62d5201b0a96fdcbdbf789d235f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 13:50:36 2014 +0100

    builder: Missing include of <locale.h>.
    
    Required by setlocale.  For some reason you only see the error
    when compiling with -O0.

commit cad4bf56d8c29a6acce198553c2b4e30a54c767b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 13 13:07:07 2014 +0100

    lib: Typo in comment.

commit 6a188e33792948fbaf644fe2c19cfb00e5e870b2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Aug 12 10:16:18 2014 +0200

    python: fix possible free on uninit memory with OStringList optargs
    
    When using optional arguments of type OStringList, the code free'ing
    the member in the optargs_s struct corresponding to that optional
    argument would just check for a non-PyNone PyObject for that argument.
    If before that optional argument there are other arguments which can
    cause an earlier error return from that binding function, the free'ing
    code will then act on garbage values.
    
    Enhance the check by also checking whether the optargs struct has the
    bitmask with the element for that argument, meaning that the
    corresponding struct member was initialized.

commit aa21a5ac05a7e5e384f7e51965df39db22ff60d2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Aug 11 15:15:16 2014 +0200

    p2v: check results of strndup and sscanf

commit 27e276bea729e640cb716d7e866e32552b39a12e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 11 14:51:37 2014 +0100

    p2v: Move libutils before libxml2 in the list of libraries (RHBZ#1102447).
    
    The error is:
    
    ../src/.libs/libutils.a(
    libutils_la-cleanup.o): In function `guestfs___cleanup_xmlBufferFree':
    cleanup.c:(.text+0x79): undefined reference to `xmlBufferFree'
    ../src/.libs/libutils.a(libutils_la-cleanup.o): In function
    `guestfs___cleanup_xmlFreeDoc':
    cleanup.c:(.text+0x99): undefined reference to `xmlFreeDoc'
    [etc.]
    
    Thanks: Arnaud Gaboury

commit 8541c9f9620ac27fc714cdf5ede58dee9aeb60a2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 8 17:13:02 2014 +0200

    df: unlock retire_mutex on early exit
    
    If pthread_cond_wait fails and the thread worker ends, make sure to
    unlock retire_mutex, which has been locked for the condition.
    
    The return value of pthread_mutex_unlock is ignored, as there's nothing
    that can be done with it at that point.

commit df86cb56f7be4210f7b3536f4d9bbc16d99f5137
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 8 15:35:02 2014 +0200

    daemon: use CLEANUP_CLOSE

commit 2127de3d79b12288cc699778c03453bfda772a41
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 8 15:34:07 2014 +0200

    daemon: add CLEANUP_CLOSE
    
    Just call close on the specified fd, if valid.

commit 300f3ff37c03d693c60f5a82fcb9518a3eb64449
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 8 14:58:08 2014 +0200

    daemon: blkid: fix memory issues in "no -p/-i" mode
    
    Fix the memory issues in the implementation that uses no -p nor -i:
    - use add_string_nodup to add results from get_blkid_tag (which returns
      new strings), so those strings are not leaked
    - use free_stringslen to clean the hash on error, as in such case the
      stringbuf will not be terminated with a null entry, thus causing
      free_strings to crash

commit 2aa7090c66662033237678aaf6f2dc7c06016c70
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 8 14:56:27 2014 +0200

    tests: c-api: do not crash w/ missing hash entry
    
    If an hash does not have the requested key, just error out cleanly
    instead of crashing when trying to compare a null string.

commit ad3cfe650da6c1758e7fd66632201115bc197f07
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 8 13:49:59 2014 +0200

    daemon: initialize memory when handling DeviceList params
    
    When dealing with DeviceList parameters, the generator produces code
    similar to the following:
    
      CLEANUP_FREE_STRING_LIST char **devices = NULL;
      [...]
      devices = malloc (sizeof (char *) * (args.devices.devices_len+1));
      {
        size_t i;
        for (i = 0; i < args.devices.devices_len; ++i)
          RESOLVE_DEVICE (args.devices.devices_val[i], devices[i],
                          , goto done);
        devices[i] = NULL;
      }
    
    The block hidden within the RESOLVE_DEVICE macro is supposed to
    assign something to devices[i]; on the other hand, the code in
    RESOLVE_DEVICE can cause to just end (with an error) the current RPC,
    which would cause the cleanup of the "devices" array... whose members
    from the i-th to the (args.devices.devices_len-1)-th would be garbage
    pointers, causing random memory to be free'd (and thus crashing the
    daemon).
    
    Avoid the access to garbage memory just by having a cleaned "devices"
    array, so there will be always a NULL element after the initialized
    members.
    
    Add a test for vgcreate which passes a wrong device path causing the
    situation above, to test that vgcreate would fail gracefully.

commit ed995c16845e5a8c453063f4a5f22870a53cd132
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 8 10:23:37 2014 +0200

    rescue: fix sscanf placeholders for --smp and --memsize
    
    Use %d to parse them as int (since the variables for them as int)
    instead of %u, even if they both need to be at least > 0; the library
    will check for the validity of them anyway.

commit 6786bf75de81ecbd1869c5c04e04d74c8e19de9e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Aug 8 10:15:32 2014 +0200

    src: always check value passed to set_memsize
    
    Move the minimum memory check from the environment parsing to
    set_memsize, so the limit is actually enforced also when using the API.
    
    Adapt the rhbz557655.sh test to the invalid memsize values being
    rejected now, and add a new test for checking invalid parameters
    explicitly.

commit 5336e9eb539bb9efbf95080c49b5e415a4006db1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 7 19:26:46 2014 +0200

    lua: always return luaL_error in actions
    
    Even if luaL_error is a "no return" function for the Lua runtime, adopt
    also in action functions the "return" idiom recommeded for it.
    
    This also helps code analyzers in not thinking that "g" might still be
    null after the null check followed by luaL_error.

commit 1a541fdd87953f2ecc748c71ed7557ba5ba2185a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 7 12:25:13 2014 +0100

    aarch64: Add common function for getting the CPU model.
    
    And force a 64 bit CPU model when running on aarch64 with TCG.

commit bf93a955ed3c36789dc3466704a78f54f3b1a76b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Aug 7 10:45:04 2014 +0200

    daemon: add and use a reply_with_unavailable_feature macro
    
    Handy macro to reply the right way for an unavailable feature.
    While generally used so far in generated code, it can shorten that a
    bit, and avoid copy&paste when wanting to do manual feature checking.

commit a2684f5a1b18dacd8557a1326c2e3de3aaf878fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 5 18:06:22 2014 +0100

    Version 1.27.25.

commit b6189a8e18f3a41296e5ae8ec0f9f24fb2e55f42
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 4 17:20:41 2014 +0100

    v2v: Add RHEV target.
    
    Use:
    
      virt-v2v [..] -o rhev -os nfs:/export
    
    or:
    
      virt-v2v [..] -o rhev -os /mountpoint
    
    to write to a RHEV-M / oVirt Export Storage Domain.

commit 9ae2600c9f682244bcd32a45e45b847988395196
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 4 22:20:56 2014 +0100

    v2v: Keep more inspection data in the inspect struct.
    
    Just code motion, no functional change.

commit 34cb73f60b14aeddc12a9e64ee7c02168039c419
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 4 16:24:42 2014 +0100

    v2v: Fix bytecode build.

commit c410229b5167edfb7cec80efd9249a72a4edd6f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 4 14:51:30 2014 +0100

    ./run: chcon the tmp directory in the builddir.
    
    Not just some random tmp directory which happens to be in the
    local directory.

commit 4254ec31fd71caf15d8e74765e2888232160f576
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 25 14:03:54 2014 +0100

    launch: Close file descriptors after fork (RHBZ#1123007).
    
    This refactors existing code to close file descriptors in the recovery
    process, and also adds code to close file descriptors between the
    fork() and exec() of QEMU or User-Mode Linux.
    
    The reason is to avoid leaking main process file descriptors where the
    main process (or other libraries in the main process) are not setting
    O_CLOEXEC at all or not setting it atomically.  Python is a particular
    culprit.
    
    See also this OpenStack Nova bug report:
    https://bugs.launchpad.net/nova/+bug/1313477
    
    Thanks: Qin Zhao for identifying and characterizing the problem in Nova.
    
    This is version 2 of this commit.  This commit is identical to the
    reverted commit 115fcc34325f965ac3723683e4462fc667dcd254 except that
    we don't close stderr.

commit 125b30eccf2aaac9a7c948946ddcd52be250c188
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 27 11:18:55 2014 +0100

    html: Don't build HTMLFILES for disabled features.

commit 38006a6de6e619a106f0598b700a3b31fce8f08f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 29 22:20:37 2014 +0100

    Revert "launch: Close file descriptors after fork (RHBZ#1123007)."
    
    This attempted fix for RHBZ#1123007 causes the qemu command line to be
    lost when verbose mode is enabled.  Since this is essential for
    debugging many problems, I am reverting the patch.
    
    This reverts commit 115fcc34325f965ac3723683e4462fc667dcd254.

commit 4d7a460cdbc367e1d89bbf93ff255ea2a1a20b69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 29 20:27:53 2014 +0100

    tests: qemu-speed-test: Allow test time to be adjusted with -t option.
    
    This is useful when analysing with `perf' since it allows us to
    increase the amount of time in the test versus the amount of time
    spent starting the appliance.

commit fb98bb6dda676d2ed8e9bdc53f143ccb22bfb727
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 29 11:51:13 2014 +0100

    tests: qemu-speed-test: Allow tests to be run selectively.

commit 95a6561377c68a47ebe8607295e7dfe64cea299a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 29 11:50:41 2014 +0100

    tests: qemu-boot: Error if extra command line arguments are given.

commit b0df270851d49e041f1841b2a27e9c16ba55fa7c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 28 19:29:14 2014 +0200

    launch: direct: check for null paths in make_uri
    
    Some protocols may pass a null path to make_uri, so make sure to handle
    that gracefully.

commit 492ae28d74483b038114e042b42781faac772138
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 28 17:27:30 2014 +0200

    make-fs: do not leak the fd from mkstemp

commit 59e9815076d35b92519530ba1c92866e8535c627
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 28 17:24:02 2014 +0200

    make-fs: respect libguestfs' temporary dir
    
    Do not hardcode /tmp.

commit 032d16b41e3bd43362bd63525bbf31fd3978a02b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 26 21:37:59 2014 +0100

    Version 1.27.24.

commit 2aa74fe47a85c1d6906519788908d8ec03d3623b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 26 21:27:16 2014 +0100

    build: Add `maintainer-commit' rule to create a new version commit.

commit 3671a81e89cc31081f714fdb5f1efe75250bcf54
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 25 17:36:17 2014 +0200

    p2v: close the mexp handle if mexp_spawnv fails

commit 0a83813b77b4efabf0bb86d6588d1b2459865b8b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 25 17:36:16 2014 +0200

    make-fs: use CLEANUP_FCLOSE

commit 832e65d978c9eaca7531a04a48ead591e5b9cbf2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 25 17:36:15 2014 +0200

    cleanups: add CLEANUP_FCLOSE (fclose on FILE*)

commit 282a6f43d2e024493aee8f4e080a64ec3613ddb0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jul 25 17:36:14 2014 +0200

    p2v: properly call va_end

commit 65258919657007408f8d833fe71c252b593544bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 25 17:12:19 2014 +0100

    Add qemu-speed-test program to test speed of qemu.
    
    Currently it tests the upload and download speed of virtio-serial and
    the read and write speed of the block device (eg. virtio-scsi).

commit c25c5caa89a67d74bb10b06409379a1ce6e5dbfe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 25 14:03:54 2014 +0100

    launch: Close file descriptors after fork (RHBZ#1123007).
    
    This refactors existing code to close file descriptors in the recovery
    process, and also adds code to close file descriptors between the
    fork() and exec() of QEMU or User-Mode Linux.
    
    The reason is to avoid leaking main process file descriptors where the
    main process (or other libraries in the main process) are not setting
    O_CLOEXEC at all or not setting it atomically.  Python is a particular
    culprit.
    
    See also this OpenStack Nova bug report:
    https://bugs.launchpad.net/nova/+bug/1313477
    
    Thanks: Qin Zhao for identifying and characterizing the problem in Nova.

commit 2170fc04193d1621c87c3e48a104245ba1e855c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 25 16:06:46 2014 +0100

    tests: builder: Allow test to be skipped.

commit f2900d024e84044c21e185c716095d7dc306ca43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 25 16:04:18 2014 +0100

    virt-resize: Unmount filesystem after testing size.
    
    We were mounting different filesystems on top of each other.  In fact
    this is not a problem, but it's nicer to unmount each filesystem
    properly after examining it.

commit d718fe8b63aa00634d79ddee237e50911ef3a486
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 25 16:03:09 2014 +0100

    daemon: Add extra debugging to umount_all command.
    
    No functional change, just prints some more debug messages.

commit 5c80ada7278518d1726713476492e406f7a71d29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 25 15:26:26 2014 +0100

    aarch64: Use a smaller test file for test-cancellation-upload-daemoncancels.sh
    
    This test worked by uploading a 100MB file into a 100MB container and
    seeing the inevitable crash.  Unfortunately virtio-mmio (used on
    aarch64) is quite slow.  Since this test is not testing the speed of
    virtio-mmio, use a smaller test file so the test finishes in a
    reasonable time.

commit 29c00c7c54beb22ced009ed936db0d8fc40cacf9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 25 14:42:38 2014 +0100

    tests: hotplug: Allow tests to be skipped.
    
    They don't work on aarch64.

commit c7c33dcfed7b0d3470ec6160213e20b62e2cc226
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 25 10:04:44 2014 +0100

    tests: lvm: Allow test to be skipped.

commit 5f060fd46fca90daf3d10818f4767313fceeab9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 23 17:40:16 2014 +0100

    Version 1.27.23.

commit 762a7f16496a31613742a94e6bb5cc6b69fa2e19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 23 13:08:49 2014 +0100

    aarch64: Add comment about efi-rtc=noprobe option.
    
    This updates commit 5326689d50cc82e9108c83511e666be6d081d9dd.

commit bc1cc4ee330113c8246e9fc79884e21c712fcb2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 8 16:33:45 2014 +0100

    v2v: Add support for converting Windows guests.
    
    This completes commit f296d34f3b30c82309b22b54bf5a2c133992bd93.

commit 2c1a1978618fe3629291e588ad9a0036c426277a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 8 21:31:06 2014 +0100

    customize: Add the ability to use --firstboot for Windows guests.
    
    This allows you to add potentially multiple --firstboot
    scripts to a Windows guest.

commit 29026a246ffc57904b1d45b131897b2b542af2f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 8 21:41:58 2014 +0100

    mllib: Add regedit mini-library.
    
    This library replaces Win::Hivex::Regedit, or at least enough for us
    to be able to make the simple Registry modifications needed for
    installing firstboot scripts.

commit f4b27f3c5906935bee05d9021eed962eab766211
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 8 20:57:59 2014 +0100

    customize: firstboot: Move Linux-specific functions into Linux submodule.
    
    No functional change.

commit 2323406643f279cf1ecc7a3c3190817b7581fb34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 23 15:01:44 2014 +0100

    sparsify: Relax requirement that output device cannot be block device (RHBZ#1122557).
    
    To fix RHBZ#1056290, I prevented virt-sparsify being used if the
    output device is a block device.
    
    I have now retested this scenario and it does work (in both copying
    and in-place mode), and does not delete the output device, and
    therefore we can relax this restriction so only char devices are
    banned.
    
    This is useful for oVirt which uses a qcow2 formatted block device to
    store virtual machines.

commit 0dd4415490b71b0f2e37ffbfe3b906858035ba2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 22 19:10:04 2014 +0100

    Update translations from Transifex.

commit 7826a3e39ca78a0f63af366e5bef007241b15523
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 21 14:36:43 2014 +0100

    Version 1.27.22.

commit e9a756972e2398e427c9175029552f5e774d100b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 18 15:05:55 2014 +0000

    aarch64: efi-rtc=noprobe is needed to fix boot of upstream kernel on VM.

commit dec50990a7d57e2242ceb4e372d3029fad8f4c4a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jul 17 16:24:52 2014 +0200

    configure: look for "default-java" as directory for Java
    
    In Debian-based systems, /usr/lib/jvm/default-java is a symlink
    pointing to the location of the default Java version.

commit 6d4cde92a3f7ba5098015991832e56d2766a43ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 17 20:32:24 2014 +0000

    tests: Add test program to run qemu/appliance repeatedly.
    
    For example:
    
      $ time ./run ./tests/qemu/qemu-boot -n 100
      real 1m19.794s
      user 0m10.001s
      sys  0m5.928s
    
    will run 100 appliance start/stops, from multiple threads.

commit 22b3b0f87f8e5c2ee8723c5c41224939b2ea6072
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 17 11:38:20 2014 +0100

    valgrind: Tweak the suppression matching OCaml leak in caml_search_in_path.
    
    In OCaml 4.02 this still leaks, but the stack trace is slightly
    different so the old suppression didn't match it.

commit f8ae305fab4e60df207aecc64f2e227079fae3c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 17 09:58:07 2014 +0100

    tests: Add a protocol regression test for long error messages.

commit 0e9ac840b5df261557644a53bb220fa9224fb070
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 17 09:57:42 2014 +0100

    daemon: Truncate long error messages so XDR encoding doesn't fail.

commit 0e22bb57f8edfcebb0e0ad001f39064ab16b3216
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 16 22:05:39 2014 +0100

    Warn about large stack frames, and fix a few places with excessive stack usage.

commit 7add6ebae032ab150bffd35fbc39c40d1ef54a96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 17 09:43:45 2014 +0100

    tests: Remove tests/protocol/test-qemudie-launchfail.sh
    
    This test has not been run since 2012 as it depends on specifics of
    how supermin and new-style appliances work (see
    commit 2d89aef897e633bffba1dffd600b122eacd88fc8).
    
    This commit removes the test entirely.

commit a414a26489dbaa337c5b8f2dd7c116083933a3c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 16 12:39:26 2014 +0000

    tests: qemu: Fix TCG test.
    
    $guestfish was not defined, so the UML test/skip did not do anything.

commit a4cfa15898d029d6e614e4c9bd682262c51e04c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 15 18:22:05 2014 +0000

    tests: regressions: Allow non-exec stack test to be skipped.
    
    Currently fails on aarch64 because of a buggy GCC.

commit 38dc77be4e54e49093f3780fd8e2b76a454a0dde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 15 17:56:57 2014 +0000

    tests: 9p: aarch64 also uses virtio-mmio (instead of virtio-pci).

commit f13001d6bdeb4c3d105b3af4f7e7efbf91b5467e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 15 17:55:18 2014 +0000

    tests: regressions: Skip test on aarch64 which also does not support IDE.

commit e7d38ada32d7238e15b0b5c167a37a85f66aeb27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 15 16:41:18 2014 +0000

    ocaml: Ignore Warning 3: deprecated feature: String.* functions.
    
    In OCaml 4.02, the 'string' type can be made immutable.  All String.*
    functions that are concerned with creating or mutating strings now
    give a warning like this:
    
      Warning 3: deprecated feature: String.unsafe_set
    
    Disable this warning since we don't want to turn on immutable strings
    yet.

commit 486b1db06a9b7f6cbc0c1db431c716cad76f0d41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 12 14:50:15 2014 +0000

    aarch64: Add some earlyprintk debugging.

commit 25dba50cc60d7cc426d127a4ff0c638bc707d379
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 12 14:49:23 2014 +0000

    aarch64: Use console=ttyAMA0 instead of console=ttyS0.
    
    This still only prints early console messages.  Output stops
    after:
    
      bootconsole [earlycon0] disabled
    
    but I have not found any way to get later kernel messages.

commit e3dad872ed94dd2dbe0c9c06db02ce14dc95cbdd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 10 17:32:39 2014 +0100

    sysprep: Standard exception handling, taken from virt-builder & virt-v2v.

commit 841fb4c1243189fcf63efb46c0d9d85ed5a4a0ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 8 20:51:22 2014 +0100

    customize: Use Common_utils.error function instead of failwith.
    
    This is just code refactoring.

commit dea4f20320ebf4c08e5eb663ea60746bb955bf7d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 8 20:52:17 2014 +0100

    customize: Update copyright messages.
    
    No functional change.

commit 7532317d7b7f230e91435d6b86234849bef2aa73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 8 23:01:05 2014 +0100

    docs: Remove useless "SHELL QUOTING" section from manual pages.

commit fa53094476faf70da93427ad19e05f0607153edb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 11 10:21:39 2014 +0100

    sparsify: Add --tmp prebuilt:file option.
    
    This option allows oVirt to pass a prebuilt qcow2 file to use as the
    temporary overlay.  The file must be qcow2, and must have indisk as a
    backing file - the code does minimal checks to ensure this is correct.
    
    Example usage:
    
      qemu-img create -f qcow2 -b indisk overlay.qcow2
      virt-sparsify indisk --tmp prebuilt:overlay.qcow2 outdisk
    
    Note this only applies in copying mode.

commit cf9adcf42410076c8b7dd9e10de6a669f269375a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jul 15 11:06:32 2014 +0200

    appliance: init: run ldconfig
    
    Run ldconfig early in the init script, so libraries outside standard
    library paths but with a proper ld.so configuration file pointing at
    them can be found.

commit 008c21fe23e291fc9f1b4ccd5bd764d435fe1798
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 11 10:38:53 2014 +0100

    RHEL 6: p2v: Add fix for older PCRE.
    
    RHEL 6 pcre did not define PCRE_PARTIAL_SOFT.  However PCRE_PARTIAL is
    a synonym so use that.

commit 4c1a047216943676e8601f232badbcab9cd5569d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 8 13:55:31 2014 +0100

    Version 1.27.21.

commit 2c400bb75bb65bcdcf54e7ad98a286a2c8273d1e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 30 18:00:01 2014 +0100

    v2v: Add partial support for converting Windows guests.
    
    This is not yet complete.

commit ce698120aa4fb605d64473043e1333ee2acb1071
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 8 09:02:46 2014 +0100

    builder: CentOS 7.0

commit cb57172baa1be725adac619a7de4ee750a8910fe
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 7 19:33:44 2014 +0200

    Use Mkdtemp.temp_dir instead of Mkdtemp.mkdtemp

commit de996c2889cfed45030994a37879ddcc6635b6fd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 7 19:30:29 2014 +0200

    mllib: introduce Mkdtemp.temp_dir
    
    Add a simple function to ease the usage of Mkdtemp.mkdtemp.

commit 48f66fa820a4005a3a5631fd85c0b6c3d7be5069
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jul 7 11:40:19 2014 +0200

    inspect: ignore /etc/fstab with no entries (RHBZ#1113156).
    
    Just like no /etc/fstab is not an error, having one with no entries
    shouldn't be an issue either.
    
    With systemd, this could be a valid setup, with mount points set its own
    way.

commit b842f7b2476bba432d39605ee22f90a20c77149d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 4 15:48:36 2014 +0100

    valgrind: Add suppress for libvirt memory leak in virFileFindResourceFull.
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1116427

commit 30521e5a1ee2b4db73919b2e51937f829070fdfe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 3 11:48:49 2014 +0100

    launch: direct: Use -cpu host when using KVM on x86.
    
    This is the same as what the libvirt backend does.

commit 9fb4a5c04d42f5c4ac78b16fc057724de878c4df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 2 23:09:22 2014 +0100

    mllib: Remove trailing whitespace.
    
    This fixes commit b24b0b17a8ab5854c020cb1172597d805b911c73.

commit a5328fecac3eb68b582ea7caea5cd34b9829ac82
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 2 18:18:39 2014 +0100

    tests: qemu: Test force_tcg setting is effective.

commit ad6e3d9b0efca28fcdedd0f26a54631d3ecd06b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 2 16:24:59 2014 +0100

    log: Pass correct parameter to localtime_r on 32 bit platforms.
    
    We were passing an int64_t which happens to be the same as time_t, but
    only on 64 bit.  This didn't work on 32 bit (or rather, it works on
    little endian, but only by accident).
    
    This fixes commit fb546eaee064b14ad192a4f0390325ba1b4c766a.

commit 1d68a444530a8cf7e042759dbd66da658447fe32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 2 16:17:05 2014 +0100

    journal: Fix binding of sd_journal_get_realtime_usec on 32 bit machines.
    
    sd_journal_get_realtime_usec is defined as:
    
        int sd_journal_get_realtime_usec(sd_journal* j, uint64_t* usec);
    
    Unfortunately we passed size_t* as the second argument.  This happened
    to work on 64 bit machines because size_t is 64 bit there, but failed
    on 32 bit machines, where we didn't pass a sufficiently large result
    buffer.
    
    This fixes commit 2d996df66c8d67e11a91a89c074c91a233356494.

commit 0be91588dd906b013834d136538d42706c13b9d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 2 14:24:14 2014 +0100

    excludefiles: Exclude various common log files when building the appliance.
    
    These log files can get pretty big, and that causes problems
    like this one:
    
    http://linuxforum.ru/viewtopic.php?id=35381
    
    and this one:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1099172
    
    In both cases the problem was /var/log/lastlog which is apparently a
    large sparse file.  Supermin cannot cope with sparseness, so it copies
    the whole file non-sparse.  But since this could affect other log
    files this commit covers various common log file names and patterns.
    
    Thanks: semperN

commit 73b99fcf99109f1aa2900d334f660da906e85937
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 2 13:54:16 2014 +0100

    Version 1.27.20.

commit 752cc6a3a25e628e3704d153ea6d9241faba89d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 2 13:22:18 2014 +0100

    Update gnulib to latest version.

commit 1da80c3cb619acc70161f9f30ad3cd1a679e335d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 1 12:01:28 2014 +0100

    v2v: Change fstrim message to warning.
    
    This also ensures it is flushed and translated.

commit 38dff7e160275630cf4222fd7fde6fa06671acd0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 30 16:24:03 2014 +0100

    v2v: Remap block device names in grub & /etc/fstab.
    
    eg. Change /dev/hda to /dev/vda

commit ec78bf881e0c6d3c8c2a571657d34afef8e8c8c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 30 14:14:08 2014 +0100

    v2v: Kill kudzu dead.

commit cf928d8fec1d5a40a46da0cba47cddfe54caacf2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 30 14:13:32 2014 +0100

    v2v: When converting Linux guests, rebuild the initrd.
    
    It probably needs to be rebuilt to add virtio drivers.

commit b5eab9b9977d36841e9ca779e5520f1ce3117bd6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 30 14:12:26 2014 +0100

    v2v: When inspecting Linux guests, collect kernel version & location of initrd file too.

commit 7056b5da9b0e65f90d89b8f8c521c751512e2a2d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 30 14:08:43 2014 +0100

    v2v: Change source disk into a struct.
    
    Simple code refactoring, allowing us to collect the target/@dev
    attribute in this (now) structure.

commit 4b4eb54726495934df6fe7e3dcaf27d217b6e52f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 1 16:12:32 2014 +0100

    generator: Sort the structs.
    
    Sort the structs when generating code.  Since the structs are
    logically indepedent of each other, this should have no effect except
    to make generated files list the structs in a different order.
    
    However this also fixes the following build problem:
    
      File "convert_linux.ml", line 322, characters 43-50:
      Error: This expression has type G.stat = Guestfs.stat
        but an expression was expected of type G.dirent = Guestfs.dirent
    
    It turns out the OCaml bindings don't like the fact that we have
    two structs with a common field name (dirent.ino and stat.ino).
    
    In OCaml < 4.01, this means that any attempt to reference stat.ino
    would fail because dirent.ino appears second in the file, overriding
    stat.ino.
    
    Sorting the structs has the side effect of making stat.ino appear
    second, thus resolving the build failure above.
    
    In OCaml >= 4.01 the compiler now uses some disambiguation rules based
    on the known types to resolve this problem, so accessing either field
    would work no matter what order they are listed in.
    
    See:
    
    http://ocaml.org/releases/4.01.0.html
    http://www.lexifi.com/blog/type-based-selection-label-and-constructors
    http://www.lexifi.com/blog/ocaml-extensions-lexifi-overidding-record-labels-and-constructors

commit 3c80586afc6ba372d97583050ba16d2f23919147
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 15:17:02 2014 +0100

    v2v: Modify conversion step to first do proper inspection and data
    gathering about the guest.

commit cf6531fb378b6e4cb51fd57b5be5b8774cdcf6d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 24 16:49:28 2014 +0100

    Use -v and -x flags consistently across OCaml virt-* tools.
    
    virt-customize:
    virt-sparsify:
    virt-sysprep:
    virt-v2v:
      - These tools consistently used -v to mean verbose/debugging
        and -x to mean enable libguestfs tracing.
    
    virt-builder:
    virt-resize:
      - These two tools did not recognize -x at all, and used -v
        to enable libguestfs tracing and general debugging.
      - This commit changes these two tools to consume -v/-x
        consistently with the other tools.
    
    Unfortunately this has a cascade of effects through the code.

commit 66d38ae9aa83c362a57d4f2318b803c636a5ab3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 24 16:18:36 2014 +0100

    mllib: Rewrite text wrapping function so it can handle newlines within the text.

commit c2d799f00c3d7dc5f6f47b4e9eaed255a6052eaf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 24 12:24:04 2014 +0100

    virt-cat, virt-ls, virt-edit: Fix typo in documentation.
    
    This fixes the following:
     commit aad3c467fb47d3aa0720624c20561cd8eb34072b
     commit de5e7331afbb83ffac509e899851e791191922b3
     commit 86706907af1adea96820ec2c5aa4222fcc4065b0

commit 62e3ded24fd956e75bf3f9f20faae4af516e3af1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 24 08:28:28 2014 +0100

    Version 1.27.19.

commit 5059f55ffdac8045497e1b31c49377d226f57c8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 17:10:50 2014 +0100

    v2v: Refactor common code for listing files in packages.
    
    At some point we should make these into real libguestfs inspection
    APIs.  However they are fairly hard to implement, at least for RPM.

commit 21e036437bab811b3cc3c7a54de23993c0437742
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 15:27:37 2014 +0100

    v2v: Move app2_version comparison functions to utils.
    
    Refactoring.

commit 1c7097957a9a389d393ef1a8203f3dfc1ed7eae5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 15:08:11 2014 +0100

    v2v: Create apps_map when doing inspection step.

commit afa70b1e730c5dd76d1a2a6aa9a30c05d29731c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 15:02:51 2014 +0100

    v2v: Create a shared StringMap module.

commit ba40d2fa2f36f0d685073103ef0c60c4fdcd4c12
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 14:15:28 2014 +0100

    v2v: Rename Convert_linux_enterprise -> Convert_linux.
    
    Just module rename.

commit 674b75280ff6010230884eb33fea84fae1bdf6af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 14:12:42 2014 +0100

    v2v: Rename Convert_linux_common -> Lib_linux.
    
    Just library name refactor.

commit b1a673bb590d26ca0c9a0fb2c1ac17318fabeb3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 11:57:48 2014 +0100

    mllib: Add a common 'warning' utility function.
    
    This commit changes many places in OCaml utilities that print
    warnings to use the warning function instead.

commit 67e6df90dfec5d3ccb5bb00b0836d1ee0cd2caff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 11:49:10 2014 +0100

    mllib: Add an interface for Common_utils library.
    
    It turned out that Common_utils was exporting the 'G' module (an alias
    for Guestfs).  We want any code that uses G as a shortcut to declare:
    
      module G = Guestfs
    
    at the top, since that avoids confusion for newbie (or experienced)
    OCaml programmers.

commit b38515294919af0631491ace19db7e9a4a1fa7fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 20 13:34:54 2014 +0100

    v2v: Warn only if virtio packages are missing from the guest.
    
    In this version of virt-v2v you have to install a virtio
    capable kernel before doing the conversion.

commit ceb3d9ea3ad9c0157f69987817acaa4c0b785f92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 20 13:22:59 2014 +0100

    v2v: In convert function, add a hash of app name -> app structure.
    
    For quicker lookups than searching the linear list.

commit 7745fab18770dda4bb26655a5d0722b2e2e66a92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 19 15:32:29 2014 +0100

    mllib: Move common code for comparing version strings to library.

commit 4cb5b906b6b3dfec7a3705a405dc349ef1c5290d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 19 13:29:15 2014 +0100

    v2v: When parsing input libvirt XML, get correct disk image format.
    
    Old Xen PV guests had:
    
          <driver name='tap' type='aio'/>
    
    The previous xpath expression matched any driver type attribute in
    order to pick up the format.  However we only want to match:
    
          <driver name='qemu' type='raw'/>
    
    so we need to check the name attribute as well.

commit 62d395e950500da64cda8c0bc942d9c8975133f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 19 13:28:22 2014 +0100

    v2v: Avoid segfault if xpath expression doesn't match any nodes.
    
    I'm not sure if this indicates that the xpath expression is wrong, but
    in any case it can be that xpathobj->nodesetval is NULL.  In this
    case, return 0 from xpathobj_nr_nodes instead of segfaulting.

commit 1d0ac0778873f504030689e56b63b7d1fd9bc197
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 19 12:13:43 2014 +0100

    v2v: In -o local mode, name disks <name>-sda instead of disk-sda.
    
    This allows us to use the same shared output directory for multiple
    parallel tests.

commit 6be0f02c70378e74e32396f8900b2101265a40bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 18 14:37:34 2014 +0100

    v2v: Print \n after warnings.
    
    Using eprintf so this is not implicit (unlike 'error' function).

commit 8caf499e637fcf81a2ad326a52ec776a1500d718
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 18 14:18:41 2014 +0100

    v2v: Dump out 'source' structure when debugging.

commit 8ee6faadd0f9c0d8bd83f5bc8f79c5e9fd4f49cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 18 14:18:21 2014 +0100

    v2v: string_of_overlay already has trailing \n, don't need to add one.

commit da619e4bceae7794737d4b7dea09d255d888de05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 18 14:17:48 2014 +0100

    v2v: Print qemu-img source overlay command when using -v.

commit 3a780d86312f94ac1ff23cb6aa0d86128fe08b86
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 18 14:08:14 2014 +0100

    run: Add v2v/ subdirectory to $PATH.

commit c5e8db4f6a8293eedcd3ec60fe4e86c2fce559c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 18 14:06:50 2014 +0100

    v2v: Allow relative paths to appear in -i libvirtxml input.
    
    When writing libvirt XML by hand, or for tests, this is
    immensely useful.

commit 76a59b904787692a4e8be84be6bf715e0e7fe01d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 21:38:33 2014 +0100

    rescue: Use guestfs_add_drive_scratch to implement the --scratch option.

commit cb825fe08dfc6e5f826077a453dd8295b32ab697
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 23 21:26:23 2014 +0100

    options: Compile out part of union which cannot be used when not compiling guestfish.

commit 06e9a5a3786b591ef931bd7d939b1cc685f3d501
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jun 23 15:56:15 2014 +0200

    edit: add -m option
    
    Implement the -m/--mount as available in guestfish to override the
    automatic introspection and specify which partitions to mount instead.

commit d2bf15237b2d86283bfef1006b46197da7595ca5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jun 23 15:54:00 2014 +0200

    cat: add -m option
    
    Implement the -m/--mount as available in guestfish to override the
    automatic introspection and specify which partitions to mount instead.

commit 7b62ee5cd2697bf5d93115f7d2408cd5cdcb5165
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jun 23 12:54:33 2014 +0200

    ls: add -m option
    
    Implement the -m/--mount as available in guestfish to override the
    automatic introspection and specify which partitions to mount instead.

commit bb51b4f9ad73ad3e7427badd3252a91247fab932
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 20 11:06:23 2014 +0100

    builder: Update centos.sh to add CentOS 7 QA.

commit ea32f989af6b336199752b63623fe639572669da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 17 17:40:48 2014 +0100

    website: Install HTML version of the virt-log(1) man page on the website.

commit 1c4932d44824b559d2d6949894cb8682ee7fb7c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 17 17:40:00 2014 +0100

    virt-v2v: Remove text from README, moved into test data repo.
    
    There is (will be) a new repository containing the large/proprietary
    test images.  Move the README related to this to the new repo.

commit 749cefc1bd2fb654de7f80634d2b72327f73b466
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 16 12:49:02 2014 +0100

    Version 1.27.18.

commit e5146a6113fbbc8b3393b8bb22483676a5a424a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 16 12:25:05 2014 +0100

    virt-log: Fix memory leak because of wrong type of CLEANUP_* function.
    
    This fixes commit a3475cf9bbbbd3514b117d5edd75d9c0e239d43a.

commit 4a4d54553c401124c56aa48820323add0fc951ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 16 10:53:59 2014 +0100

    Version 1.27.17.

commit 8e50823ce0c61f6db148c349401de9647983e0a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 16 10:50:58 2014 +0100

    tests/guests: Add new file debian-syslog to EXTRA_DIST.
    
    This fixes commit 026342a7ee20cd31d4de6c212e848791f7099d5e.

commit a2f0e90b2e5202acc47f0ea983a01be0d915f487
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 16 10:14:06 2014 +0100

    virt-log: Add support for displaying the Windows Event Log.
    
    Uses the external program python-evtx, and this only works
    for Windows >= Vista.

commit 49915230bf09f5b46a01e2dbf04e46de52948a2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 16 10:31:29 2014 +0100

    virt-log: do_log_journal: return instead of exiting immediately.
    
    This cleans up commit a3475cf9bbbbd3514b117d5edd75d9c0e239d43a.

commit 624b5e2d6597ee08a1af6f35f69dad540a17db10
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 14 10:50:36 2014 +0100

    New tool: virt-log: It lists log files from within the guest.
    
    See 'TODO' file for suggested future improvements.

commit 181952fea4d6a5e95e189ef36bbe7ea951b3862e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 14 11:52:01 2014 +0100

    tests: guests: Add a text syslog file to the phony Debian guest.

commit 67477944d3e28443eb9e757b4e43d3def711d02a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 14 13:27:02 2014 +0100

    New API: journal_get_realtime_usec
    
    This adds a binding for sd_journal_get_realtime_usec(3).

commit d7c466a3651308746f47cc1b1d97edfea6b4fb07
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 13 22:48:18 2014 +0100

    Version 1.27.16.

commit ff85f7fe5adb39638d4b97dd2b0c0aa943eb9db8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 13 22:42:42 2014 +0100

    podwrapper: Put =encoding line before first POD directive.
    
    =head isn't always the first POD directive.
    
    This fixes commit 1148bd91ce2c0bebc65f9855368fd026aaf9f603.

commit 2a96ded4e57beed357b123486b9b300718c70c3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 13 14:22:50 2014 +0100

    podwrapper: Put the =encoding line at the correct place in the input (RHBZ#1109174).
    
    Commit c4dc70f8c43a7faae2a8698027a4ed23d316dfa0 broke the man pages
    for the Perl scripts in the tools/ directory.
    
    It inserted the =encoding line at the top of the file, instead of in
    front of the first =head1 entry, and this meant that the #!/usr/bin/perl
    and the prologue became a part of the POD, which was not intended.

commit 612f41cb469064a56f3ef7ca51677ea4134f43e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 13 13:34:38 2014 +0100

    sparsify: Add --tmp option to allow specifying temp directory or block device.
    
    Add the virt-sparsify --tmp option.
    
    This works in two ways.  Either you can specify a temporary directory,
    in which case it's just the same as setting $TMPDIR before:
    
      virt-sparsify indisk outdisk --tmp /var/tmp
    
    Or, as a new feature, you can specify a block device which is directly
    used (and OVERWRITTEN):
    
      virt-sparsify indisk outdisk --tmp /dev/sdX
    
    This is useful for oVirt nodes, where there is limited temporary
    space, but a block device can be assigned to the node.
    
    In both cases it is only used in copying mode.  In-place
    sparsification doesn't require large amounts of temporary space.

commit 39ac9519bf44adae1e2b8db0557dfa05885c9cba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 13 13:34:01 2014 +0100

    mllib: Create a common utility function is_directory.
    
    This is a wrapper around Sys.is_directory which doesn't throw
    exceptions.

commit e392659e5b2d6efd4970398c2c8e90ff925e1af0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 12 13:28:03 2014 +0100

    fuse: UID 0 should override all permissions checks (RHBZ#1106548).
    
    Previously if you were root, and you tried to change directory into a
    directory which was not owned by you and not readable (eg. 0700
    bin:bin), it would fail.
    
    This doesn't fail on regular directories because when you are root the
    kernel just ignores permissions.
    
    Although libguestfs in general tries not to duplicate kernel code, in
    the case where we emulate the FUSE access(2) system call,
    unfortunately we have to do it by stat-ing the object and performing
    some (half-arsed) heuristics.
    
    This commit modifies the FUSE access(2) system call, so root is now
    able to chdir to any directory.
    
    It also adds some debugging so we can debug these complex permissions
    checks in the field if some other problem arises in future.

commit c75ff840272cd5144671fe97587abd9315d59ef1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 12 22:18:02 2014 +0100

    builder: Don't copy *.xz files to WEBSITEDIR.

commit e6b191c18818d41a051789721a667ad590dd0544
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 12 22:13:25 2014 +0100

    builder: Rebuild Fedora 19 disk image with Xen drivers.

commit e8dc517c49d72e491400e2b71471fd5defadb7ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 12 15:42:33 2014 +0100

    builder: Get rid of remaining disk image signatures.
    
    These were deprecated and replaced in virt-builder 1.24.1.

commit 2b746d9ba4483b75b328aace03fdb3c289f1bddd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 12 15:38:52 2014 +0100

    builder: Update Fedora 20 image, with Xen drivers.
    
    This commit also removes the disk image signature.  These have not
    been needed since virt-builder 1.24.1.  No one should be running that
    version of virt-builder since there are newer 1.24 branch versions.

commit 3124c6d92be2cb95d1e2a667b8f710f2474409f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 12 13:49:43 2014 +0100

    builder: Fedora: Enable Xen driver support.
    
    See:
    https://www.redhat.com/archives/libguestfs/2014-June/thread.html#00045
    
    Notes:
    
    (1) Edit dracut configuration to make sure the change is permanent, in
    case kickstart, virt-builder or something else installs a kernel or
    runs dracut.
    
    (2) We need to run dracut on the just-installed kernel, not on the
    running kernel.  The snippet to do this was copied from the Fedora
    cloud kickstart.
    
    Thanks: Olaf Hering, George Dunlap, Dario Faggioli.

commit 82ba3718bc1a7b0fce99e7937cc423fcbaf6bec4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 12 13:49:09 2014 +0100

    builder: virt-install now requires '--serial pty' parameter.
    
    This updates commit 73ebaa30668ce7d9e3e413c3abf67a74829dfe5d.

commit 6ed9e7829703c892895bd08a52f548d638271c1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 11 12:43:03 2014 +0100

    builder: virt-install now seems to require '--serial pty' option.

commit 24ec819e3f50f0db2c69d3598ed9a6210809c475
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 11 12:42:08 2014 +0100

    builder: Further updates to RHEL 7 GA script.
    
    The location of the trees have moved ... again.

commit 0f1f8d69ce69c45cad346add652d945bc4cd8f56
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 11 08:21:34 2014 +0100

    builder: Update rhel.sh script for RHEL 7 GA.
    
    Set the rootfs for RHEL 7.x to xfs.  (/boot is ext4)
    
    Remove old RHEL 7 beta & rc releases.

commit 7f07626d8eded976a9fbb5c3355c5551c3942d2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 10 21:10:27 2014 +0100

    Version 1.27.15.

commit eac919f57c0e1fe8e314ecd714f3a291f54e14a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 10 19:31:06 2014 +0100

    launch: libvirt: Only use serial BIOS (sgabios) on x86.
    
    This device is not present at least on ARM.  Unfortunately libvirt
    doesn't give us any way to query when the device is present.
    
    This fixes commit bed592498d791c5ce6ad722f41dcbfbe243b0a7a.

commit 4e66f6439ca2a8d0466aa6a185acc184a37899f6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 10 15:18:38 2014 +0200

    appliance: init: properly set PS1 and TERM for virt-rescue (RHBZ#812970).
    
    Setting environment variables such as PS1 for bash before starting it
    might not be effective when the startup scripts provided by the
    distribution unconditionally change it.
    Hence, set PS1 and TERM in a ~/.bashrc, which will be source'd last and
    thus be able to set them the way we want.

commit 870900fa82e1c64b5e0c819b89d97559876457d2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 10 15:18:37 2014 +0200

    daemon: grub: show grub-install's output on error if verbose

commit 80b4c1c12e0ed3d65ac00e640a42ea464ebceb26
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 10 15:18:36 2014 +0200

    daemon: print parameters for vgchange in error messages

commit 5b46e3f96b3ee136a387ba07376df2ab08cd1b39
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 3 14:48:51 2014 +0200

    daemon: retire the augeas feature
    
    Augeas has been a mandatory dependency of libguestfs for quite some
    time, so the aug_* functions could have been always called (without even
    checking the augeas feature). Thus retire the feature, marking it as
    always available with no more functions depending on it.

commit 0e3adf0ee4a2dd3096726b0cd1ca87d0547f51ae
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 3 14:37:41 2014 +0200

    builder: handle duplicated images (RHBZ#1092753).
    
    Filter the available images, removing the versions with an older
    revisions, and duplicates.

commit b94a2ee0fbd0ce8c415484bd07c56084858653c6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jun 3 10:14:21 2014 +0200

    inspect: tighten NetBSD detection
    
    It seems recent (?) NetBSD versions have their kernel as /netbsd, so
    also check for it to detect NetBSD installations.
    
    The current detection so far basically relied on generic files and
    directories which can potentially be in every UNIX system, misdetecting
    them if a /etc/release file is present in them.

commit ffd65076db25180da7e2409359ea5af6f67f399e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jun 2 21:24:35 2014 +0200

    fish: list also aliases in the guestfish help (RHBZ#1103877).
    
    Output also the aliases (telling which function they refer to) in
    `guestfish -h`, together with non-alias functions.

commit 7f2b5576135ec3b79611d91dbfac1136c2562db2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jun 9 09:59:20 2014 +0200

    appliance: remove extra comma in Mageia's list
    
    Followup of commit 00d94d95c805ee027a9ef9e67f3979f1faada4a7.
    
    Thanks Thierry Vignaud for the notice.

commit f12a5005d04c9778e66840d08cdfd9cfd6abca8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 30 18:08:26 2014 +0100

    Version 1.27.14.

commit 16995377a60ecd462dfcd7cced4d935193d14feb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu May 29 10:32:15 2014 +0200

    generator: fix daemon functions with optional params but no mandatory params
    
    The
      struct guestfs_$function_args args;
    declaration was not emitted in that case, leading to build failure.

commit c6367d0dba6c1dd05635e8c9bcbe5f4773611720
Author: Joseph Wang <joequant@gmail.com>
Date:   Thu May 29 08:46:20 2014 +0100

    appliance: Update packagelist for Mageia (RHBZ#1102448).

commit 9d5327e2205613e6a243c6cb58520f6ac3698c52
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 27 11:48:44 2014 +0100

    appliance: Increase udev timeout to 6000s (RHBZ#1096579).
    
    If the image is located on NFS, and the NFS mount is performing a
    large copy, then all other NFS operations stop.  This delay can be
    large enough that we hit the current 10 minute timeout in udev.
    
    Increasing this to 100 minutes is reported to cure the problem (in
    reality we want udev to wait indefinitely).

commit fa79efdd16b38abf5ff7086f44adb3db40ed0471
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 27 11:02:58 2014 +0200

    ruby: add :nodoc: comment for internal methods
    
    This way they are ignored by rdoc.

commit 0c818547bf465cc5251c138e7d9f873a665928f7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 27 10:57:13 2014 +0200

    builder: support aliases for images (RHBZ#1098718).

commit c2cb177b532839c836dba29fe6860302d40a4f07
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 26 12:20:10 2014 +0100

    launch: libvirt: Add -device sga (sgabios).
    
    This feature was added to libvirt in 2011-07-08 so we can assume it
    exists.
    
    Thanks: Jiri Jaburek

commit 9e51fdc68885dd8de6e1b23516d17626f5428f2d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 25 22:34:51 2014 +0100

    fuse: Make all the skip messages consistent in this test.

commit a0d0b6eafe990ce6fffa0b9fd3a8e868bde264dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 25 22:34:04 2014 +0100

    fuse: Skip test-fuse-umount-race.sh if backing file does not exist.

commit 3c1f8eb69fd110bf915adf4bd216f723622f2aab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 25 22:28:27 2014 +0100

    fuse: Skip guestmount --fd test if /dev/fuse does not exist.
    
    When we run guestmount (eg. in Koji) it will fail anyway, so don't run
    the test.

commit 643bc94e5c4bc4ff370209bb849510ca4b4a14c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 24 19:17:46 2014 +0100

    Version 1.27.13.

commit 976657f65ce1e918f54a948856788fc93b8741a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 23 11:46:43 2014 +0100

    fuse: Add a test of guestmount --fd option (RHBZ#1100498).

commit 27a00f880a524ce6a80c3969355225f12cd7b9c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 23 11:27:37 2014 +0100

    fuse: Add guestmount --fd option (RHBZ#1100498).
    
    This implements the guestmount --fd option to allow you to run
    guestmount captive under another process (typically using
    `guestmount --fd=<FD> --no-fork').
    
    See: https://bugzilla.redhat.com/show_bug.cgi?id=1100498

commit 2c719970210aa938d8053fc238d2c2fcd2d9019e
Author: Hilko Bengen <bengen@debian.org>
Date:   Thu Dec 12 21:06:22 2013 +0100

    golang: Fix for out-of-tree builds
    
    RWMJ:
    
    This is half of a downstream Debian patch to fix out-of-tree builds
    for golang.

commit d6614df68456a3d1c18d08221bb8f4133170e830
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 23 11:04:20 2014 +0100

    Version 1.27.12.

commit 617e3cc5f096525b9007b63fe8fd960b91265e6f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 21 15:03:17 2014 +0200

    daemon: scrub-file: resolve the path before calling scrub (RHBZ#1099490).
    
    Resolve the given path within the chroot, so scrub can be invoked
    outside the chroot on an already-resolved path.
    
    Add few tests in scrub-file for this and other similar issues.

commit d8310e4852bb39bae3a8dce0139575237738606d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 21 15:01:50 2014 +0200

    daemon: add sysroot_realpath
    
    Similar to sysroot_path, but first resolves (using realpath) the given
    path within sysroot.

commit b5176f7c9b1041091afb3b422430a14a348c4236
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 21 14:58:40 2014 +0200

    Make realpath mandatory
    
    commit a86eb0e0d2c67e2153139c681632edc72162b8ed made it an optional
    feature, as on Windows it was not available; on the other hand, realpath
    has been used unconditionally already for quite some time, so having
    just the "realpath" command conditional on the presence of it does not
    make much sense.
    
    Drop the configure/build system handling of it, make the "realpath"
    command no more optional, and keep the "realpath" feature as
    unconditionally available now.

commit 67c9465f701993c3181fe798840a263a0157026c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 21 14:39:30 2014 +0200

    generator: add always-available optgroups
    
    Support the possibility to have optional groups always enabled (e.g.
    because they were present in the past, and they need to be kept for
    users).
    Add and use few helper optgroups-related functions to deal also with
    them.

commit 19cab1e5692e8aae56a99d6b692e1ebaca556139
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 21 09:36:34 2014 +0100

    ppc64: Use console=hvc0 console=ttyS0.
    
    console=ttyS0 used to work.  Now it's broken again, and the correct
    setting appears to be console=hvc0.  Since we can pass multiple
    console settings, do that to try and catch the right console.

commit afb993c1eedaa9a991fd23eaa1d4e4c149256243
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 20 13:13:39 2014 +0100

    Update guestfs-release-notes.txt.
    
    This updates commit a21dfc483c5102334d8c490a50077ec201ffe2e4.

commit ea58a952b417cca10dfcae529a4215acdaa4b2e3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 20 13:31:07 2014 +0200

    fish: simplify output of 'supported'
    
    Print each line at once, making use of the padding features of printf
    instead of doing it manually.

commit 1cbd33c993f163c82f69a1fbd7576f272f271919
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 20 10:45:33 2014 +0100

    Fix some spelling mistakes and typos in documentation (RHBZ#1099284).

commit 0278c5f04c19dbfaaad5314ed0bb5a929cf0d11b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 20 10:40:17 2014 +0100

    Update BUGS.

commit 86873ede5ecfde6846a1d02a9b21f138b15baa09
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 17 11:15:54 2014 +0100

    p2v-iso: Add a kickstart target.
    
    This also changes the old p2v-iso/README file into a POD file
    which is installed as a manual page.

commit 6e11c5a55834a3c0b83cd685c7efe95a4d03d23d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 17 10:58:00 2014 +0100

    p2v-iso: unset CDPATH, set -e at the top of the virt-builder-target script.

commit 0c2b81359cf0eab203c7b2efb1a3e712703ac2ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 17 11:44:46 2014 +0100

    configure: Move --with-default-backend test later in configure.ac.
    
    For some reason this test was right at the top of the script.

commit e431d945aee020f8fcf0efba28a21e6c350e64c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 17 11:35:31 2014 +0100

    build: Use AC_PROG_AWK to define the right awk to call.
    
    We actually call plain 'awk' in many different scripts, but this
    commit does not change all of those.

commit 5b3304280b1c5b2c8d7105a72044ed2f5092414b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 17 10:38:59 2014 +0100

    builder: Make the summary printed at the end easier to read.
    
    This is just a whitespace change.  The new output looks like this:
    
                       Output file: fedora-20.img
                       Output size: 4.0G
                     Output format: raw
                Total usable space: 5.2G
                        Free space: 4.5G (86%)

commit 9f31b4f7844251ac46bb295121176e0481ded67a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 16 12:54:46 2014 +0100

    p2v-iso: Use xorg-x11-drivers meta-package to install Xorg drivers.
    
    Thanks: Andrew Price.

commit 3ef27938332853d03252214ccba709e20d7356a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 16 11:10:06 2014 +0100

    Version 1.27.11.

commit d6bb93407fff60c8cb285597cb3c42568fa574b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 16 08:45:47 2014 +0100

    virt-p2v: Install the binary in libexecdir.
    
    Previously it wasn't installed at all.  However it makes sense to
    install it somewhere so that it can be placed in a package (a
    requirement if we're going to create a kickstart).  By placing it in
    libexecdir it is hopefully clear that it should not be used.
    
    Note on Red Hat distros, libexecdir is usually /usr/libexec.  On
    Debian it is usually /usr/lib/libguestfs.

commit 19eb5190c7ebf82668327871f2a80f1b7ccef9ab
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 16 11:05:40 2014 +0200

    build: bump the libsystemd-journal needed version to 196
    
    Bump to >= v196 the minimum version of libsystemd-journal needed for the
    journal integration, since that version provides
    sd_journal_get_data_threshold and sd_journal_set_data_threshold.

commit 56300e518a2b780059762f519a72437457feff7c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 15 23:00:46 2014 +0100

    Version 1.27.10.

commit 69ca6de21647eda2b3f621b369f0aa931f511e93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 15 13:43:18 2014 +0100

    Add p2v-iso directory containing scripts for building the virt-p2v ISO.
    
    It is not possible to have the ISO be built automatically when the
    user runs 'make'.  The README file describes how you should go about
    building the ISO or disk image.

commit e5b8952a68a603910cd52efcc590f74994ed6f8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 23 21:27:52 2014 +0100

    New tool: virt-p2v.
    
    This is a graphical standalone front-end to virt-v2v which can be run
    on physical machines (usually linked into a ISO or PXE boot image) to
    convert the physical machine to a virtual machine.

commit 5d22d60a7ca40dfc14e9bf481d44ae1f28c5a8a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 1 14:41:30 2014 +0100

    New tool: virt-v2v.
    
    This is a rewrite of the original virt-v2v tool.  The original was
    written by Matt Booth et al in Perl between 2009 and 2013.

commit 06b70158353f596fc8ab408af2984e6e5b2fd19d
Author: Maros Zatko <mzatko@redhat.com>
Date:   Thu May 15 14:44:36 2014 +0100

    generator: Change link to OCaml tutorials.

commit a966f27c5a55620c012076427269480c58847e0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 12 22:19:08 2014 +0100

    builder: Fix RHEL 5 download location.
    
    This fixes commit 3bc9ba6c8447cde07db057aea76d0d72f5d833df.

commit 36319f3ff07101c873207eb545ee0d12b79267fb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 14 17:59:31 2014 +0200

    builder: respect the proxy also when downloading images (RHBZ#1096465).
    
    Missing from commit 87d79c2ee259ce51595ad3a924fd216f882dc477.

commit 38f819d7c38a082b6c84641a7b447f9b377b041b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 14 17:28:13 2014 +0200

    builder: save the proxy for each entry
    
    Copy the information about the proxy of a source in all the entries of
    that source; this way it is possible to use it later when accessing to
    the actual image of an entry.

commit f1300b0f6a3161340f57a27a00da096fcd6420a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 10 17:18:39 2014 +0100

    builder: Fix RHEL script for RHEL 5.
    
    Root partition is on /dev/sda2:
    
    $ virt-filesystems -a rhel-5.10 --all --long -h
    Name       Type        VFS   Label      MBR  Size  Parent
    /dev/sda1  filesystem  ext2  /boot      -    510M  -
    /dev/sda2  filesystem  ext4  /          -    4.5G  -
    /dev/sda3  filesystem  swap  SWAP-hda3  -    1.0G  -
    /dev/sda1  partition   -     -          83   510M  /dev/sda
    /dev/sda2  partition   -     -          83   4.5G  /dev/sda
    /dev/sda3  partition   -     -          82   1.0G  /dev/sda
    /dev/sda   device      -     -          -    6.0G  -
    
    It would be better if we could mount by label in guestfish ...
    
    There is another problem with RHEL 5 guests in that the
    yum URL is slightly wrong.

commit 08deb611c31e0a832921e65c414e1d34931c4ebe
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri May 9 11:14:55 2014 +0200

    appliance: update Debian-specific package list

commit 07ebccf43eafe94da286cbc78358cc771a88a6ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 10 12:11:11 2014 +0100

    builder: Add Ubuntu 14.04 disk image.
    
    Also remove the Ubuntu 13.10 image, since it's not an LTS image.

commit 3a672fe2ae96bca164304fd925c47997e49dc51b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 10 10:45:15 2014 +0100

    builder: ubuntu: Allow virt-install --os-variant to be specified on the command line.
    
    Current virt-builder in F20 does not know about --os-variant=ubuntutrusty
    so to build that you can now do:
    
      ./ubuntu.sh 14.04 trusty ubuntusaucy

commit 4fb03ba60680a68cfe1b75696bdaa83e753a3f6e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 9 15:06:50 2014 +0200

    configure: always add the extra warnings
    
    Get rid of --enable-gcc-warnings and just add all the warnings in any
    case; they are tested anyway, so only warnings supported by the compiler
    will be used.
    
    Regarding -Werror, add a new --enable-werror which enables its use.

commit 343f8f2566a21df0655b1ecc2aff8ddce97fad3c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 9 12:20:33 2014 +0200

    tests/syslinux: add new syslinux 6+ path of mbr.bin
    
    Reported in https://bugs.debian.org/746748.

commit 4990737483383dd92ba83a8b10dea14f420c1833
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri May 9 12:19:47 2014 +0200

    tests/syslinux: factorize search for mbr.bin

commit d4947549aa897be92cf9a1b1f56e3616dbc53fc8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 7 14:42:03 2014 +0100

    Version 1.27.9.

commit 4c40edbf55a2cb226383ff033dab654d351f36ff
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed May 7 15:45:07 2014 +0200

    test-charset-fidelity: allow to skip testing specific FSes
    
    Allow to skip testing the filesystem "foo" if the environment variable
    SKIP_TEST_CHARSET_FIDELITY_foo=1 is set. This way it possible to not
    test one or more filesystems without disabling the test altogether.

commit b4c9fc3625d81b76a07284988ed285a6f333055d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 30 18:10:32 2014 +0200

    Fix handling of passwords in URLs
    
    So far, passwords in URLs (eg http://user:password@host..) have been
    handled as part of the username, and thus passing
      add-drive path username:username:password ...
    instead of
      add-drive path username:username secret:password ...
    
    Fix the parsing of URLs to handle passwords as separate elements,
    properly passing it as "secret" parameter for add-drive, and properly
    readd it when building URLs in the direct backend.
    
    Furthmore, to keep curl- and ssh-based qemu drivers working with
    authenticated resources, make sure they can accept secrets.
    
    Reported in comment #1 of RHBZ#1092583.

commit a20083d15da1e091f3332c21b111a5d264af01d7
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Mon May 5 17:24:04 2014 +0300

    inspect: Add support for Oracle Linux
    
    Prior to this patch the library would return "rhel" instead of
    "oraclelinux" for Oracle Linux OSes.

commit 89de2f082a888a2403dc3ff8104c057405d18e1c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 3 16:47:48 2014 +0100

    New API: cpio-out converts a directory to cpio format.
    
    This is useful for generating Linux initramfses from other types of
    filesystems.  For example:
    
     guestfish --ro -a disk.img -i cpio-out / - | gzip -9 > initrd.img

commit 5ba9261820fc8f5dc860f97efc0b277c39bf279b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 7 09:04:23 2014 +0100

    sparsify: Add a note about qcow2 internal snapshots not being copied (RHBZ#1094746).

commit 7cf08a2f7df678341c3e72da479a1d25a52170c1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 5 15:54:30 2014 +0100

    customize: random-seed file has moved again.
    
    Thanks, systemd.

commit c7a0089f1c053616cd62b084f20d6cdaf0756024
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue May 6 19:22:14 2014 +0200

    lib: xmlParse{File,Memory} -> xmlRead{File,Memory}
    
    Switch from xmlParse* to xmlRead* so we can explicitly specify parsing
    flags, including no network usage and no entity resolution.
    The two behaviours mentioned above were not done before either, so this
    should not introduce behaviour changes in libguestfs.

commit fffd912605c589ce3b7bf20855a57270852c8d42
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 4 20:57:33 2014 +0100

    guestfs-recipes: Fix language.

commit 4a2321251f64e98757af8cb043f6af3777a38952
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 2 11:25:21 2014 +0100

    Version 1.27.8.

commit 7a8fdb4db547ec6ec9d06061428e26b11276c5ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 2 11:24:45 2014 +0100

    builder: Add RHEL 7 signature to EXTRA_DIST.
    
    This fixes commit fea553778a1f38b8c0dc3bf76a67725f0cee9094.

commit 80d7d3dac110ad11ca79e150d67da048401ad443
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 2 10:55:21 2014 +0100

    launch: direct: Turn gdb into a backend setting.
    
    You can now use LIBGUESTFS_BACKEND_SETTINGS=gdb in order to enable gdb
    debugging of the appliance.  This only works with the direct backend.

commit 5ba2a31b1ecdf49f67c2df74fa3a2a90a434d68f
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Apr 29 23:18:01 2014 +0200

    launch: direct: Supply -M option when testing qemu for devices.
    
    qemu-system-arm 2.0 as currently available through Debian/unstable
    doesn't want to tell us anything about available devices unless we
    specify a machine type.

commit 4aae25dcf3b0ce6c39b935ea5e3056336116f258
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 30 15:52:49 2014 +0200

    daemon: xattr: factorize do_getxattr and do_lgetxattr
    
    Move all the common code to a new _getxattr function, much like done for
    other xattrs operations.
    
    Mostly code motion, no functional changes.

commit ad10f053e7696defdb7acb7378c95895f3db31c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 29 23:00:40 2014 +0100

    builder: Add RHEL 7RC disk image.

commit ebd647cf1cef1add54fef980b54e9d44c13a79e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 29 15:43:20 2014 +0100

    builder: Fix parallel builds of index-parse.o.
    
    When parallel builds are enabled it was possible for index-parse.c to
    be compiled before the file had been completely written by bison.  The
    usual symptom was that the 'do_parse' symbol was missing -- this
    simply happened because that symbol is defined at the end of this
    file, and the compiler compiled the file before the end part was
    written out.  But you could also see other strange & random compile
    failures as you would expect.
    
    This was tested by running this script on an 8 core server:
    
     cd builder/
     export MAKEFLAGS=-j9
     while make clean >/dev/null; make all V=1 >& /tmp/log; do echo -n . ; done
    
    Previously it would fail after <= 5 iterations.  With this change it
    runs for at least 100 iterations.

commit 6a988959ceaa87bbc735b51f4e19b1c17d2fb871
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 28 09:14:34 2014 +0100

    Add a regression test for RHBZ#1091803.

commit 5a8b3ae6b205e17173186c1058b6714b26f6bd1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 28 09:51:00 2014 +0100

    tar-in: Fix places where we didn't cancel the receive (FileIn) correctly along error paths (RHBZ#1091803).
    
    Thanks: Bo Fan.

commit 180bc70c701f8f4b3ae40dd9ffddc24343aa7970
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 23 19:50:37 2014 +0100

    Version 1.27.7.

commit d2d1341ed042803b54e1470e0ccc7c6d6c5bc9f2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 23 10:39:51 2014 +0200

    builder: isolate all the cache handling to a new Cache module
    
    While there is not that much in it, it groups together the small
    scattered-around bits handling the cache directory.

commit 6000e880d0d06da4a876907f82c583be01f6a48c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 22 22:21:57 2014 -0400

    configure: Make sure grep matches qemu 2.x version string.

commit 1f8cda899b0cd77142c28529976319ee85e73188
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 22 17:58:27 2014 +0200

    builder: add "[ignored]" to parsing errors for .conf files
    
    Parsing sources .conf files is not a fatal error (that file would just
    be ignored), so explicitly state that such parsing errors are ignored.
    
    This should address the last bit in RHBZ#1077817.

commit 233a149b1736c5e1f7fdca8ed884b2204212b224
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 22 17:57:05 2014 +0200

    builder: add an optional suffix string for INI parsing errors

commit e0e994a1bd12caaa2680ce01912ce71c0512c609
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 22 14:14:12 2014 +0100

    Version 1.27.6.

commit 73f12f6ed7d17df4aed5a7e9bd92efd66d0d0353
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 22 13:25:12 2014 +0100

    FAQ: Describe better how to compile libguestfs from source using alternate qemu/supermin/kernel.

commit d24c5fe67e3de3e0cac2526b29bfcce9dcffe6d6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 18 11:39:21 2014 +0200

    ruby: tests: convert from Test::Unit to MiniTest (RHBZ#1085029)
    
    Convert the tests to the MiniTest test framework, but keeping the usage
    of the old Test::Unit as fallback in case MiniTest is not available.
    In the latter case, use a bit of "glue" to make the old API look like
    the new API, so we can just rely on the newer MiniTest API.

commit 7fe155930b9be785ab96a72c8ef53fc6c4d8e832
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 18 11:27:11 2014 +0200

    ruby: tests: isolate boilerplate in common file
    
    Isolate in a common file all the standard boilerplate in tests, i.e. the
    import of the test framework and the guestfs module (including the
    import path hack needed for the latter).
    
    Thanks to Vít Ondruch for the precious hints and suggestions.

commit 89b11f111cf1d7fe040695f27225f35aa0293c8f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Apr 17 11:32:50 2014 +0200

    daemon: parted: part-get-name: switch from sgdisk to parted (RHBZ#1088424).
    
    Use parted to get the name of partitions in GPT layouts instead of
    sgdisk, to reduce the possible discrepancy between output of tools.
    
    The actual case here is that recent parted versions fixed/improved their
    UTF-16 handling of partition names in GPT, and sgdisk seems to not be
    properly handling them, returning also unicode control bytes.
    Since parted can provide partition names already, just make use of it.
    
    Since sgdisk is no more needed for part_get_name, the function is no
    more optional on it.

commit 1d008cfd0a79548c5f2aeaad330a5d87edc2bd62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 16 21:12:30 2014 +0100

    sparsify: If using -v (verbose), ensure #disk_create runs verbose too.

commit fc96bc736591486214f88366a40c46423e67d373
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 16 21:12:30 2014 +0100

    builder: If using -v (verbose), ensure #disk_create runs verbose too.

commit 09658a8de384fd0fe7f4602b185e67cb3b506a1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 16 20:09:39 2014 +0100

    builder: Suggest using virt-install --os-variant option in virt-builder man page.

commit 404ebefc97493319c53865f86bc90520ae89bb9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 16 11:43:23 2014 +0100

    disk-create: Fix this API so it works correctly with block devices (RHBZ#1088262).
    
    When you call guestfs_disk_create on a block device with format=raw
    then it will try to discard the blocks on the device.

commit f64ba99d49ccc6ffb80a6284da643b0c69ab42c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 15 23:29:03 2014 +0100

    Version 1.27.5.

commit 73db3e5cb4419357fbd45c68e5c5c419204e315d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 15 18:03:53 2014 -0400

    configure: Fix tests of qemu on ARM.
    
    qemu-system-arm now requires that you pass '-machine virt' (or some
    -machine type) explicitly.
    
    Change the configure test so it works on upstream ARM.

commit b81d9ae9d7a3fb80dcd5b417f44f1c952a174512
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 15 14:15:14 2014 +0200

    builder: add per-repository proxy configuration
    
    Add the possibility to configure the proxy in each repository .conf
    file, specifying whether use no proxy at all, follow the system
    configuration or use a specific proxy.

commit 8c0bb75b147646c586d274e36cf0ba79b47afa01
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 15 14:23:34 2014 +0100

    Version 1.27.4.

commit 2cf93fef4b4a402d4cb186bc369f01348b753d00
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Apr 14 14:18:41 2014 +0200

    sysprep: remove also hidden files/dirs in temporary dirs
    
    List manually and remove the content left (hidden files/directories) in
    temporary directories after the glob listing & removal.

commit bd337af6de51602c6a74fffaa226cbe0d3d73413
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 14 11:42:33 2014 +0100

    sparsify: Fix automake build.
    
    Previous commit 97c57a8887e04742c58c3956385a5366c6df02c3 added a
    potential bug in the sparsify build.  If virt-sparsify had used a
    *.mli file then it would have tried to run a command like:
    
     ocamlc mlguestfs.cmxa -c foo.mli -o foo.cmi
    
    This would fail because ocamlc doesn't know about native code
    libraries (*.cmxa).  In fact virt-sparsify was not affected by this
    because it doesn't use any *.mli files.
    
    Fix this by adjusting the automake variables.

commit a1fe8d9d27dc43f7147c60e13abfebbc9288199a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 11 16:15:13 2014 +0200

    builder: set an empty XDG_CONFIG_HOME in tests
    
    This way they are affected less by the environment.

commit e8fc521d90b2b24f6971a6c5bb5259bbee6e7a1c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 21 15:24:01 2014 +0000

    listfs: If LDM not available, don't inhibit partition detection (RHBZ#1079182).
    
    If a disk has type 0x42 partition (which would indicate LDM), but LDM
    is not available then try parsing the partition anyway.  It might be
    parseable as plain old NTFS.

commit 908373e78dfc56011d48609e6b533c032654faa4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 8 21:17:39 2014 +0100

    sparsify: Use automake to build and link virt-sparsify binary.
    
    There are two observations which make this possible: (1) virt-sparsify
    contains at least one C unit, so automake thinks it is compiling a C
    program.  (2) Automake lets us add a *_LINK rule to override linking.
    
    We list the C sources of virt-sparsify as virt_sparsify_SOURCES, so
    automake thinks it is building a C program as normal.
    
    We override virt_sparsify_LINK to make it actually link an OCaml
    program.
    
    We add virt_sparsify_DEPENDENCIES listing the OCaml objects so that
    they get built before linking.
    
    We need a small linker script (link.sh) which adds some options at the
    end of the linker command line which are impossible to add using pure
    automake.
    
    Inspired by the same idea in supermin:
    https://github.com/libguestfs/supermin/blob/master/src/Makefile.am

commit 55bc14350c42dad0f4df58fbaf95c1e368f562e7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 9 13:56:16 2014 +0200

    sysprep: remove ConsoleKit logs

commit fff3f099cddacf7d916ec910e7bb58dce41e17d6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 9 13:42:22 2014 +0200

    sysprep: remove the exim logs

commit 5fabafcf85073caa49351a0049b42c3aa13138b8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 9 13:38:50 2014 +0200

    sysprep: remove apt and aptitude logs

commit b8ed1690354a245855f90586bcac697af50336c1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 9 13:29:39 2014 +0200

    sysprep: remove debug, syslog and faillog logs

commit 9c13a16eaf8b323f35ae53b0903d1ff2b4c68bcc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 9 12:00:00 2014 +0200

    sysprep: remove debian-installer files

commit aade1fa75836431c6345883a7e4236400505d95b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 9 11:38:47 2014 +0200

    sysprep: remove the lightdm logs

commit 8cdc9d6cfc860c55834157077d2dfb0b907fed55
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 9 11:31:11 2014 +0200

    sysprep: remove more anaconda configs/logs

commit c23ad17128b22c69a231c679eba32a3163348be6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 9 11:22:53 2014 +0200

    sysprep: remove systemd journals

commit 71bb44ef12d0201ff0a6999ce147cbbd86dfa73c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 9 10:19:37 2014 +0100

    build: Remove code coverage and code profiling options.
    
    This reverts commit 5a2e320ec9390b2146feea6d7b3b8c36a34d0a90.

commit 71e328c01e8c18357debdf977b5666c05ce56cdf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 8 10:05:34 2014 +0100

    sparsify: Relax test constraint (RHBZ#1079210).
    
    As long as over ~300MB is recovered, declare sparsification to be
    successful in this test.
    
    It looks as if the journal or other metadata takes up a variable
    amount of space after sparsification.

commit fde405b0788d720fb94ca18d40bcb7959ea6370c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 7 13:17:38 2014 +0100

    configure: Add message about GNUlib tests.
    
    Output was:
    
      yes
    
    Now the output is:
    
      checking if we should run the GNUlib tests... yes

commit 6b3ea2754036a9991bfb6953621b9c418618b85d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Apr 4 16:09:51 2014 +0200

    customize: add the chmod command
    
    Add the chmod customize command to change the permissions of files.

commit 86dafd341c675e14f0e356a3e9d79b3bae61b296
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 6 16:19:33 2014 +0100

    Version 1.27.3.

commit d8c939fd9b53226b17c9da24a600b5a7dc785247
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 3 20:27:18 2014 +0100

    recipes: Update the section on installing packages.
    
    Libguestfs >= 1.26 makes this easy.

commit 55bf3a7c5bf91adc94ef09f26126d5249b130637
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 3 12:23:37 2014 +0100

    mllib: utils: Add mapi function.
    
    This is List.mapi from the stdlib.  RHEL 6 did not have this function.

commit e610689d29297cc968732897e1bc006ab97cca45
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 3 16:05:00 2014 +0100

    appliance: Avoid touching appliance/supermin.d directory.
    
    We must avoid touching appliance/supermin.d unless it is necessary, so
    that we avoid unnecessary rebuilds of the full appliance.
    Unfortunately since we created temporary files there, even if we
    didn't decide to keep those temporary files they would still end up
    touching supermin.d.  To stop this, move the temporary files out.

commit c22da882e39ef9b57c2977d97d76a3b4f3156a8b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Apr 3 15:26:26 2014 +0200

    appliance: exclude pkg-config, doc-base, and reportbug stuff
    
    Exclude the arch-independent pkg-config files (no pkg-config available
    in the appliance).
    
    Exclude also the doc-base and reportbug files, typically found in Debian
    systems.

commit 48404833779570978c4e675de873e483ea4c434c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 3 08:58:46 2014 +0100

    builder: Add test of virt-index-validate.

commit 4c02657421ba3a5709b2abe5223417aceb68e045
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 3 08:45:31 2014 +0100

    builder: Rearrange EXTRA_DIST in alphabetical order.
    
    No functional change.

commit ba0802c95cbd7fbc1725c326909fea726b19f0de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 3 08:44:24 2014 +0100

    builder: Don't use configure to generate test-index file.
    
    The file contained no replacement patterns so generating it
    with configure did nothing.

commit 8b5e4e67a790df6e6a74dbc3fb6e82e4f2518588
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Apr 2 18:13:59 2014 +0200

    builder: better handle some index parsing errors
    
    Add a new lexer token, unused in the grammar, for the unknown lines in
    index files; this should allow to better handle such kind of parsing
    errors, removing the need to exit() directly (and leave things in an
    unclean state).

commit 9d1a3e85b24d27110be2bc426cefed62da288200
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 2 17:33:37 2014 +0100

    customize: Add a "finishing" message at the end.
    
    Useful, mainly because it tells you the total time spent running.

commit 26a3d582fad5760814408f624a718ddbdfdde0b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 2 14:06:03 2014 +0100

    customize: Add customize/*.ml files for translation.

commit 56b93ff15dff276ec9668f074c78c50268968254
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Apr 1 18:01:19 2014 +0200

    src/launch: improve the addition of the no-hpet option
    
    Since HPET is specific to x86, we can safely add it its option only on
    x86 and x86_64 when creating the libvirt XML (no more hitting the
    launching failures due to that on other architectures).
    
    Regarding the direct qemu launch, since qemu 1.1 (which is our current
    minimum) "-ho-hpet" appears in the help only where actually supported,
    so we could just checking for it and adding it only if present. This
    should fix the architecture issues on this backend as well.

commit 1d76a160392fdcbdd96c8c7275fdbb3b00821a7c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 1 14:56:32 2014 +0100

    sparsify: Reorder external programs in SEE ALSO section.

commit d26c047ac9354dbd22700966dd60f99af0d28f22
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 1 14:55:20 2014 +0100

    sparsify: Remove duplicate "EXIT STATUS" sections from man page.

commit 1815d55caed83c818861a337db4ccdbac4abaa63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 31 18:07:08 2014 +0100

    Version 1.27.2.

commit 9e8284ff30512c18dd0fe44228bf80864383f4d8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 31 18:00:07 2014 +0100

    rescue: Fix the --suggest regression test so it works when using UML backend.
    
    The boot partition name is /dev/ubda1 in this case, so use a small sed
    script to canonicalize it for the test comparison.
    
    This fixes commit f6a37740f2ba6668bee4952fdd35c46cb6d79cba.

commit 75ce3f2ff1516993633623ccf86acab0f8b67f70
Author: Lee Yarwood <lyarwood@redhat.com>
Date:   Mon Mar 31 16:52:31 2014 +0100

    Add the now mandatory arch=ARCH field to the index file examples.
    
    61323fa introduced a mandatory arch field within index files to
    identify the architecture of the OS installed within a given template.
    This change simply documents the requirement within the relevant
    section of the virt-builder man page.
    
    Signed-off-by: Lee Yarwood <lyarwood@redhat.com>

commit ee7efd4a1156bc72f13426e310039a7b4e0e4ad2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 31 15:09:34 2014 +0100

    Version 1.27.1.

commit 8c6184d2bcaed5cfe870a0ee7d84468afd2c76eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 31 15:13:09 2014 +0100

    python: Add README.txt to EXTRA_DIST.

commit 701df54eb411c7cdb0430b9e7b808a4fff423a33
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 31 13:59:08 2014 +0100

    src: Fix test-utils.c to test the validate_guid function again.
    
    This fixes commit 768ab2e01dab5a8e7e751c33b72c1341fcaf9dc3.

commit 4255c6877d8bb9597e309bd746f33434c1274f20
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 31 12:56:28 2014 +0100

    Remove internal libvirt_setlinux* APIs and use backend settings instead.
    
    This removes the internal APIs internal_set_libvirt_selinux_label and
    internal_set_libvirt_selinux_norelabel_disks.  The communication
    between the libvirt domain and the backend now uses the backend
    settings.

commit 4b9f4e453d4fd5314068c9f696c6a351f8084fd4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 31 14:20:28 2014 +0100

    ocaml: Add ESRCH to Guestfs.Errno module.

commit 323bf64398aeecb6e22ef2eb98d7f6e7392e08dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 31 12:53:25 2014 +0100

    New APIs: set-backend-setting, get-backend-setting, clear-backend-setting.
    
    Currently the backend settings are treated as a list of strings.  You
    can set the whole list (clearing any strings there previously), but
    you cannot search for an individual string or replace an individual
    string.
    
    This adds further APIs allowing you to do that.  We treat the backend
    settings as a list of environment-like strings (ie.  name=value), and
    add the following functions:
    
     - set-backend-setting (name, value)
    
       Set name=value.  Any previous settings of name are cleared.
    
     - get-backend-setting (name)
    
       Search for name or name=value and return the value.
    
     - clear-backend-setting (name)
    
       Remove any name or name=value settings.
    
    This also adds a regression test.

commit 34e31183bab3ee6e1904c350c93a16aaf8f738df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 31 13:33:10 2014 +0100

    handle: Free g->backend_settings.
    
    This was not being freed, resulting in a memory leak if you used
    LIBGUESTFS_BACKEND_SETTINGS.
    
    Found by valgrind.

commit f99bdbc5016998d886310dce4e213d71bb693759
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 29 18:52:32 2014 +0000

    python: Remove unnecessary library dependencies.
    
    We can remove the deps on libxml2, libvirt and gnulib, by only linking
    with utils.o (instead of utils.a).

commit 302aff6d428f54f1472174d772a4c86d193bb270
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 29 16:07:21 2014 +0000

    python: Add a Python setup.py script.
    
    This is not used by libguestfs right now, but it does allow you to
    build a python "distribution" of libguestfs, like this:
    
      make -C python sdist
    
    The distribution tarball will be in python/dist/
    
    You can copy the distribution tarball somewhere, unpack it, and use
    regular 'python setup.py' commands such as:
    
      python setup.py build
      python setup.py install [--prefix=...]
      python setup.py --name
    
    In future we hope to be able to upload the distribution tarball to
    PyPi, but licensing issues prevent this at present.

commit 065238881b8b3969150f573a97a23b52e91d53dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 29 16:57:59 2014 +0000

    utils: Move guestfs___validate_guid out of utils.c.
    
    guestfs___validate_guid was a new function added to utils.c in
    commit beef77403cd9d634b6ff6daa9f33d292e2d320a7.
    
    However utils.c should not include <guestfs-internal.h> since the
    other functions in this file can be used by all front-end code, not
    just libguestfs.so.
    
    This function is only needed in libguestfs.so, so move it to another
    source file, and remove include of <guestfs-internal.h> from utils.c.
    
    Also: use 'size_t' for counting, not 'int'.
    
    This fixes commit beef77403cd9d634b6ff6daa9f33d292e2d320a7.

commit 59fe586a44e7fc4ed1af7f1b358a3c3db9c41203
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 29 17:12:07 2014 +0000

    utils: Remove for-loop variable decl.
    
    Breaks Python distutils which doesn't use C99:
    
    utils.c: In function ‘guestfs___copy_string_list’:
    utils.c:79:7: error: ‘for’ loop initial declarations are only allowed in C99 mode
           for (size_t j = 0; j < i; ++j)
           ^
    utils.c:79:7: note: use option -std=c99 or -std=gnu99 to compile your code

commit ec16a2615a85a095b1b17dff0fabd2f7ac5db06d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 29 15:07:54 2014 +0000

    virt-builder: Add --machine-readable option, as in virt-resize and virt-sparsify.
    
    This makes it easier to query the virt-builder binary capabilities,
    from external programs.

commit 4dac0f3d16c4c96657fcc5997ae4acb84f7082c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 29 14:55:01 2014 +0000

    builder: Disable internal parallel xzcat on RHEL 6.

commit edd25748f6c966f4570a665792f1e512c1101a65
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 29 14:47:25 2014 +0000

    builder: Remove recursive include of index-parse.h.
    
    This breaks on Bison < 2.7, and seems unnecessary in any case since
    the same file is included earlier.

commit f3cc65947d4efecab0120d504687d9cf440c4f96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 28 14:37:45 2014 +0000

    rescue: Add a regression test for virt-rescue --suggest option.

commit 0b9dbdefce5a68c5d01aed22172ac02a0278c611
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 28 14:25:42 2014 +0000

    rescue: Don't leak various variables when using --suggest option with multi-boot guests.
    
    This fixes a leak which was introduced in
    commit 4255db65e58a86148ec291a7416a1148c453d926.
    
    Found by Coverity.

commit 832a31cdf62a3cb0517bc8e38e6f51edf9dacb52
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 28 14:01:19 2014 +0000

    make-fs: Close FILE* along error path.
    
    Found by Coverity.

commit 4737846f4271ad5851cbf4a54aa3ec506040af68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 28 13:59:56 2014 +0000

    make-fs: Check for error return from guestfs_statvfs.
    
    Found by Coverity.

commit 4a6847034311a1e6f7bd2de84f6bcbe2d0a44c11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 28 12:35:25 2014 +0000

    daemon: parted: part-get-name: Don't leak partition type string.
    
    Found by './configure --enable-valgrind-daemon'.
    
    This fixes commit 820b87016794116c783bd224f2e776cfdf65108e.

commit 98bbf553e572d45eebc26e0c2e56c7f430800166
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 28 09:57:07 2014 +0000

    builder: Use libgnu.la instead of -lgnu.
    
    This updates commit effcb99f838da1c4830b4a6b0cc4394b904376f2.

commit 5a6f63fe9f67a12f163432dab2d69d51dba82ec1
Author: Olaf Hering <olaf@aepfle.de>
Date:   Fri Mar 28 10:44:16 2014 +0100

    builder: Link virt-index-validate with gnulib.
    
    [Gnulib tries to replace getopt because of the bug shown below.
    However because -lgnu was not used in the Makefile, the replacement
    failed. -- RWMJ]
    
    from config.log:
    
                 /* This code dumps core on glibc 2.14.  */
                 {
                   static char program[] = "program";
                   static char w[] = "-W";
                   static char dummy[] = "dummy";
                   char *argv[] = { program, w, dummy, NULL };
                   optind = opterr = 1;
                   if (getopt (3, argv, "W;") != 'W')
                     result |= 64;
                 }
    
    gdb --quiet --readnow ./conftest -ex r -ex bt -ex detach -ex q
    Reading symbols from /usr/src/packages/BUILD/libguestfs-1.26.0/conftest...expanding to full symbols...done.
    Starting program: /usr/src/packages/BUILD/libguestfs-1.26.0/conftest
    Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2
    Try: zypper install -C "debuginfo(build-id)=5d1a12e6f0e95331cc4e39df74ecbd5adb76a1f7"
    Missing separate debuginfo for /lib64/libc.so.6
    Try: zypper install -C "debuginfo(build-id)=a06caa12df8f953a453befa827c3145adaf6269a"
    main(323) result 0
    main(344) result 0
    main(357) result 0
    main(370) result 0
    
    Program received signal SIGSEGV, Segmentation fault.
    0x00007ffff7b2dbf8 in _getopt_internal_r () from /lib64/libc.so.6
    Detaching from program: /usr/src/packages/BUILD/libguestfs-1.26.0/conftest, process 31042
    
    This change actually fixes build for me on sles11sp3 and 11.4.

commit b53ce6286dfc219f0825b4e99af7acf24b1e2808
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 27 15:47:16 2014 +0000

    Version 1.27.0.

commit f34c57475070b11981ec649fe47d2a35dc1702fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 27 11:57:09 2014 +0000

    Version 1.26.0.
    
    New stable version.

commit b0106f77de5f637bf4f013e69744cbfa2d4efe9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 27 11:34:37 2014 +0000

    fish: Check return values from a couple of API calls.
    
    Found by Coverity.

commit a6a7e3a2e8413cd8c1b0e637ddbbaa14a1f2234e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 27 11:33:40 2014 +0000

    fish: Ignore return value from guestfs_user_cancel.
    
    As we are in a signal handler, there's nothing else we can do.
    
    Found by Coverity.

commit 1abb72a288a596513acc18512561765075f7c4da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 20:25:05 2014 +0000

    examples: Check return value from guestfs_list_filesystems.
    
    Found by Coverity.

commit 010bf2e79d30d86261b6a65fc18c8dd73de47ecd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 20:23:19 2014 +0000

    virt-diff: Free memory along error path.
    
    Found by Coverity.

commit a602cbfdd05c2fe52d0d802c811f8da4b274dee0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 20:08:36 2014 +0000

    daemon: md: Whitespace fix.

commit 30e8fa63565242100155cb75acfac6feafd31922
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 20:07:43 2014 +0000

    daemon: ldm: Initialize glob_t struct before passing to glob.
    
    Some implementations of glob might use fields in the struct, although
    not glibc as far as I know.
    
    Issue identified by Coverity.

commit 5832ca0e83cf464ee1f55c5d4eb607067bac2e69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 20:03:15 2014 +0000

    builder: pxzcat: Ignore return value from posix_fadvise.
    
    Quiets warning from Coverity.

commit fb6e28f54a18133431e74960faaa5f880e131c66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 16:53:37 2014 +0000

    Pull latest translations from Transifex.

commit ee9258d8eea0a2f305ce4de47627dae0c9b93162
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 16:47:26 2014 +0000

    Remove the ROADMAP file.
    
    I don't think it provides any value now.  There is a list of bugs in
    'BUGS' and a set of ideas in 'TODO'.

commit 063a0f4d4358b9932ebdf9619ba5c0e76e18281c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 13:35:05 2014 +0000

    Final updates to release notes for 1.26.

commit 21a534b4cf322bd428c29adffaccc324ce18db0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 10:28:36 2014 +0000

    Version 1.25.49.

commit 6d47a1ab578b880af59f3ce122ea52c853379096
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 10:21:38 2014 +0000

    customize: Use --no-network flag so test works under UML.

commit 9c6b5c60471c05caef7d4732b57fe755bf360976
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 26 00:05:45 2014 +0000

    Version 1.25.48.

commit ea32806673f54a7082e235e1e0eaaf9381f90944
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 23:52:51 2014 +0000

    Further updates to the release notes, for 1.26.

commit 7449a39f6b10a999b96c26fe873088f240a0df34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 19:15:06 2014 +0000

    Further updates to release notes, for 1.26.

commit d624d81f305b57ec493769ea7282f90e31df8c03
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 22:41:19 2014 +0000

    customize: Rename main.ml to customize_main.ml.
    
    The OCaml compiler isn't happy when two modules have the same name in
    different directories.  Since customize/ contains a library of modules
    used in other directories, and since those directories may have
    main.ml files too, we need to rename 'customize/main.ml' to
    'customize/customize_main.ml'.

commit 795ee23819c9dbd75820738c796c194dafefed1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 22:09:34 2014 +0000

    customize: Add various options from virt-builder.
    
    This adds the following options to virt-customize:
    
      --attach
      --attach-format
      -m / --memsize
      --network / --no-network
      --smp
    
    This fixes commit 2b208d84db080659badbb70044497aae040592e7.

commit d8801b4b05bc3246a495bf7516b7b65b8b61449a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 22:09:14 2014 +0000

    Add customize subdirectory to ./run script.
    
    This fixes commit 2b208d84db080659badbb70044497aae040592e7.

commit 6ba1c294b0149d6d081218bdad8edbf5dd22b555
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 16:06:25 2014 +0000

    Begin working on release notes for libguestfs 1.26 release.

commit e2a8b90592bf9ac0816cc00b3d8dc93f1c353b26
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 09:50:32 2014 -0500

    aarch64: Use -M virt to specify virtual machine type.
    
    Thanks: Paolo Bonzini

commit 569eea6eac57bcffdd9ea41efa32f7599e96707e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 24 17:34:45 2014 -0500

    arm: Replace #ifdef with #if defined, etc.
    
    No functional change.

commit bd401fb364d00a95d897c49e586b6c83b877311e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 24 17:34:15 2014 -0500

    aarch64: Cannot emulate IDE, like all non-PC.

commit e0bfb1bc67915219a7f1370081d6a466655a8d1e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 24 17:33:51 2014 -0500

    aarch64: This has no working hpet emulation, like ARM 32 bit.

commit 3f6b0e6ea8f2c0b2f8b080d4faf0fa4cad453b0f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 24 17:33:10 2014 -0500

    aarch64: This has no PCI, like ARM 32 bit.

commit 77e2d7a8749c39add68623a66620e95c8e614f71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 13:00:22 2014 +0000

    Open release notes for 1.26 release.

commit 93e330808dd7ee838b34673fd3420a87c52b63ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 13:00:17 2014 +0000

    Update TODO with Python bindings suggestion.

commit 72d7dddda707fcc7a0859396ab802fe9a6f232d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 13:11:23 2014 +0000

    Update API support.

commit b4018ee35c87bdf2369010eb90290dcbf8d10e7c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 12:51:25 2014 +0000

    Version 1.25.47.

commit 6bcb591a9ee72bcd5abf634334b9ef2e6e2832ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 10:46:08 2014 +0000

    Add virt-customize standalone tool.
    
    This includes some simple tests and a manual page.

commit 497029ff09b70f7995affb377f022ea953bbbfc5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 21 13:41:31 2014 +0000

    sysprep: Remove the --autorelabel (and related) options.
    
    The customize module includes an --selinux-label option which can run
    'fixfiles restore' (on most SELinux guests) or set /.autorelabel (on
    some older ones).
    
    Commit 49014f81f350484da725f5ee2bc62bb24268a334 renamed the old
    --selinux-label option to --autorelabel, but note this was not
    included in a stable version of libguestfs.
    
    Note this change leaves a bunch of now redundant code for detecting if
    we created a new file in the guest.

commit c022c28ea0e05bee4bc656e36d2aeec75168789c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 19 15:14:06 2014 +0000

    sysprep: Use customize module for customizing the guest after sysprepping.
    
    Note this removes the following modules (all replaced by 'customize'):
    
     - delete       [--delete, --scrub]
     - firstboot    [--firstboot]
     - hostname     [--hostname]
     - password     [--password, --password-crypto, --root-password]
     - random-seed
     - timezone     [--timezone]

commit ce5724d0a2d1f4086f9bb0d3fcfa3e9f0f94c2a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 19 13:16:53 2014 +0000

    customize: Add a --password option for setting user passwords.

commit 862379808c4cc540b5bdb1e89ce221a0baec3ab4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 17 15:34:31 2014 +0000

    customize: Move virt-customize-related code to a separate directory.
    
    Split virt-builder into build and customize steps, so that we can spin
    off a separate tool called 'virt-customize'.  This commit does not in
    fact create such a tool, but it moves all the common code into a
    library, in the customize/ subdirectory of the source.
    
    Although this is mostly refactoring, it does change the order in which
    virt-builder command line arguments are processed, so they are now
    processed in the order they appear, not the inflexible fixed order
    used before.

commit 0b7d55cf2a42bf4e8d142f23d86f51b1253e3a6a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 21 13:24:38 2014 +0000

    sysprep: Pass debug and quiet flags to all modules.
    
    Also use the Common_utils.make_message_function function to print
    messages (same as virt-builder).

commit 3aae54c96778ff790d6f1e4bbc236cbe28de963e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 21 10:54:11 2014 +0000

    sysprep: Allow order of operations to be specified by modules.

commit 376eb1252523abcfe52a5a8fec24292a2cf43852
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 21 10:47:51 2014 +0000

    sysprep: Perform operations in alphabetical order.
    
    Previously we ran them in essentially a random order, although it
    might have looked alphabetical in some cases because the modules are
    loaded in order.

commit f112218efdd89b288ffa730c23539e09e8355688
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Mar 25 12:00:41 2014 +0100

    appliance: Not all of Grub is needed, only grub-install

commit cfdabba6b83cd663933a108fc79a4e6cd148f43f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 25 10:47:53 2014 +0000

    Update gnulib to latest.
    
    Includes a fix for the missing 'git-log-fix' file.
    https://lists.gnu.org/archive/html/bug-gnulib/2014-03/threads.html#00019

commit fdb1fd8099eade4b893c85d19d8e4b515dc9431a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 24 16:23:38 2014 +0100

    php: raise the per-test timeout to 300 secs
    
    Some tests might spawn an appliance, which will take time on slower
    architectures and on some virtualized environments.
    Hence raise the per-test timeout from the default of 60s to 300s (which
    should be hopefully enough for now).

commit 0030a1bb9490055bcec01dd6b22e48d6d1a2ca4e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 24 16:59:20 2014 +0100

    virt-sparsify --in-place: remove image if discard is not supported
    
    No point leaving it around if the test has been skipped.

commit 8e95cbe0036fd509a7536782d741b412fe373a2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 24 14:18:34 2014 +0000

    po-docs: Do not translate "__AVAILABILITY__" placeholder.
    
    This fixes commit da122e382f3d6d05c5981a3e5f4e3b806e3e37e3.

commit 0dbd7435b92226fde367e710b125de7d3533197d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 24 15:13:13 2014 +0100

    docs: remove customize-related files
    
    The work on them has not been committed yet.

commit b3bf7da0401f3bc040768c2dc2f27735abe5e682
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 23 21:56:29 2014 +0000

    appliance: Fix quoting so that DEBIAN isn't always defined.
    
    Because of incorrect quoting previously, the DEBIAN symbol
    was always defined.

commit 2576a3bb0162fb875dc41b0ebca7e253aa5b7247
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 23 19:40:44 2014 +0000

    Update gnulib to latest version.

commit f11d5a2f0f676c0d88460928af5851b198a11a91
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 23 16:31:10 2014 +0000

    ocaml: Enable parallel builds.
    
    Commit f75142c577255b30f2a8e1d27baa5fd185594197 disabled parallel
    builds in the ocaml subdirectory (which was the correct thing to do).
    This made building the OCaml tests in particular very slow.  Therefore
    fix things so that parallel builds can be used again.
    
    See also discussion here about different approaches:
    
    https://www.redhat.com/archives/libguestfs/2014-March/thread.html#00223
    
    This reintroduces commit dce94f3e266ed3f1fc634a1ef6953f2db1510963.

commit 58a70b1ff43036291649f7af0d965f6552e222b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 23 12:59:18 2014 +0000

    Update Ukrainian translations.
    
    Contributed by: Yuri Chornoivan (via Transifex)

commit 207817192d3d9f705c7c90e3b96ed8b475865b39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 23 12:09:01 2014 +0000

    virt-make-fs: Fix typo in error string.
    
    Thanks: Yuri Chornoivan

commit 3d29b5d78f362a360f8bfe3b677f38b76f6aaeda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 22 14:08:08 2014 +0000

    builder: Fix typo in string.
    
    Thanks: Yuri Chornoivan

commit f91694172a39cf3406fc74424b3f234a6cc533f9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 20 16:57:29 2014 +0100

    builder: do not parse the same repository file name twice
    
    When parsing the repository configuration files, track the file names
    parsed, and in case of same file name in multiple location consider only
    the one in the directory coming before others in the prioritised list of
    paths.
    
    This way it is possible to "shadow" a configuration file in a system
    path with one with the same name in a local directory, for example.

commit 37a03a796aea98eafdb95deddc34a7b26f709b78
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 20 16:35:15 2014 +0100

    builder: allow the index parser to parse files with no sections
    
    Gracefully handle files with no sections; extend the validate.sh test
    to try to validate an empty file.

commit 0c8edf300e1e8c1c8178eef2e069fe5eb71e791f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 20 16:23:43 2014 +0100

    builder: allow to run website tests under valgrind

commit 7cf724f117daafe42d654704499619b011e8fb33
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 20 15:28:57 2014 +0000

    Version 1.25.46.

commit 07685566323c8ae2b006b1187ac5c68af6486fb2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 20 15:24:34 2014 +0000

    php: Include new location of tests in EXTRA_DIST.
    
    This fixes commit 251a1934c9bcfe9727b011a4d8bfc4b769b3b744.

commit 589c2dc6d90cc1053dd9075f91b36b61c01414a5
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 20 14:47:04 2014 +0100

    builder: clean the parsing structs on error

commit 246c5194fce82fe7120879d0dc459839c7bac5cd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 20 14:43:57 2014 +0100

    builder: rename and make public the section/field free functions
    
    They will be needed also elsewhere.

commit 8c5a2c47a2b4c150dfa3a177bb431aec39d1371d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 20 12:40:16 2014 +0100

    builder/virt-index-validate: try to cleanup in any occasion
    
    Always close the file (ignoring its result) after a parsing, and cleanup
    the parse_context object before any exit().
    
    This eases the debugging of memory issues in the actual parser.

commit c7963a1defbf0a3ab70d19d8adf1b8ee5b564b6b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 20 14:34:58 2014 +0000

    Revert "appliance: Remove genisoimage from packagelist."
    
    This reverts commit cd996642e04ef3293e1d8de2df7222b4e8fe8bc1.
    
    The daemon uses 'isoinfo' which is part of this package.
    
    Thanks: Pino Toscano.

commit dfe582509961b910add74f6d0b9f5cf1b0f98220
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 20 13:49:19 2014 +0000

    appliance: Remove genisoimage from packagelist.
    
    It is not used by the daemon as far as I can tell.

commit 160dc1632c64adc78865c44b3f416752a7cc54fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 18 15:30:03 2014 +0000

    podwrapper: Remove =encoding from input files and add it back in podwrapper.
    
    This changes podwrapper so that the input (POD) files should not
    contain an =encoding directive.  However they must be UTF-8.
    Podwrapper then adds the '=encoding utf8' directive back during final
    generation.
    
    This in particular avoids problems with nested =encoding directives in
    fragments.  These break POD, and are undesirable anyway.

commit ed8b91943902bdf378747c8154030dd12345bf9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 18 15:19:37 2014 +0000

    po-docs: Filter the po4a warning and =encoding line.

commit c792cb4349bc00ee2b5023a1f088c325abd62003
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 18 15:06:44 2014 +0000

    po-docs: There are no *.pl files in the po-docs subdirectories any longer.

commit 9e11818292041087ce1d755512efd5f033da21f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 18 12:49:45 2014 +0000

    generator: Generate copyright notice in generated POD fragments.
    
    Using =begin comment ... =end comment.

commit 8ea9abdf46edb4997ef8d1ac75bb476078afdcc1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 18 12:43:34 2014 +0000

    podwrapper: Give an error if an --insert or --verbatim pattern is not found in the input.

commit 064d16c3f5b655fa311de7d585c5d639be266a64
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 19 18:30:58 2014 +0100

    tests/run-xml-to-junit.xsl: allow to define a different classname
    
    Read and use the classname attribute in each test if present, falling
    back to "TestSuite" (used so far).

commit bdaf60fca8718177d34382aa6d1522602c570f8c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 19 16:48:20 2014 +0100

    builder: show the application name in errors of the index parser

commit 7b34f6a1fa16cc6cf095762428a1407df13b0f28
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 19 16:14:34 2014 +0100

    builder: show the file name in errors of the index parser

commit 064b54b10bfc5321c3b960391945b81e36446bdb
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 19 15:42:45 2014 +0100

    builder: make the C index parser reentrant
    
    Switch the lex/yacc parser into reentrant mode, to ease the handling of
    parsing-specific data; introduce a new parser_context struct for that,
    which is added as extra data to the parser.
    
    This should cause no behaviour changes in the parsing, just no more
    global variables used for getting data in/out the parser.

commit 1d506dc2fec47828bb54cc199dd911296583ef41
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 18 15:12:26 2014 +0100

    php: move tests under a tests subdirectory
    
    This eases fixes the classname in the junit output of run-tests.php,
    which now can be properly handled by junit XML consumers.

commit 8bc849de4138e68ec6a3c4b2d03cbdd8d5b78dbf
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 18 14:38:02 2014 +0100

    php: make the test suite failures fatal
    
    So far the failure of some test would have not reported a non-zero
    return value by run-tests.php. Since now all the PHP tests pass, we can
    ask for failures to be fatal, by exporting REPORT_EXIT_STATUS=1 for
    run-tests.php.

commit ec3135a440e240f014e52766ed48e020ead76ea0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 17 21:05:18 2014 +0000

    build: Disable a couple more ineffective warnings.

commit 36a28e987cac5c3501d31a8bfd58554e65b06413
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 17 19:54:16 2014 +0000

    Annual scavange to find mixed declarations and statements.
    
    Hopefully this is just code motion.

commit 3dbf133d298dc755af063cadc9d5aa4de112647d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 17 18:56:57 2014 +0000

    build: Remove -Wno-declaration-after-statement.
    
    We have generally forbidden declaration-after-statement in our code
    (although there are plenty of places that do it).  In any case this
    warning is not in the default set, so we don't need to turn off the
    warning.

commit a0757f875ecd78aa6ea31e5251f390943d52b5ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 17 12:02:58 2014 +0000

    virt-sparsify --in-place: Exit with code 3 if discard is not supported.
    
    Also skip the test in this case instead of failing.

commit d66116a635c5620b16f2c686208d01cfa686f087
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 17 12:21:39 2014 +0000

    mllib: Allow exit code to be specified when calling 'error' function.

commit 86766cfaf908a5205e2ed4be436d4c684741b14a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 17 12:02:28 2014 +0000

    launch: Return errno == ENOTSUP if discard is not supported.

commit e6bcb6ecc7522198320e16b5059db76d77392f84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 17 12:10:15 2014 +0000

    ocaml: Add Guestfs.Errno submodule exposing useful raw errno numbers.
    
    For use when calling G.last_errno.

commit 0601e6bce6799f27dcda8500476fd78fb5f795d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 16 22:55:52 2014 +0000

    Version 1.25.45.

commit 829a2e69044355ac0cf3a30f522ee4cce74b29db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 16 22:55:24 2014 +0000

    Add tests/run-xml-to-junit.* to EXTRA_DIST.

commit ce31d4a69da65f58bd9041000899ae0568426961
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 16 22:44:03 2014 +0000

    tests/regressions/rhbz895904.sh: Rewrite without multi-line expression.
    
    RHEL 6-era bash cannot handle the multi-line $(...) expression in the
    original code.  Rewrite the test so it is semantically the same but
    doesn't have the expression that old bash can't handle.

commit 43646b326d9391b1c679ef88b7bf1995160cda7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 15 15:46:54 2014 +0000

    appliance: init: Remove unnecessary comment, whitespace changes.

commit 50798dfcf7d5774d7ac844afc0b9d7942f1790c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 14 13:20:22 2014 +0000

    tests/discard: sync before close isn't necessary.
    
    However we should be calling shutdown, since we're writing to the disk
    and need to catch qemu errors.

commit df4985e8c5b764e6e6e5cf60bcc465f0b8a5ee26
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 14 13:14:24 2014 +0000

    tests: fstrim: Sync before running fstrim.
    
    This makes fstrim work.  It's not clear why exactly.
    
    Thanks: Paolo Bonzini.

commit c8897639aef3979ee001f9257875536f77c32e9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 14 13:00:43 2014 +0000

    Revert "tests: fstrim: Remount the disk."
    
    This reverts commit accf1b66aa835714690a2979e990c49243875dab.

commit f31e6a33162e47dcf74b54e596a273cdaa22e4bd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 14 11:24:22 2014 +0100

    tests: skip the output of test-virt-rescue.pl from RUN_OUTPUT_FILE
    
    The output of test-virt-rescue.pl contains non-ASCII chars which give
    troubles when being XSLT-transformed, so just avoid its output to leave
    the rest of the resulting XML well-formed.

commit ff84d5cb56cfcc24f9d7e8dc0ba7914da24bd966
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Mar 14 10:37:36 2014 +0100

    tests: provide a simple way to extract the tests data from run
    
    If the RUN_OUTPUT_FILE environment variable is set, "run" will output
    to the file indicated by that snippets of XML with the results and
    outputs of the tests run.
    
    Together with the run-xml-to-junit.sh (and its associated
    run-xml-to-junit.xsl style sheet) it is possible to convert that output
    file to a jUnit-like XML file, which could be used in CI systems.

commit af3ec2456ce9f7ce99c2c310ae2d779008b7e809
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 14 10:09:47 2014 +0000

    tests: fstrim: Remount the disk.
    
    This makes fstrim work.  It's not clear why exactly.

commit 115a04c2d31a525396d387b801661a2c640e1138
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 14 09:15:49 2014 +0000

    tests/discard: Ensure a significant number of blocks are freed up on the host.
    
    It's reasonable to expect megabytes will be freed up and given back to
    the host.  Previously we just tested that at least 1 block was
    released.  This test checks that at least 1000 blocks are released
    (since stat(2) returns blocks of 512 bytes: 512 bytes * 1000 = approx 0.5 MB).

commit aaa15668601c4025cec877cf9092a42279b17ed8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 13 13:50:23 2014 +0000

    gobject: Don't ignore old generated files.
    
    This was ignoring an old generated file (gobject/guestfs-gobject.h)
    which, if still around, would break the build.

commit 8b8e5a3384ba1737b618117c41dc63a14ca4901d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 13 13:01:14 2014 +0000

    gitignore: appliance: Don't ignore some files which are now obsolete and should be removed.

commit e8615a6b1e671dfbc4b1372f8e228506e2870c81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 13 10:56:29 2014 +0000

    Version 1.25.44.

commit ba4846a85705db57f293ff3c787c7b29112713de
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Mar 13 10:24:04 2014 +0100

    php: fix crash with OStringList optional arguments
    
    Properly initialize the variables for them to NULL, so there is no crash
    because of trying to use rubbish pointers.
    
    Kind of followup of commit 289fd29f0bfbb94566d9780dd8ac3fe15e55541d.

commit 40342edea803b7397a895095070d55e73e4150ee
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 12 19:29:56 2014 +0100

    php: remove the custom "env" loading in tests
    
    Other than being too late for changing environment variables like
    LD_LIBRARY_PATH, now it is no more needed.

commit 6e4259dc46cc9617c048219c36cfd46452062f7c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 12 19:24:39 2014 +0100

    php: add a custom PHP runner for tests
    
    Since the default PHP test runner ignores a good number of environment
    variables to potentially tampering the test suite execution, create a
    custom php-for-tests.sh script which does nothing more than sourcing the
    custom environment that our run-php-tests.sh outputs and running the
    actual "php" executable (the one found by configure).
    
    This fixes the loading of the guestfs_php.so module in the test suite,
    as the libguestfs.so.0 library can be found by that module.

commit 7157b7b1943b844b0fa09747b3121acb65646a4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 13 09:13:04 2014 +0000

    appliance: Fix 'make clean' in appliance subdirectory.
    
    Commit 71dfd73042db24217329d815bf5eab26f413d97f broke 'make clean' in
    the appliance subdirectory, so it would remove all the supermin.d/*
    files, but without removing stamp-supermin so you couldn't rebuild
    supermin.d/ with a 'make' afterwards.
    
    In any case, 'make clean' is not supposed to delete the appliance
    (which is expensive to rebuild).
    
    Fix this so that 'make clean' doesn't remove supermin.d/* files.
    'make distclean' can be used to delete this, and since it also removes
    stamp-supermin, it will be recreated properly by 'make'.

commit 0a39e9ef58e4573ad47e51b605c55b8364fd9889
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 12 21:41:08 2014 +0000

    FAQ: Make issues which will be fixed in libguestfs >= 1.26 / supermin >= 5.

commit 348916c9e0b166135b1ac5db274ff2e51471d624
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 12 21:40:16 2014 +0000

    FAQ: Remove section that only applied to obsolete Fedora & RHEL releases.
    
    Since this is fixed in all currently supported versions of Fedora
    & RHEL, there's no need to document the problem in the FAQ.

commit 2d15c79e84d6c644ca7d401299d2ea3f7285c180
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 12 21:39:18 2014 +0000

    FAQ: Document virt-sparsify >= 1.26 can do in-place sparsification.

commit ee19fb5277a1412176f779419adcb75cd1f4ad17
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 19:10:52 2014 +0000

    sparsify: Add a test of the virt-sparsify --in-place option.

commit fb78bb93fad728bdd83dec7362b6dd0f9606698d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 18:28:49 2014 +0000

    sparsify: Add virt-sparsify --in-place mode.

commit 1f3c5de6bca9e31d8daf51023a692d447da10460
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 14:29:38 2014 +0000

    sysprep: Add disks with discard = "besteffort".
    
    Since virt-sysprep tends to delete a lot of files, adding discard
    support to it makes some sense.
    
    Note that this probably won't have any effect for most filesystems
    since:
    
    (a) ext4 mounts also need to use -o discard,
    
    (b) ext4, and maybe others, require you to call fstrim explicitly,
    they don't discard automatically (except for userspace tools like
    mkfs.ext4 but that doesn't apply in this case).

commit c107ffb7045df6073d335764315450341ef67d2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 14:20:53 2014 +0000

    virt-format: Discard the data on the disks.
    
    If possible, this means that the host will be able to reclaim most of
    the space used by formatted disks.

commit f899cb1bc89bfc09022c03f050b79c73135a42b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 14:40:38 2014 +0000

    Pass discard parameter from add-domain to add-drive.
    
    Allow callers to specify that all the disks from a domain are added
    with a specific discard mode (instead of always having discard
    disabled).

commit 1e97637dd255b7daeae7128377754fd6b81803ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 14:40:38 2014 +0000

    Pass cachemode parameter from add-domain to add-drive.
    
    Allow callers to specify that all the disks from a domain are added
    with a specific cachemode (instead of always having to use the
    default, writeback).

commit 26d77f957a02650a5fe9ae1fe253cf1782d807b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 10 14:17:49 2014 +0000

    tests: Add tests of discard support.
    
    Test that blkdiscard, -o discard, and fstrim work in reality, end-to-end.

commit 37ebbbe8ae411acb4bb19a528ff482b7da21a4a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 19:01:35 2014 +0000

    New API: blkdiscardzeroes - do discarded blocks read back as zeroes?

commit 718954ca9ea864a19318824b8cc2b69a7ef6247f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 13:14:23 2014 +0000

    New API: blkdiscard - discard all blocks on a block device.

commit f1e7f506bc1b4782e00060481b21e88696a22a75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 9 15:24:31 2014 +0000

    New API parameter: Add discard parameter to guestfs_add_drive_opts.
    
    This adds a discard parameter to guestfs_add_drive_opts which
    approximately maps to the discard=ignore|unmap parameter supported by
    qemu.
    
    If discard is set to "enable" then we force discard=unmap (and try to
    fail if it is not possible).  If discard is set to the more useful
    "besteffort" option, then we enable discard if possible.  The default
    is "disable".

commit be7da73b8107021936fdf4f8364e4136ef46eaec
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 12 16:07:55 2014 +0100

    builder: fix typo in comment
    
    Followup of commit b1cf6246f3c80762cf27dbdb24168589a34daf00.

commit dc1863162e9647d07a95e9363f51998803a475cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 18:03:13 2014 +0000

    sparsify: Move copying-mode code to a separate file.
    
    This is just code motion.

commit bf35abc3c342e919d0f02d11d560a515c11d62dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 16:00:40 2014 +0000

    sparsify: Refactor command line parsing to pass back a mode.
    
    This is just code motion, but sets the ground-work for adding a second
    mode (in-place image modification).

commit c623e7211493f4bdc24a3a4567ea3e4bc181bab1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 15:40:17 2014 +0000

    sparsify: Move command line parsing code to separate file.
    
    This is just code motion.

commit cd68a6061424547bda137ae943b864dfb9a04ab6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 15:39:57 2014 +0000

    sparsify: Remove unused 'open' directive.

commit 76e2068dc4ac47392fe1f2e45a2d657d33cebafd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 15:32:35 2014 +0000

    sparsify: Capture any exceptions and display nicer error messages.
    
    This is just code motion, there is no functional change.

commit 2539403ad962875f515b01129b067f60142a21ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 15:32:04 2014 +0000

    sparsify: Remove unused variable definition.

commit 76db9c0485a7c2b16de5d0c8b3d647047bf40cf7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 9 19:18:52 2014 +0000

    launch: libvirt: Move the is_kvm flag (derived from libvirt capabilities) to backend data struct.
    
    This is just rearranging the data between structs.  There should be no
    functional change.

commit a02d64b1650babdc4888e9f8586f3495b5b3706d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 12 13:41:39 2014 +0000

    daemon: fstrim: Fix fstrim so it trims the correct filesystem.
    
    We didn't call sysroot_path, so it was trimming the appliance instead
    of the guest filesystem.

commit 5e6ebb310667ed43c80bf66a046ff48a23b128c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 21:54:13 2014 +0000

    daemon: fstrim: When debugging, capture and print fstrim -v output.

commit e120845e257b2c051f9fb011059402ffdd7f73da
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 12 15:06:55 2014 +0100

    builder: complete architecture handling
    
    Add the possibility to choose which architecture use to build the wanted
    image (--arch). Since this implies that running commands on the guest is
    usually not possible when the architecture is different than the host
    one, virt-builder will nevertheless try to check whether the host is
    compatible with the guest, allowing to run commands only in that case.
    
    The caching scheme is adapted to account for the architecture (with
    --print-cache showing the architecture as well).

commit 5f86b295e6033a7848fe1aa3dedd2c903acb2d16
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 12 15:05:24 2014 +0100

    builder: show the architecture in the short --list output
    
    Just like the other --list output formats provide the architecture, show
    them also in the short format.

commit e6a58050a1f4ccc9da46b6cdf4af2a383b312c60
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Mar 12 14:50:15 2014 +0100

    drivers: group drive creation params in an own struct
    
    Group together all the various parameters (except the guestfs handle)
    passed to the create_drive_*, to avoid passing all of them at every
    function call.
    
    This is mostly an internal refatoring with no behaviour change.

commit 2e66b9c177b9a061498cd587c1485a03c50e9d68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 22:11:32 2014 +0000

    appliance: Cosmetic rearrangement of supermin.d/* targets.
    
    No functional change.

commit 49d126c0b75ac39f156a96de5a1255239735d5e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 11 22:10:43 2014 +0000

    appliance: Don't rebuild everything if just the daemon changes.

commit cd15360bd36f410fc56906a9a8aac1adea688070
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 11 15:57:35 2014 +0100

    builder: add languages.ml to POTFILES-ml
    
    Followup of commit 3cffc28834d40d1debe8ebb826b8a5564ce8479b.

commit 14c67d2d8413f894248349a40778d9ead8adff26
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 11 14:25:39 2014 +0100

    builder: output translated notes also in --notes

commit 1196e089cc854446ecaaf558cee3132279d82bac
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Mar 11 14:20:22 2014 +0100

    builder: move some language-related code into a Languages module
    
    Mostly code motion, no behaviour changes.

commit 304922c57336b545499f05809ec21965206060b2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 10 13:42:16 2014 +0100

    builder: use Filename.check_suffix
    
    ... instead of manually extracting and checking the suffix by ourselves

commit 484e9e9e555f3c274adaa408bca81b0f9d6145f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 8 12:57:23 2014 +0000

    Version 1.25.43.

commit 0d516178e94095c17c83ca9cc1d938d3d44261bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 8 12:41:20 2014 +0000

    java: Complete test suite.

commit 8dfd47c1a64ad1b3adf3079019dc3b9a4b953fb8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 8 12:29:00 2014 +0000

    java: Document how to compile and run Java programs.

commit d9e7cf0b97d6edf55298eee0b06fe3205f6a0e90
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 8 12:13:46 2014 +0000

    java: Document how to use optional parameters in the guestfs-java(3) man page.

commit 4f9230cce42be79da6a54849ba4f6529365516e2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 7 15:04:13 2014 +0000

    java: Add regression test for RStruct/RStructList (RHBZ#1073906).

commit 8783b7b6792f284028b40c7b4c129ea3bda9c23b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 7 15:04:47 2014 +0000

    bindtests: Fill in all fields in dummy lvm_pv struct.
    
    Used for testing RStruct/RStructList return values, but only
    in GObject and Java bindings.

commit 26dc67be91499b152503c0537d16848ef353f932
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 7 14:34:55 2014 +0000

    java: Use correct Set*Field JNI accessors to set fields of the appropriate type.
    
    Using the wrong accessors (somehow - I have no idea how) caused other
    fields in the struct to contain incorrect values.

commit 62625d355c23e6ffefa5d53966f2183b5924b9c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 7 14:25:14 2014 +0000

    java: Factor out common field code in RStructList.
    
    No functional change.

commit 40dc8a537d6d318cdc10a1c29b7287f22cba3dab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 7 14:01:28 2014 +0000

    java: Split long lines in generated output, and add other whitespace.
    
    No functional change.

commit 3d93dd1cd2af76437f30b7e68106599e5bcaa1c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 7 13:49:52 2014 +0000

    java: Fix bogus construction of all RStructList returned values (RHBZ#1073906).
    
    Thanks Maarten on IRC for spotting the problem.

commit 102a0e8778f012fee46c1753f1e9a8b5b5da35b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 7 13:26:16 2014 +0000

    java: run: Add java/.libs to LD_LIBRARY_PATH so JVM finds the right JNI file.

commit eef27fdd87e4d351ab4d76a5ce745f8e9e176115
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sat Jun 1 15:12:27 2013 +0200

    Allow gnulib tests to be disabled.
    
    RWMJ:
    
     - Patch taken from Debian downstream package.
    
     - The default in the original patch was to disable the tests.  I have
       changed this to default to enable them instead.
    
     - Removed AC_SUBST as the variable was not being used.

commit cc4f511e73de0267bbe323d54cc41e459ca64bc9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 6 15:59:35 2014 +0000

    Version 1.25.42.

commit 68e4e09ff373382f384096f148109d4f86b09585
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Mar 4 22:24:52 2014 +0100

    Remove two more files that are generated by configure

commit 81a7fb4c72d8acc1f28d1688bf84741b9bb428b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 5 16:12:53 2014 +0000

    tests/md: Remove bogus test skip which tried to appliance hostfiles.
    
    This file no longer exists since supermin >= 5.
    
    Bug identified by Pino Toscano.

commit 9d6545c74bd80479bd7d7ec4f2ea93161fd5718c
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Mar 4 19:17:40 2014 +0100

    Debian: Add systemd-related libraries (for guestfsd) to packagelist

commit 0e94eb7d411dca49d1cbda90e871064990458dad
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Mar 4 18:56:07 2014 +0100

    Do not ship test-qemu-drive-libvirt.xml with tarball as it is generated by configure

commit 6125f4cb223b2c281835007ac0d15df450a8a265
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Mar 4 00:00:02 2014 +0100

    Fix out-of-tree build: Do not accidentally build mllib components in srcdir

commit 867fd533d9b4d95843e909cdc067ab0de064ac66
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Mar 3 23:58:57 2014 +0100

    Fixes for various tests in out-of-tree builds

commit 29f43f4110bbcebb894dc97cb577bd577ef417d2
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sun Mar 2 19:18:18 2014 +0100

    Fix out-of-tree appliance build

commit f49fe393901ad6f075c5c60150966dc3acf953be
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri Feb 28 19:58:04 2014 +0100

    More fixes for situations where ocamlopt is not available
    
    - run bindtests.opt only if available
    - use ocamlc -custom
    - Don't try to install native code if it hasn't been built (Thanks to Olaf Hering)

commit c7e1d94b30985cba40466f7e6acc3564f40aad18
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 3 22:06:58 2014 +0000

    Version 1.25.41.

commit 5ee3fe230d124dcf0ffa3336d10956e4abe1adc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 3 21:58:42 2014 +0000

    appliance: Ensure that supermin.d directory is installed properly.
    
    Commit 0a966727abc83550d2026886eac2440c99e6cb5e had a missing
    backslash in the list of files, so that 'make install' didn't install
    all the files.

commit 611f4e13c997b05ee5478479dffe455c76e8a30c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 3 17:20:43 2014 +0000

    Version 1.25.40.

commit 3da3c9b4e343ed526ff31f2d1693b79d9cb94d02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 3 17:21:55 2014 +0000

    Add new logo to EXTRA_DIST.
    
    This fixes commit d73531a0aa691ff961366afee4db2c99a40510b6.

commit 9a142416e3662b5a8880b2c89537e7a8b7bfc2c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 3 13:43:35 2014 +0000

    appliance: Remove conditionals in appliance/Makefile.am.
    
    If appliance is disabled, the whole appliance/ subdirectory is
    skipped.
    
    If appliance is enabled, we can assume that the daemon is enabled too
    (see previous commit) so we don't need the conditional code.  That
    conditional code didn't work since the supermin 5 rewrite.

commit e7538ef013258e4673537211c60b190a70949c3e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 3 13:41:59 2014 +0000

    build: Don't allow --disable-daemon and --enable-appliance together.
    
    This makes no sense, since the daemon is contained in the appliance so
    you cannot build a (meaningful) appliance without having a daemon.

commit 1d8d374e29dea195e586bf35e47eb7a1785970bd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 3 16:28:14 2014 +0100

    builder: install a $sysconfdir/virt-builder -> xdg-virt-builder symlink
    
    This way "virt-builder" appears directly in the sysconfdir.

commit da42a0184e4084bd026efdfc2900a9476320eae4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Mar 3 14:25:12 2014 +0100

    run: add the builddir of inspector to $PATH

commit 493b38f81293ed115d7420e493e9dfe8976ba253
Author: Hilko Bengen <bengen@debian.org>
Date:   Sat Feb 22 12:26:40 2014 +0100

    Debian: Strip Lintian overrides, initramfs-related stuff from appliance

commit 793cf568c17aafbe505e891812400e8ef1ebcbec
Author: Bastien ROUCARIÈS <roucaries.bastien@gmail.com>
Date:   Fri May 17 10:11:37 2013 +0200

    remove last trace of ntfsprogs

commit 07560177dad46aa44c38a6d16451a7acadafa160
Author: Hilko Bengen <bengen@debian.org>
Date:   Thu Aug 11 00:24:11 2011 +0200

    Fix for systemd-based Debian systems

commit 680f46481bfd8d5fbe65b2029978a63d436791cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 3 12:08:21 2014 +0000

    logo: Make the 5 years text larger and more readable for website.
    
    This fixes commit d73531a0aa691ff961366afee4db2c99a40510b6.

commit 10bbb884efd584ee7504e62869bd31ae27247526
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 3 11:55:01 2014 +0000

    logo: Add fish logo with 5 years star.

commit 14ff0088796563f729f8bdf29ab56210e364eff9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 2 19:30:28 2014 +0000

    appliance: Cosmetic change to the order of command line arguments of 'supermin'.

commit 5101da99c3de42808e0dec1829d19e2a8699aa58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 1 16:26:12 2014 +0000

    Version 1.25.39.

commit ba7f660d7b53a2e1006f85b5f9a99c87ccf617b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 1 15:49:54 2014 +0000

    configure: supermin should be listed as AC_PATH_PROG, since it is used at run time.
    
    See top of configure.ac:
    
     > # NB: AC_CHECK_PROG(S) or AC_PATH_PROG(S)?
     > # Use AC_CHECK_PROG(S) for programs which are only used during build.
     > # Use AC_PATH_PROG(S) for program names which are compiled into the
     > # binary and used at run time.  The reason is so that we know which
     > # programs the binary actually uses.

commit 5b9620ee4731f80fa9c35f7fd11c30626c84abdc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 28 22:48:20 2014 +0000

    mageia: Add distro setting and extra packages needed by Mageia.

commit 3bd5ec637a608c1628b9db2f4f1ee038a70f4ad7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 28 14:20:08 2014 +0100

    builder: add libguestfs.gpg to EXTRA_DIST
    
    It needs to be in EXTRA_DIST, otherwise it is not put in the dist.

commit 4d6a605662bc1c1f6781721e65b2b4ec96537f35
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 28 13:14:33 2014 +0100

    tests/luks: disable if luks is not available

commit 017fcfb07d7ccaa4a675467e5681105b2de75f97
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri Feb 28 14:35:56 2014 +0100

    Fix building on architectures where ocamlopt is not available

commit 95c24b85dabc090eb6fa4dcdee5b2748ac903b98
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 28 13:36:05 2014 +0000

    launch: libvirt: Fix unused variable when libselinux is not installed.

commit d3f2b13450222bc3977fee7b641447aa400d539e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 27 12:36:13 2014 +0000

    appliance: init: Don't write to /proc/sys/kernel/hotplug when starting udev (RHBZ#1020806).
    
    /proc/sys/kernel/hotplug is an obsolete interface for processing
    hotplug events.  It is not used by modern kernels, which should set
    this path to the empty string (because they have
    CONFIG_UEVENT_HELPER_PATH="").
    
    Unfortunately our udev initialization code did:
    
      echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug
    
    which was intended to set this file to \0 bytes.  However on Debian,
    where /bin/sh is "dash", not "bash", this writes "-e" to this file,
    which breaks udev events.
    
    Thanks: Peter Rajnoha for solving this.
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1020806#c10

commit 3561092d504db816c5bb12a90d11ec3cb31549be
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 25 17:29:13 2014 +0100

    builder: update documentation
    
    Update the documentation according to the new .conf files structure, the
    drop of VIRT_BUILDER_SOURCE and VIRT_BUILDER_FINGERPRINT, the drop of
    hardcoded source and its key, etc.

commit dcf4f86326227d51612f92307cbe200214721911
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 25 17:29:12 2014 +0100

    builder: remove the default fingerprint/pubkey
    
    Sigchecker can still import keys from the user's keyring, so there is no
    need to hardcode fingerprint and key of the index hosted on
    libguestfs.org (which is now pointed to using a .conf file).

commit bf79405626481f2e942441368bc9bbffac55572a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 25 17:29:11 2014 +0100

    builder: remove VIRT_BUILDER_SOURCE and VIRT_BUILDER_FINGERPRINT
    
    Drop these two environment variables, and the implicit hardcoded source
    hosted at libguestfs.org.
    This means all the sources must be provided as .conf files, or at each
    invocation with --source.

commit e61e1c4543bff7cdf0bb01aec0921081c5d758ea
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 25 17:29:10 2014 +0100

    builder: switch sources to .conf files
    
    Introduce and use simple .conf files to configure the sources of indexes
    for virt-builder. The location of these files is in XDG_CONFIG_DIRS /
    XDG_CONFIG_HOME, so it can be easily overridden.
    
    There are three .conf(.in) files shipped with this commit:
    - "test-index.conf.in" (in "test-config"), which points to the
      "test-index" index (used in tests only); the tests are adapted to
      point to the hierarchy containing this .conf
    - "libguestfs.conf.in" (in "test-website"), which points to the local
      "index.asc" (i.e. the offline copy of the libguestfs.org index);
      run(.in) will point to the hierarchy providing this .conf
    - "libguestfs.conf.in" (directly among the other sources), which points
      to the online "index.asc" and it is installed in sysconfdir, along
      with the key of this repository
    
    The tests are adapted, other than to the different way to pick sources,
    to the different output of --list, as "test-index" is not signed.

commit 10d5b9622e4ca9ebea3170d994a22066b5f8dce7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 25 17:29:09 2014 +0100

    builder: extract the default key to file
    
    This is basically default_pubkey from sigchecker.ml, just extracted as
    file. Not used right now, but will be in the future.

commit 766ba8ff3f39a05ac149346ff913156cda60a093
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 25 17:29:08 2014 +0100

    builder: add functions to read XDG_CONFIG_DIRS and XDG_CONFIG_PATH

commit c3537ee19ab585729c53ab3bc55b18cd11b0e9e0
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 25 17:29:07 2014 +0100

    builder: use Sigchecker.gpgkey_type for the fingerprint
    
    Use Sigchecker.gpgkey_type instead of just string as type in the
    sources list; adapt the listing code (and its expected output) to that.
    
    No behaviour change which eases a bit the addition of new sources with
    other key types.

commit 99f833ee2684b02e6da9456fdaf03d656fe4834f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 25 17:29:06 2014 +0100

    builder: allow "no key" as key in Sigchecker
    
    Additional way to distinguish no actual key available for signature
    checking; make sure to not allow signing in such situation.

commit d1631a2b96fea3cea96c964b010b58bbaa514cdc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 27 09:58:47 2014 +0000

    appliance: init: Initialize LVM in the same way as done on physical machines.
    
    Running vgscan appears to be unnecessary.
    
    The -aa option of vgchange activates LVs.
    
    The --sysinit option disables locking.

commit 6a71375d40e8e2c57554c0e8449de1993f40bd37
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 26 19:41:07 2014 +0000

    Version 1.25.38.

commit a50034f3d977d0578bf633283059889113552cad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 26 10:10:20 2014 -0500

    appliance: Initialize local variables because gcc cannot track that they are not used uninitialized.

commit 4ec07a3debf352002bf22fba16fe844b1c5addbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 25 16:08:13 2014 +0000

    appliance: Use supermin >= 5.
    
    This requires the new version of supermin (5.1.0).

commit 2c764258bf6606669ad7285b7a82da4ea7b69a17
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 24 20:13:41 2014 +0000

    builder: Add arch= entry for Cirros.
    
    Thanks: Pino Toscano.

commit ceceb882656dcd3eaec189f2b466565ff3293c84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 24 15:43:13 2014 +0000

    builder: Add arch=x86_64 entries.

commit 85bce4e31886f60923811fa561b3b97f7100cca6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 24 15:40:29 2014 +0100

    sysprep: use Mkdtemp to create the temporary directory
    
    Use the safer mkdtemp instead of manually creating a path.

commit 242f6e3e330534e5cb60b5768c3ca5066e82e0d3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 24 15:08:03 2014 +0100

    builder: split INI C <-> OCaml glue code in own module
    
    Move in an own module the code which calls the C
    virt_builder_parse_index and does the array -> list conversion of the
    result. This way this code can be easily called also in places different
    than Index_parser without the need to copy the types mapping, etc.
    
    Just code motion, no actual behaviour changes.

commit 25297c75d25fe988a72e552d189ecd2d73d0e681
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 24 11:31:35 2014 +0100

    builder: add a mandatory 'arch' key in index files
    
    Introduce a mandatory arch= key in all the entries of index files, to
    identify which architecture is each. Adapt the long and JSON list
    outputs to print also this new field.
    
    This introduces an incompatibility with index files created with
    virt-builder < 1.26, as they will be rejected until entries will have
    the arch= key added (which is ignored by older virt-builder, so adding
    it will not create backward-compatibility issues).

commit 0b0c63940dcbd23467fda9a1c55ba5ab27a27597
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 21 16:46:14 2014 +0000

    Version 1.25.37.

commit 1cc1354cec16232e3bc6aa0b260e1ebfe5cad233
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 21 15:21:08 2014 +0100

    builder: allow Sigchecker to import keys from file
    
    Extend Sigchecker so it allows both fingerprints (to be imported from
    user's keyring, as before) and keys stored in files. To simplify this
    process (and have the fingerprint always around), the key is imported
    on Sigchecker.create time, instead of lazily at the first verification.

commit 183bdf25fd520f737a7bbf6eaeb226ad0f524f1c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 21 14:39:57 2014 +0100

    builder: use a disposable GPG keyring for every Sigchecker
    
    Create a temporary directory and tell gpg to use it as homedir, so
    imported keys do not get into the user's keyring. This also avoid
    importing the default key  when a different one is needed to check the
    signature.
    
    The only exception is when a non-default fingerprint is used: in this
    case, that key is read from the user's keyring, since it is where it is.

commit 86b3968e0560ab1c475a96e714550292f74f663e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Feb 21 14:34:36 2014 +0100

    mllib: add a binding for mkdtemp
    
    It seems OCaml has no way to safely create a temporary directory, so add
    a new binding to C's mkdtemp which does that.

commit e847c67a6cd2a1ee4a5125f91ac8ccc4b6e84eb2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 21 08:31:34 2014 +0000

    builder: Add ScientificLinux 6.5.

commit 14f148851458a1f92c8847ccf2ca675b06d9d5f7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 20 11:37:49 2014 +0100

    mllib: add an hook to cleanup directories on exit
    
    Much similar to unlink_on_exit, but recursively cleaning directories.

commit 6bdef8fad941625d1c94ac93234c99970b2b489a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 19 16:40:00 2014 +0100

    builder: accept also '_' in group names

commit d5a3f08405895ea2ae66fcc03d604143bbac0eac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 18 17:43:06 2014 +0000

    ppc64: Don't add -no-hpet with the direct backend either.
    
    Related changes in commit 479665e4fc31b94cd9372394bb9c97e8f87b6ab5
    and commit 62cb3a606d4b349d45f2d178945a998a90d1e130.

commit 9fafc55fe85427ee1666ebb83132085b5c6d43db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 18 15:12:13 2014 +0000

    ppc64: Disable hpet fragment in libvirt XML.
    
    Related change in commit 62cb3a606d4b349d45f2d178945a998a90d1e130.

commit 42fb609bd725d0107e41b6637dff3ed5c44db67c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 18 12:54:23 2014 +0100

    builder: move the XDG path handling in an own file
    
    Just code motion and renaming, no actual behaviour changes.

commit fd9fc70c4536a9e713f6f8ceab5907990d7bbbee
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 18 10:44:49 2014 +0100

    fish: use XDG paths for the config file
    
    Read the configuration file from XDG paths for both global and
    user-local locations, keeping the old paths as fallback.

commit e0efbff160f297b742b628e4b86dd7a8487e4b86
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 17 15:17:27 2014 -0500

    launch: libvirt: Don't include hpet XML fragment on ARM.
    
    See comment and https://bugzilla.redhat.com/show_bug.cgi?id=1066145
    for explanation.

commit bb9f40faa2ec33b91551ad963185749e3de000b8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 17 16:24:41 2014 +0100

    fish: change order of config files being read
    
    First read the global configuration and then the local one in user's
    HOME, so the latter can really override system settings.

commit 17d1242e3c61549041e5884e4e606b03dbdeadc9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 17 16:21:18 2014 +0100

    fish: small refactor of config reading code
    
    Even though so far there is just one possible setting to read, isolate
    in an own function the code to parse a configuration file and read the
    settings out of it.
    
    Now there's a new config_t handle used every time, but since config_read
    would reset an handle completely, there is no behaviour change.

commit 6cb786aff239a54da51b13c0730103f56af5e24d
Author: Or Goshen <oberonc@gmail.com>
Date:   Mon Feb 17 14:51:56 2014 +0000

    appliance: Use configurable separator character for LIBGUESTFS_PATH.
    
    On Windows, the path separator character will be ';' instead.

commit b3101ae295e332c3277b76219317b6c36c14d01d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 17 10:08:38 2014 +0000

    Version 1.25.36.

commit 2b16586473a15fa056406242ea6d47c1ced84136
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 17 09:13:42 2014 +0000

    builder: Fix dependencies which are not generated correctly by automake.
    
    See the error messages here:
    https://www.redhat.com/archives/libguestfs/2014-February/msg00148.html
    
    This fixes commit e2cc8b6465a400024fe2f0fcce0d0ff5f7e7719c.

commit f2123fa66ee23e0336f25c125ba984764ea8ff13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Feb 16 22:34:56 2014 +0000

    Version 1.25.35.

commit 7a627e3510b8cd0694b7a1b8935a94a6bec648ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Feb 16 19:20:40 2014 +0000

    FAQ: Remove obsolete entry about libguestfs <= 1.13 and slow writes.
    
    Long since not a problem.

commit 5b676edc6ff0bdd8e2e65d87b4db579a35f47e42
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Feb 16 19:09:33 2014 +0000

    FAQ: Add several common problems with opening disk images.

commit cce8bf70588ee718bd5636923bdf4a441a2e6d10
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Feb 16 13:30:25 2014 +0000

    FAQ: Create new section about problems opening disk images.
    
    Move the stuff about encoding problems here, because these are not
    really common problems.

commit 07a927e907de62eab5bae34d633a8291b64442cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Feb 16 19:15:29 2014 +0000

    FAQ: Remove old RHEL 6.5 section.

commit 952b1303ca0ba95372c166e6b35143633b496777
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 15 20:27:12 2014 +0000

    generator: Sort most output.
    
    Look for use of external_functions and fish_functions and replace with
    use of external_functions_sorted and fish_functions_sorted where
    possible.  This ensures that the output of the generator is sorted as
    far as possible.
    
    I also checked for uses of internal_functions and documented_functions
    but those are not used.  The *_sorted versions are always used
    instead.

commit 0df8468589aaa65b604f85b89861a82a497dd2b6
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri Feb 14 09:09:47 2014 +0100

    podwrapper: Recognize git-style dates in ChangeLog

commit 05f55686243b28131666ae18a32c36c2594abf9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 21:45:47 2014 +0000

    test: Use = instead of == for testing string equality in bash script.
    
    Found by make syntax-check.

commit 29623d54c2ea58a809d899e6fd878954ed72d7df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 21:45:31 2014 +0000

    Remove some unused header files.
    
    Found by make syntax-check.

commit 9ec95d801be310bd41589d638d3414c442ec8813
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 21:41:12 2014 +0000

    src/drives.c: Remove useless if-before-free.
    
    Found by make syntax-check.

commit 45027b73d8600c765ffe6fe1b4947d15bbabb906
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 21:39:50 2014 +0000

    Use bindtextdomain in some programs where it was missing.
    
    Found by make syntax-check.

commit 4f3cd8f87d1575065f84c71ec12767f66d87ccb5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 21:38:42 2014 +0000

    builder: Suppress warning about unused yyunput.
    
      CC       virt_index_validate-index-validate.o
    index-scan.c:1270:17: warning: 'yyunput' defined but not used [-Wunused-function]
         static void yyunput (int c, register char * yy_bp )
                     ^
      CCLD     virt-index-validate
    
    By using %option nounput we can prevent this from being generated in
    the first place.

commit a87775f1d28391b0b87a7475d000b2da8a7a142a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 21:07:40 2014 +0000

    configure: Move ocaml-gettext writing boilerplate to separate m4 module.
    
    This is just code motion.
    
    NOTE that after this commit you have to do:
    
      aclocal -I m4
      autoconf
    
    as 'make' may not do this automatically.

commit e7c296e1117293bf198c3e98ba90976cdc4156d0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 17:48:06 2014 +0000

    builder: pxzcat: Fix char * signedness warning.

commit e6d76576324929c4ae9d8bc64ec143fae667467e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 17:47:26 2014 +0000

    mllib/uri-c.c: Remove unused variable.

commit dfd7587a93dde940ad579d498e841f6e0acb1145
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 17:39:58 2014 +0000

    gobject: Remove some more warnings from session.c code.

commit ce17137815858d3b9fd4dfd91219253d839dee93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 15:24:57 2014 +0000

    gobject: Clean up some warnings about unused variables.

commit 56c0379a998d312ee0e8e6bf71f7cbc9b6879c60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 15:01:51 2014 +0000

    gobject: Don't direct error messages to /dev/null.
    
    We might want to see them.

commit 4ab2dd4a3ab5098d1dd9380bf3bfa60872ce7d60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 14:34:56 2014 +0000

    gobject: Use spaces between function name and call parameters.
    
    This is just a whitespace change.
    
    This was done by running the following command and then fixing a
    couple of places where it got it wrong:
    
    perl -pi.bak -e 'unless (m/#define/) { s/([a-zA-Z0-9])\(/$1 (/g }' \
      generator/gobject.ml

commit 6e5c42c0e0057f3d5c306707293caba1d3dc771c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 13:37:55 2014 +0000

    fish/uri: Initialize some variables to avoid a warning.
    
    The warning only appears when we set CFLAGS to be the same as used by
    RPM, which you can do by setting:
    
      CFLAGS="$(rpm --eval '%{__global_cflags}')"
    
    before running ./configure.
    
    FWIW the current value of that RPM expression (in Fedora 20) is:
    
      -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches
    
    It is not clear which option precisely enables the warning.

commit 60d048aed36b6559d6c685a34a969b3223716b88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 13 13:16:39 2014 +0000

    java: Avoid warnings in the tests and examples.
    
    Avoid warnings about missing serial version, and fix a warning about
    raw types.

commit 8f9ac9ff7761c3a4006b180b078cd548550638c9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 13 14:52:50 2014 +0100

    mllib: hostname: on Debian replace it also in /etc/hosts (RHBZ#953907).
    
    In Debian/Ubuntu systems, read the previous hostname from /etc/hostname
    before replacing it, and replace it in /etc/hosts with the new hostname.

commit 7aca26af7534ee02605f3615e2e1e03a11dbdd84
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 13 10:57:31 2014 +0100

    sysprep: remove RH subscription manager files
    
    Add a new operation for it, which should do what
    `subscription-manager clean` does.
    
    Part of RHBZ#1063374.

commit 7cb126e973d3c058581fc78011dac216dab08755
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 13 10:50:15 2014 +0100

    sysprep: remove RH subscription manager log files
    
    Part of RHBZ#1063374.

commit 9f68bc3cd68546a63e632b934fae140981c3520a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 12 22:47:53 2014 +0000

    Version 1.25.34.

commit e80a8de23cc694eb6613c71971039c5fc99e818c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 12 15:12:19 2014 +0100

    mllib: hostname: add a newline in /etc/hostname
    
    /etc/hostname usually has an ending newline, so add it when changing it.

commit fa4dd87271b383a7c4a8e6dc52cf68031c43d3fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 12 09:32:08 2014 +0000

    FAQ: Another common problem is permission denied errors when running as root.

commit 0da550ece1461ffb69c5029ff99d1cb6be8c455f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 12 09:30:39 2014 +0000

    FAQ: Add another common Ubuntu appliance problem.

commit a0250633b4bef071fa30af02d6acb7f658cf8edc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 11 20:08:43 2014 +0000

    list-filesystems: Do not segfault if guestfs_btrfs_subvolume_list returns an error (RHBZ#1064008).
    
    If calling guestfs_list_filesystems with a disk image containing a
    corrupt btrfs volume, the library would segfault.  There was a missing
    check for a NULL return from guestfs_btrfs_subvolume_list.
    
    This adds a check, returning the real error up through the stack and
    out of guestfs_list_filesystems.
    
    This is potentially a denial of service if processing disk images from
    untrusted sources, but is not exploitable.
    
    Thanks: Jeff Bastian for reporting the bug.

commit 08a2dc20c339ef3100ef089e04afe080f8c02bdd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 11 12:52:10 2014 +0100

    builder: do a copy when downloading local files
    
    Instead of spawning curl even to "download" file:// URIs, just copy
    them.

commit ad4e53f302addd0cf570f3e56058225dea844575
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 11 12:39:56 2014 +0100

    builder: prepare for different per-protocol download actions
    
    Small refactor of Downloader.download_to to allow different download
    actions depending on the protocol of the URI (which is now parsed).
    
    No actual behaviour changes, just mostly code motion.

commit d6ae4b48ccd8e20df0a20c136d2f4e35536e2b4d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 11 10:40:31 2014 +0100

    builder: isolate C libraries in an own OCAMLCLIBS
    
    Just moving stuff within Makefile.am, no functional changes.

commit 43ead644a3ef44b7d42faade62313c8c00a6fd4f
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Feb 10 11:00:09 2014 +0100

    actions/part_set_gpt_type: set type of "guid" parameter as "GUID" (RHBZ#1008417).
    
    Switch the type of the "guid" parameter from "String" to "GUID"; this
    adds the validation of the GUID as such, rejecting straight away invalid
    GUIDs which otherwise could be handled badly by low-level tools (such as
    sgdisk).
    
    Add a couple of easy tests (taken from RHBZ#1008417) to
    part_set_gpt_type about this.

commit e31148d13d2b05968c081607729a533f74b6c8dd
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 6 20:02:51 2014 +0100

    generator: generate code for parameter validation
    
    Implemented only in the C output, since every binding uses it anyway,
    and just for the "GUID" type (since its format is well-known).

commit c0dfce63bf6e904b1d1cf4cc9e0a99ded989a870
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 6 17:43:04 2014 +0100

    generator: add a GUID parameter type
    
    At the moment it is basically the change as String, and it is mapped as
    if it was such.

commit 06b233e49393194431f1aa6ab725727e823d73af
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Feb 6 15:57:09 2014 +0100

    utils: add a function to validate a GUID string

commit bb63805cf0ecf6a078cd44547ee3376743811cc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 5 19:39:28 2014 +0000

    libguestfs-make-fixed-appliance: All supported versions of libguestfs should work.
    
    We're not supporting anything < 1.20 now.

commit 27dd13c5022b764383147707e46fb2e0bd3825fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 5 15:18:49 2014 +0000

    Version 1.25.33.

commit 2c396584e3b2d28f034be3c25647eda900041a05
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Feb 5 11:42:17 2014 +0100

    appliance/init: provide a symlink /var/lock
    
    Provide /var/lock as symlink to /run/lock, as it might be used by
    applications.

commit 92eb2e129454a74c2e9c85e7d5391082470af03d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 4 15:49:13 2014 +0100

    resize: preserve GPT partition names (RHBZ#1060404).
    
    Save the partition names/labels of the source partitions, and restore
    them after the partition copy.

commit 53d92bf11a0536f3a83971acb8845bd34d102afc
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 4 14:48:14 2014 +0100

    New API: part-get-name (RHBZ#593511).
    
    Counterpart of part-set-name, it uses sgdisk (hence needs the "gdisk"
    feature) to query for the label/name of a partition in a GPT layout.

commit 441f729b7e5e8fd3333c9bec08f1535142693012
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 4 13:49:37 2014 +0100

    daemon: parted: refactor sgdisk info parsing code
    
    Isolate in an own function the code that runs sgdisk and parse a field
    of it (using an extraction function passed as parameter), using it for
    the GUID type.
    
    This is just code motion, no actual behaviour changes.

commit a94b670f9176ecf3e1ef6c84194c1e308846e429
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 4 13:27:34 2014 +0000

    resize: Try to remove a few more _ -> .. cases.
    
    This allows the compiler to catch missing cases more effectively,
    especially if we update the types with more cases in future.

commit 71a09eb9b615e18b67a9d3808bad4033e67780f8
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Feb 4 13:32:28 2014 +0100

    resize: properly restore GPT partition types
    
    If there is a GPT partition layout, then what should be read and
    restored for each partition is the GPT type and not the MBR ID.
    
    Related to RHBZ#1060404.

commit dcfba050de6d6c5e2c586ce8af12630572b6c838
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 4 08:50:43 2014 +0000

    Version 1.25.32.

commit aa44c26a4c50a40a59fe259cb95838cf41058eb7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 3 13:56:13 2014 +0000

    Remove bogus license file from daemon subdirectory.
    
    It was left over from when the daemon was a separate autoconf
    directory, and in any case the daemon has never been GPLv3 (it is
    GPLv2+).

commit 4de734b9ed7182ac55a0e11d1539a09167144cda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 3 09:08:12 2014 +0100

    fish: Additional GUESTFISH_* environment variables to control the prompt.
    
    This adds:
    
     - GUESTFISH_INIT
     - GUESTFISH_OUTPUT
     - GUESTFISH_RESTORE
    
    which along with existing GUESTFISH_PS1 allow you to fine control the
    colour of the output.

commit 7b83f024d1bcac38abda53781a7c0935f791f3b3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 30 17:06:42 2014 +0100

    builder: remove unused variables
    
    Leftovers of the list_entries_short+list_entries_long split done in
    commit 91aae893c70b3877b31803800ba77836fd7a45e8.

commit f08f54c087b5bba62e9f7ad3a4f94bdc24ff8ab2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 30 17:05:34 2014 +0100

    builder: output translated notes
    
    Output all the translations available for the notes in the "verbose"
    output and the JSON output, while trying to match the system langauge in
    the "show notes" output.
    
    The JSON output is slightly changed to handle translations, with the
    "untranslated" notes being matched as "C". The version is not bumped
    though, since there have been no stable releases with the former output
    yet.

commit 4029a4c43d0f13819bac9ceb331b1dc2aacbb823
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 14:50:55 2014 +0000

    sysprep: Deprecate --selinux-relabel in favour of --autorelabel.
    
    virt-builder added a --selinux-relabel option with a slightly
    different meaning.
    
    This commit keeps the old --selinux-relabel / --no-selinux-relabel
    options in virt-sysprep, but deprecates them and replaces them with
    --autorelabel and --no-autorelabel.

commit f7ce3377f64204d59bafd05978041dc1985781d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 14:46:05 2014 +0000

    sysprep: Add a reference to virt-builder from the manual page.
    
    The whole "COPYING AND CLONING" section really needs to be overhauled
    too, but first we need to make virt-builder work properly for
    customizing templates.

commit a65768796a4bcaaa9f82675ffdbaa83a000dc695
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 14:38:50 2014 +0000

    sysprep: Add --scrub option.
    
    This works like the option in virt-builder with the same name.

commit 5b3cb8d22f966a35b8e775aa0eac8a90243a15eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 14:03:45 2014 +0000

    builder: Move Perl_edit module into common code.
    
    There is no functional change.

commit 63f2c16abd3549338a0dffa3f910928b2f4e1d05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 09:31:24 2014 +0000

    appliance: Create checksum file with mode 0644 instead of 0755.
    
    Initial commit 4beb2844091310012b5e28971707397d1d51d833 used mode 0755
    for no reason.  It seems to have been a mistake.

commit 2dc6f12437c06a29b805bdf928f0567013f025c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 08:45:19 2014 +0000

    perl: Data::Dumper and String::ShellQuote modules are no longer required.
    
    They used to be used by old Perl virt-make-fs.  Nothing else uses
    them.
    
    This updates commit d3512deb6728dffbb3a958c7168b81dbde56d748.

commit 561458edcf83b498ab3c9a958df2dd4ec9bf1e93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 08:19:32 2014 +0000

    make-fs: Remove warning from man page about lone --partition argument.
    
    C's getopt_long has no problem with this.

commit ea791c1e4437d8452a60e6a14a0c7e603743d5e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 08:18:05 2014 +0000

    make-fs: Ensure --partition (on its own) creates an MBR partition.
    
    This fixes commit d3512deb6728dffbb3a958c7168b81dbde56d748.

commit 55ab3506338d8af6e83095e685f6cafe1e35b886
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 08:11:37 2014 +0000

    make-fs: Refactor debug stats code.
    
    Code motion, no functional change.

commit 1e762721d1fa6432742c8b8a5b64f660c32e0952
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 08:08:33 2014 +0000

    make-fs: Use an anonymous pipe instead of a named pipe.
    
    The previous translation from Perl slavishly followed the Perl code a
    bit too much and used a named pipe to communicate between the
    uncompressing subprocess and libguestfs tar-in.  From C we can use an
    anonymous pipe instead.
    
    This updates commit d3512deb6728dffbb3a958c7168b81dbde56d748.

commit 583f8bbdf3ec0d87abe1dd60f53e3b8f16f011c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 08:00:55 2014 +0000

    make-fs: Make check-valgrind do something.

commit 4a8487cf8cdb6eabd7e85d88f147e500a2949bba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 29 08:00:30 2014 +0000

    make-fs: Run virt-make-fs in test from builddir, not srcdir.

commit 243624541ec90f45201148e7774dd55924c133c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 22:17:12 2014 +0000

    pod: Remove stray +x (executable) mode on various POD files.
    
    find -name '*.pod' -perm /0111 -exec chmod -x {} \;

commit 2376b05a938fe664f936a2ca61790a4f7afc5dae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 22:10:25 2014 +0000

    Version 1.25.31.

commit 07420ddfa5ac990cf92db1b1975f50ed31192bc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 21:56:18 2014 +0000

    sysprep: Add script4.sh (test script) to EXTRA_DIST.
    
    This fixes commit ce9d4d335b0c13f3ea75048666ccf5b63de29f8e.

commit 1abb3da50e03d32a26ff03940b6850f000217e79
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 21:01:48 2014 +0000

    Version 1.25.30.

commit 257a421e6ab0270d0877b71574fbb41f680b7932
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 20:26:42 2014 +0000

    tests: Test --label and other options in virt-make-fs.

commit 90492f6a9af8d2c6b2a4d63044ab171a8bf6055b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 27 13:29:54 2014 +0000

    Rewrite virt-make-fs in C (originally Perl).
    
    It should be very compatible with the Perl version.

commit cf300bbfd0d0d7dd759f527461a54db6863c393f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 18:53:25 2014 +0000

    daemon: Always pass -F option to mkfs.ntfs.
    
    Otherwise it moans about:
    
      mkfs: ntfs: /dev/sda: /dev/sda is entire device, not just one partition.
      Refusing to make a filesystem here!
    
    This has been happening for a while, so I don't know why we didn't
    notice it before.  It even happens on RHEL 6.
    
    A simple reproducer is:
    
      virt-make-fs -t ntfs any-tarball.tar.gz test.img

commit ae3fb882d32fd69053126abdc3b874d74f9001f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 15:08:16 2014 +0000

    virt-make-fs: Use disk-create API instead of calling qemu-img create.
    
    Strictly speaking this reduces the number of formats that virt-make-fs
    can output to, but it's likely that no one cares and if they do we can
    add new formats in future.

commit 3493136b9d2507e49521699af1753d979ea96acb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 15:07:33 2014 +0000

    sparsify: Use new disk-create API instead of calling qemu-img.
    
    disk-create doesn't support the lazy_refcounts option.

commit 4779d47104fa356e6fac2b11fdb4027520920340
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 15:07:26 2014 +0000

    rescue: Note that we're not using add-drive-scratch here, and maybe we should be.

commit 0b01c825c55a5e03a56db0a6204041c088c46359
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 15:06:39 2014 +0000

    tests: Update miscellaneous tests to use disk-create API.
    
    Instead of calling out to qemu-img / truncate.

commit f932dce2aa4843ea204168ba07cb39ad8e4b980e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 15:05:58 2014 +0000

    builder: Use disk-create API instead of calling qemu-img create.

commit 668f893e424b9b2ed1203664214bde246d0c30a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 15:04:59 2014 +0000

    examples: Update various examples to use new disk-create API.

commit 3eb97ade40238a66f20afdefa0fea7b36ddddf9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 15:04:09 2014 +0000

    fish: Use disk-create API to implement guestfish 'alloc' and 'sparse' commands.

commit bd33cc444bc6bf467d2a016a9ef46e37382d4a4e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 15:03:09 2014 +0000

    lib: Use disk-create API instead of qemu-img/truncate inside the library.

commit 3af075bc52b8f5bee495ca5d6bbb246db8114714
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 13:09:06 2014 +0000

    New API: disk-create for creating blank disks.
    
    This is a wrapper around either 'qemu-img create' or calls to open,
    truncate and posix_fallocate which litter and complicate existing
    code.

commit 6da53a3664ad001316c616403210976042d3b946
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 28 13:08:38 2014 +0000

    src/Makefile.am: Reorder SOURCES into alphabetical order.

commit 730765caf9f9dd2e0b94f360f769d72ed5648141
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 27 21:58:42 2014 +0000

    run: Actually use timeout --foreground option (RHBZ#1025269).
    
    The following commit managed to not actually add the --foreground
    option to the timeout command, just test for it.  Add it this time.
    
      commit 681488877456b83f039dc518861f29ab4e1857f0
      Author: Richard W.M. Jones <rjones@redhat.com>
      Date:   Thu Dec 19 08:21:53 2013 +0000
    
        run: Use timeout --foreground option.
    
        If timeout doesn't have this option (RHEL 6) don't use timeout at all.
    
        Attempt to fix RHBZ#1025269.

commit 4136c8acdae75258df92c34719663563f049d2cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 27 21:20:32 2014 +0000

    daemon: Add a note about how 'mount --rbind' doesn't work.

commit ed03c3811b8a503f3d04610cadbfb810ce52b97c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 27 20:22:23 2014 +0000

    daemon: If /selinux exists in the guest, bind-mount /sys/fs/selinux to there.
    
    Commit 72afcf450a78b7e58f65b4a7aaf94d71cd25fca5 was partially
    incorrect.  If the guest userspace is expecting /selinux to exist,
    then we should bind-mount /sys/fs/selinux from the appliance kernel
    there.

commit 5a27f2c1c6bed39cc979e2c876333e6d07b0ee0b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 28 15:04:38 2014 +0100

    builder, sysprep: initialise the random generator
    
    virt-builder and virt-sysprep may make use of
    Common_utils.string_random8 (which uses Random.int) for constructing
    temporary paths; not initialising the random generator means that every
    invocation will reuse the same name used previously (!).
    Thus just call Random.self_init, just like virt-sparsify already does.
    
    Expand the test-virt-sysprep-script.sh test to ensure that virt-sysprep
    is not affected again by this issue.

commit 6ce227c88f945193c97d8281f07e65d251319f17
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 27 17:25:55 2014 +0100

    tests/regressions: remove C part of rhbz1044014
    
    All it did was checking for a libvirt version, which is what
    libvirt-is-version now does; hence remove the C part, and use guestfish,
    ignoring the launch failure (as the C test did).

commit facfcfd4376e9d60d451fe4332bd1ec5a5b67f49
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 27 16:33:22 2014 +0100

    tests/disks: skip test-qemu-drive-libvirt.sh if libvirt is < 1.1.3
    
    This test relies on the <test:runstate> element in the domain XML, which
    has been introduced in libvirt 1.1.3.

commit e2c56e7d4391a76398741b1db98c43066fb400b2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 27 16:31:32 2014 +0100

    tests: add a a simple libvirt-is-version test tool
    
    libvirt-is-version returns successfully in case the available version of
    libvirt is greater or equal than the specified major/minor/release
    values.

commit fa6e879ea197a6e2c80066f7c9cc060030d64f73
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 27 14:25:47 2014 +0100

    tests/mountable: add missing space in test-mountable-inspect.sh
    
    No actual behaviour, other than getting rid of a bash warning.

commit 4b3aee0d0b663cbf75fae3f382cb0290635c1e3e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 25 12:04:37 2014 +0000

    Version 1.25.29.

commit 9d8496a8a7842fa2859d441faeafb0a848fac4ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 25 11:56:40 2014 +0000

    tests/disks/test-qemu-drive-libvirt: Include test data.
    
    This was inadvertantly deleted.
    
    This fixes commit 01d27033bdd12974f850ff7a8e5de8f6b790379d.

commit 14c4f65bf076f0ffd919a5ec550058e7ce2a0bb3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 25 10:59:03 2014 +0000

    Version 1.25.28.

commit 7538ad1df9fc34dfb4fad9f70cff5355fa685e99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 24 19:43:05 2014 +0000

    builder: Add documentation for enabling Puppet (agent) in a guest.

commit 3cb01bc0a173ce6300be362a85b5edcd6e73b019
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 24 19:38:26 2014 +0000

    builder: Add --selinux-relabel option to perform SELinux relabelling.
    
    This adds the --selinux-relabel option which enables selinux in the
    appliance and runs:
    
      if load_policy && fixfiles restore; then
        rm -f /.autorelabel
      else
        touch /.autorelabel
      fi
    
    at the end of installation.
    
    When possible this fixes SELinux labels in the guest and makes the
    autorelabel step unnecessary.
    
    Notes:
    
     - The previous commit is required so that load_policy works.
    
     - During the build, SELinux is enabled but no policy is loaded.  This
       works because SELinux is in permissive mode.
    
     - This flag does not work if the appliance kernel and the guest have
       greatly differing versions, eg. a RHEL 6 guest with a Fedora 20
       appliance.  This is because SELinux changes the policy format and
       breaks backwards compatibility.  You would see errors like this:
    
       libsepol.policydb_write: policy version 15 cannot support MLS
       libsepol.policydb_to_image: could not compute policy length
       libsepol.policydb_to_image: could not create policy image
       SELinux:  Could not downgrade policy file /etc/selinux/targeted/policy/policy.24, searching for an older version.
       SELinux:  Could not open policy file <= /etc/selinux/targeted/policy/policy.24:  No such file or directory
    
       These errors are ignored (they go to the log file) and relabelling
       is done at boot instead.
    
     - It's not clear if loading guest policy is safe.  You should trust
       the virt-builder templates and to use libguestfs confinement for
       additional protection.

commit 30d8692567b8cd1a6a181e3a137e12e3b9fa7fcb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 24 19:36:33 2014 +0000

    daemon: Bind-mount /sys/fs/selinux into sysroot when running commands.
    
    Even though we are already bind-mounting /sys, it is necessary to also
    bind-mount /sys/fs/selinux in order for SELinux commands (in
    particular, 'load_policy') to work.
    
    This fixes/reverts commit 7367729ec7a5d016878dd00b32cce45cec372931.

commit 0e9adb2530cada7a958891b8476ef36fc1d43201
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 24 10:20:14 2014 +0000

    fuse: In mount-local-run, test if root filesystem has been mounted (RHBZ#1057504).
    
    It is never normally valid to use the mount-local* APIs when you
    haven't mounted some filesystems in the libguestfs namespace.
    
    If you try it, it results in some odd errors.  The mount-local-run
    call is successful, but subsequent operations fail:
    
    $ mkdir -p /tmp/mnt
    $ guestfish -x -N fs mount-local /tmp/mnt : mount-local-run
    libguestfs: error: lstat: lstat_stub: you must call 'mount' first to mount the root filesystem
    libguestfs: error: lstat: lstat_stub: you must call 'mount' first to mount the root filesystem
    
    With this commit, the mount-local-run call gives an error:
    
    libguestfs: error: you must call 'guestfs_mount' first to mount a filesystem on '/'.
    Note: '/tmp/mnt' is still mounted.  Use 'guestunmount /tmp/mnt' to clean up.
    
    The error is implemented by calling guestfs_exists (g, "/") which has
    the side effect of running the NEED_ROOT macro in the daemon.  (There
    is no simple equivalent of NEED_ROOT on the library side.)

commit 49bfe7f7cff24abf4849418ca1ddb52b533ba02e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 21:49:16 2014 +0000

    lib, fish: Handle Gluster, NBD, iSCSI and Sheepdog paths properly.
    
    This fixes the handling of paths for the protocols named above, with
    respect to leading '/' (or not) on the volume/export name.
    
    See previous commits which did the same fixes for Ceph:
    commit 53a3ff9c005fd69e773fdb18461a635c2502df1b
    commit 992a6b297023711862229aabe4e23b6a1c94c1cc

commit 1ab9b26709a546a131cde9462b550ed42e97857f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 19:35:23 2014 +0000

    Version 1.25.27.

commit 49d878f9c01df084eb69cddcefa3de63a379fd97
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 14:14:26 2014 +0000

    resize: Don't truncate libguestfs error messages.
    
    If we rely on OCaml's internal exception printing, then it will
    truncate error messages like this:
    
      Fatal error: exception Guestfs.Error("could not create appliance
      through libvirt.
    
      Try running qemu directly without libvirt using this environment
      variable: export LIBGUESTFS_BACKEND=direct
    
      Original error from libvirt: unable to set security context
      'unconfined_u:object_r:svi
    note the truncation here ^^^^^^^
    
    Instead of using the internal exception printing, wrap the whole
    program in a 'main ()' function and add an exception handler.
    
    This large change is non-functional apart from the addition of the
    exception handlers at the end.

commit 73f6a2419807f1fd91ee32bc2c1a9572c8ae0dcd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 13:31:11 2014 +0000

    launch: direct: Stop using deprecated -no-kvm-pit-reinjection if qemu is new enough (RHBZ#1053847).

commit 87563dc678c970ebfbfb359e3bf0087a2ab391f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 10:48:57 2014 +0000

    tests: Add a test of libvirt domain XML to qemu command line (RHBZ#1026688).
    
    This tests that libvirt domain XML (ie. guestfish -d option) is parsed
    correctly and results in the correct qemu command line when using the
    direct backend.
    
    This is a good end-to-end test of various layers.

commit 4c3a6e3c0e1d86493caacd81212777a3d3e3561c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 11:40:27 2014 +0000

    libvirt domain: Allow network drives with no <source name="..."> attr.
    
    This is valid for some network drives, for example:
    
      <source protocol='nbd'>
        <host name='foo' port='1234'/>
      </source>
    
    We pass an empty string as path to the guestfs_add_drive_opts API in
    this case.

commit be5786710ab595dc5b1a332e56d75b2a9d291c62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 11:31:40 2014 +0000

    libvirt-domain: Remove unnecessary and wrongly indented parens.

commit f8b58afc15f5faf84dc65a6cc04c92836e6626f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 11:05:01 2014 +0000

    libvirt domain: Allow network drives with no <host> elements.
    
    This is valid for some network drives:
    
    <source protocol='rbd' name='abc-def/ghi-jkl'/>
    
    instead of this:
    
    <source protocol='rbd' name='abc-def/ghi-jkl'>
      <host name='foo' port='1234'/>
    </source>
    
    Allow both forms.

commit f2485518ace3cd4e31c19e0125fab841fa392b8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 08:30:12 2014 +0000

    fish: Handle Ceph/rbd URIs and convert them to paths properly (RHBZ#1026688).
    
    The path at the API level (for guestfs_add_drive_opts) is:
    
      pool/disk
    
    The URI syntax is either rbd:///pool/disk or rbd://server:port/pool/disk.
    Because of the way URI parsing works we may need to remove a leading
    '/' character before passing the path down to the API.

commit 6bd312a5c19286d97dbc626f383a2f20560bc014
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 08:28:09 2014 +0000

    lib: Handle Ceph/rbd paths properly (RHBZ#1026688).
    
    The path at the protocol level is:
    
      pool/disk
    
    (with no leading '/' character).  This is now what you have to pass to
    guestfs_add_drive_opts.
    
    Also Ceph can be called with no explicit servers (it uses the contents
    of /etc/ceph/ceph.conf instead).  So allow zero servers to be used.

commit 5750a79d3943227064700f98ee997e1e8b8b0861
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 23 08:27:30 2014 +0000

    fish/uri: Tidy up error messages.

commit f5ae048a5171f0c7579e87a5f6818938982940e1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 23 15:36:15 2014 +0100

    builder: read all the available notes from the index
    
    Switch the internal storage for the notes of each entry to a sorted list
    with all the subkeys available (which should represent the translations
    to various languages).
    The current outputs are the same (i.e. still the untranslated notes), so
    this is just internal refactoring/preparation.

commit fcc3ecb74426be29cee78a4a9da4800cdddad2b9
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 22 23:13:24 2014 +0100

    builder: small code simplification
    
    No actual behaviour changes, just remove extra match statements.

commit 9f0b9c5b26319d247f88ecdeb05e51ac4d4af23b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 22 18:01:17 2014 +0000

    Version 1.25.26.

commit 0f1d7e4117922da1a244c33009737abdd534ce9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 22 17:13:00 2014 +0000

    tests/regressions: Don't include binaries in EXTRA_DIST.
    
    Because EXTRA_DIST simply used $(TESTS), and because the list of tests
    includes C binaries, these were included in the tarball (actually not
    binaries, but libtool scripts, but it's still undesirable).

commit cefc4a9d4181e7f38018849109729a161e113492
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 22 17:00:43 2014 +0000

    tests: Add a regression test for RHBZ#1054761.

commit a258ed73e10324d12138eceffc94c938d37897f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 22 17:10:09 2014 +0000

    daemon: lvm2: Ignore "unknown device" output when a PV is missing (RHBZ#1054761).

commit 54a708938d08288cf0064b7a4f8134728f5a5b74
Author: Colin Walters <walters@verbum.org>
Date:   Wed Jan 22 15:45:08 2014 +0000

    generator/set-uuid: Fix two typos in documentation

commit 979911aa3a19dddce96443d67d88b51982ae5865
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 22 15:34:22 2014 +0100

    builder: fix small regression in subkey parsing
    
    Introduced in 5cbdf35d651b6c730d62d9af4876039faa122efc, it caused the
    first character of the value to be skipped if the key has a subkey.

commit 22aedcb3d07b2ac320a59b7ced781341a906bc63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 22 13:10:08 2014 +0000

    sparsify: Prevent overwriting block or char output devices (RHBZ#1056290).
    
    virt-sparsify doesn't work if the output is a block device, and cannot
    possibly work if the output is a char device.  Currently if you try
    this it actually overwrites (deletes) the output device which is not
    exactly desirable.  Therefore throw an error and exit.

commit 310705bff32b0223abd0dd9cc5aa74d3c49c6be3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 22 12:55:52 2014 +0000

    builder: Add -monitor none to example command line.

commit 1a8e5746cde5609f09fd529226c7a34b06858762
Author: Dan Lipsitt <danlipsitt@gmail.com>
Date:   Tue Jan 21 11:26:27 2014 -0800

    remove non-portable chmod
    
    'chmod --reference' is not available on Mac OS X.
    
    Keeping the original file and directing edits into it preserves permissions and removes the need to chmod.
    
    (Tried 'sed -i' for inplace editing but unfortunately it isn't portable either.)

commit e1341bd3cc97ff82ea82512a23911e5a02bd547c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 21 18:37:26 2014 +0000

    Version 1.25.25.

commit 3a56234ff6f4aa8a4b25cda46d2d67886c730128
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 21 18:52:42 2014 +0100

    builder: proper consider subkeys in index files
    
    The index files already allowed the 'key[subkey]=...' syntax for keys,
    but considering such string as whole key. Proper split the parsing and
    the handling of the subkeys, so they can be searched a bit easier.
    
    This causes no actual behaviour changes, it is just internal
    micro-refactoring. (Thanks Rich for the hints, too.)

commit 6754889a35c25ba2d957d4864a5696755e082142
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 21 17:15:11 2014 +0000

    builder: Add tip for how to relabel SELinux guest at build time.
    
    Thanks: purpleidea/James.

commit 5b52f8935f13d6a2b5fc57f847821c86ddba73d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 21 17:13:35 2014 +0000

    builder: Clearer note in man page about SELinux and where /.autorelabel file comes from.
    
    It's not added by virt-builder.  It is present in the templates (added
    by virt-sysprep in fact).

commit f78caecf253b02f6d1376415bb0a799d68fba05b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 21 17:13:18 2014 +0000

    builder: Add note about cloning to man page.

commit 172d68a7e45ac9e4f9f03cb3f9d1c522d2cdaa54
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 21 11:46:17 2014 +0000

    sysprep: Replace flags list with side_effects object.
    
    Previously callbacks would return a list of flags, such as []
    or [`Created_files].
    
    In this commit we introduce two new objects, filesystem_side_effects
    and device_side_effects (the latter is not used yet).
    
    The callbacks that create files now need to call
    
      side_effects#created_file ()
    
    instead of returning flags.
    
    There is no functional change in this patch.

commit 405096eea26bf78d36af4dcf29c8b6ec60636f62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 21 11:16:21 2014 +0000

    sysprep: Update comments.

commit 5794ce7db3de74ccad33bedf0a3ede627f3b4206
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 21 17:54:23 2014 +0100

    builder: allow more empty lines in index files
    
    Improve the index grammar to allow more than one empty line between
    sections, and to allow any number of empty lines at the end of the file
    (after the last section).

commit a3f0f6b1281ce62d20389d28e4db37b128200e50
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 21 10:54:19 2014 +0100

    builder: add index-struct.h as dependency for index-parser-c.c
    
    Just like with index-parse.h, also index-struct.h is a dependency of
    index-parser-c.c which automake cannot generate correctly.
    Thus, add it manually.

commit 4d484d781af201877fbcde53c9c51908c34e43af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 21 11:07:03 2014 +0000

    test-tool: Rearrange output into alphabetical order.

commit 9b3cf2e09ef77a6763dca386b737f1b771da0570
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 20 16:04:48 2014 +0100

    Revert "Minimum libvirt version is >= 1.1.1."
    
    0.10.2+ is still available on some recent-ish stable distros (like
    Fedora 19, Ubuntu 13.04), and should work fine for guestfs.
    
    This reverts commit 6b3e05e8da490fc11a2f07f0cc9022216a744ac7.

commit f53ac605d74d5be03fa4cacff6243e0f6cd1283c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 20 14:34:03 2014 +0000

    dist: Run 'git log' instead of custom script.
    
    It's useful to see the complete SHA1's since that is how we refer to
    fixes in Bugzilla.

commit 422c79d49d14c23e29f2974bbf2ce45f0758fc5d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 20 12:09:29 2014 +0000

    tests: Add regression test for get-attach-method == "appliance".
    
    This updates commit ecd31806a491c735878e9e54540a5c11ca1adce9.

commit 210fc448ff01cf2a98483d2a588bf8eb9c6545b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 20 10:13:18 2014 +0000

    tests: Add a regression test for parsing LIBGUESTFS_BACKEND/LIBGUESTFS_ATTACH_METHOD (RHBZ#1055452).

commit fd252d905fcff7558670e137182c2441be9e14bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 20 10:21:26 2014 +0000

    launch: Allow backend = "appliance" for backwards compatibility (RHBZ#1055452).
    
    This fixes a regression which was introduced in
    commit 0f26218905816ca86b6ec57070eed802515f4853.

commit 1abc0c3edef60f0d1ba28fe7748fe33ff7555b39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 19 20:28:35 2014 +0000

    daemon: Use wipefs_has_force_option to decide whether to add wipefs --force option.

commit bb400786bde8dad6c6f79e27559c4ae0c3709698
Author: Olaf Hering <olaf@aepfle.de>
Date:   Sun Jan 19 20:22:49 2014 +0100

    daemon: add missing GUESTFSD_EXT_CMD usage
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit b3bb94aca008341a24220e9f4eb55bcafc55ad51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 21:38:11 2014 +0000

    Version 1.25.24.

commit 923fc946a7699373ab4d55ec99850e837ecb4487
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 16:55:09 2014 +0000

    init: Display clocksource (only when debugging is enabled).

commit 62ac00a8161032c321c897711d08194847a943de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 16:52:58 2014 +0000

    launch: direct: Make sure we pass lpj= parameter when using TCG.
    
    I have verified that 'refined-jiffies' is the clock source when using
    TCG (ie. not kvm-clock which seems only to be used for KVM).

commit 846ba76959d0e02dc130d0140366b2dc7a7f9470
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 16:36:14 2014 +0000

    launch: libvirt: Add force_tcg backend setting.
    
    By using:
    
      export LIBGUESTFS_BACKEND_SETTINGS=force_tcg
    
    you can force the libvirt backend to use TCG (software emulation)
    instead of KVM (hardware accelerated virtualization).

commit cfe4da357e9519103b05bb29ec86dcea6a15c2af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 16:28:58 2014 +0000

    launch: direct: Add force_tcg backend setting.
    
    By using:
    
      export LIBGUESTFS_BACKEND=direct
      export LIBGUESTFS_BACKEND_SETTINGS=force_tcg
    
    you can force the direct backend to use TCG (software emulation)
    instead of KVM (hardware accelerated virtualization).
    
    This is sometimes useful, especially if you are trying to use
    nested KVM on Intel.

commit f0c875130780c9f04fec3b194af66ecc49fce1b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 15:33:10 2014 +0000

    New API: set-backend-settings, get-backend-settings.
    
    Allow settings (an arbitrary list of strings) to be passed to the
    current backend.  This will allow us to tweak how the backend works,
    eg. by forcing TCG.

commit 4041de33a7973ffada6981b80fcf8f381a8cdec1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 15:56:25 2014 +0000

    utils: Add regression test for C utility functions.

commit e27f15c4c5284bb71ccbb5fe16872b53fdb60e55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 15:25:26 2014 +0000

    utils: Add utility function to split string into list of strings.

commit 57951592b9ddf93950b71370389140c925e4ca84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 15:25:07 2014 +0000

    utils: Add utility function to copy string lists.

commit 6d9f246a70cfbd802da772a05753e5472207a33b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 16:11:56 2014 +0000

    test-tool: Use size_t instead of int for array index.

commit 17176e2f4324811552d9d2213280804bf9f3262e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 14:20:43 2014 +0000

    tests/nbd: Move wait for qemu-nbd to start up earlier.
    
    tests/nbd/test-nbd.pl contains a hack (a call to sleep) to wait
    for qemu-nbd to start up in another process.
    
    This sleep was previously located before the call to $g->launch()
    since that is where (previous to commit 4a0f5ed382) the backend would
    have connected to the NBD server.
    
    However in the new code, an initial NBD connection test is done when
    the drive is added (ie. $g->add_drive (..., protocol=>"nbd")), which
    duly failed intermittently because the qemu-nbd server had not opened
    its socket yet.
    
    Move the wait earlier -- just after the fork -- to avoid this.
    
    This updates commit 4a0f5ed38233393e75ea69ff0595936aed0e8abb.

commit 3b68ea81df1c29e8f267223e323b870920dc9820
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 11:55:27 2014 +0000

    Use recommended timer settings for KVM (RHBZ#1053847).
    
    See: https://bugzilla.redhat.com/show_bug.cgi?id=1053847#c0
    
    Thanks: Cole Robinson, and several QEMU developers.

commit 49f6338215aa887de3770433e8ff0523302d835b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 18 11:40:30 2014 +0000

    launch: libvirt: Slightly simplify the XML generation code further.
    
    This updates commit 96737fc5b7a0c9f92896f4a7d0f738a66c56d3b0.

commit 5c79a435b12b31803bec055f0de2152e59aa51eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 17 19:32:05 2014 +0000

    Version 1.25.23.

commit 2dc98627b28274277fd25d3a293760c22ee31760
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 17 19:23:27 2014 +0000

    uml: Fix rule which disables relative-paths test on UML.
    
    This fixes commit e22bd2dcd26ffe822a68c23852bbafe4767d98f0.

commit f6223ec9556e336c3f746048285afee7e57b37d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 17 15:48:22 2014 +0000

    Version 1.25.22.

commit 1422260a7b776757b0ba5ef119a0baf8814945da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 17 15:07:55 2014 +0000

    tests: Add a test of relative paths, to make sure we don't break them.
    
    In some places we turn relative paths passed by the caller into
    absolute paths: for example in the libvirt backend, all relative paths
    to disk images have to be turned into absolute paths (by calling
    realpath) because otherwise libvirt doesn't work.
    
    This has the potential to break things, especially considering that
    qemu uses the path passed to it in order to resolve the relative paths
    of backing files.
    
    For example consider the case where 'overlay' is a symbolic link to
    /dev/dm-1, but /dev/dm-1 contains a qcow2 which references './backing'
    as its backing file.  If we rewrote 'overlay' to '/dev/dm-1', then
    qemu would try to look up '/dev/backing' for the backing file and
    fail.
    
    See also:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1053684
    https://www.redhat.com/archives/libguestfs/2014-January/thread.html#00087

commit 121dac44e6a34f3a62d91614d2396a53a937ca95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 17 09:37:30 2014 +0000

    launch: libvirt: Use C macros to simplify XML generation.
    
    This commit implements some hairy C macros to simplify
    XML generation.
    
    Given the target XML:
    
      <cpu mode="host-passthrough">
        <model fallback="allow"/>
      </cpu>
    
    The old code would have looked like this:
    
       XMLERROR (-1, xmlTextWriterStartElement (xo, BAD_CAST "cpu"));
       XMLERROR (-1,
                xmlTextWriterWriteAttribute (xo, BAD_CAST "mode",
                                             BAD_CAST "host-passthrough"));
       XMLERROR (-1, xmlTextWriterStartElement (xo, BAD_CAST "model"));
       XMLERROR (-1,
                xmlTextWriterWriteAttribute (xo, BAD_CAST "fallback",
                                             BAD_CAST "allow"));
       XMLERROR (-1, xmlTextWriterEndElement (xo));
       XMLERROR (-1, xmlTextWriterEndElement (xo));
    
    The new code looks like this:
    
       start_element ("cpu") {
         attribute ("mode", "host-passthrough");
         start_element ("model") {
           attribute ("fallback", "allow");
         } end_element ();
       } end_element ();

commit dea7c0174a3ad0527a806b1f0fd6b2276a7893c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 17 12:14:38 2014 +0000

    drives: Avoid double-free along error path.
    
    This fixes commit 4a0f5ed38233393e75ea69ff0595936aed0e8abb.
    
    A simple test of this:
    
      guestfish <<EOF
      add-drive "" readonly:1 format:raw protocol:nbd server:localhost:10000
      EOF
    
    which would core dump.

commit db8eb9b81b8f778dd9ac2b315feeedebe6b71820
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 16 20:00:03 2014 +0000

    Minimum libvirt version is >= 1.1.1.
    
    Note this is the version in RHEL 7.

commit 9b6f5c364206d2685e2a6cde38793a6a076e3fd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 16 13:40:02 2014 +0000

    drives: Centrally create overlays for read-only drives.
    
    qemu has broken snapshot=on ... again.
    
    Change the way that drives are created so that the backend no longer
    has to use snapshot=on, <transient/> (which never worked), or UML's
    corresponding COW-creation feature (also broken).
    
    Instead of that, the src/drives.c code will create overlays when
    required by calling into a new backend operation 'create_cow_overlay'.
    This operation runs 'qemu-img create -b' or 'uml_mkcow' as determined
    by the backend, and returns the name of the overlay.
    
    The format of the overlay is still backend-specific because qemu needs
    to use qcow2 and UML needs to use COW.
    
    This patch also includes some factorization of the libvirt XML code.
    
    This also drops the drv->priv (private per-drive data) field, since it
    is no longer used by any backend.
    
    This also moves the guestfs___drive_source_qemu_param utility
    function, used & shared by the direct & libvirt backends only, into
    src/launch-direct.c (from src/drives.c).

commit bc666de586c97167b5c40b7b5aef6dd5c52eef70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 16 15:03:04 2014 +0000

    fish: Fix tests that specified qcow2 format, but passed a raw format disk.
    
    In some tests we were specifying qcow2 as the image format when adding
    a disk, but actually passing a raw format image.
    
    Libguestfs previously did not detect this until guestfs_launch, but it
    was still a bug to pass an incorrect format to guestfs_add_drive_opts.
    
    It only worked because these tests never call guestfs_launch.
    
    A later commit in this series will cause this to be detected
    (sometimes) during guestfs_add_drive_opts.

commit 61bfe6e9a8d503082678fc1b624e30a5b5c8431b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 16 18:01:20 2014 +0000

    builder: Fix unterminated I<...> in man page.
    
    Thanks: Lukas Zapletal.

commit 2b0ddb8680e45f902617e67d1c0281a0115d621c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 16 14:58:25 2014 +0100

    builder: add a JSON output for --list
    
    Simple JSON output for sources and templates, to be able to query them
    with no need to parse unstructured outputs like the "--list-format long"
    one.

commit b983162b1bad042185a569bd27969a4ed127b3f7
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 16 12:34:48 2014 +0100

    builder: add --list-format
    
    Add a --list-format which allows to choose which in format should be the
    output of --list.

commit ef31a15ce32ea49b7f24eeac279b830ef954c8e4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 16 11:49:05 2014 +0100

    builder: small refactor of the list output
    
    Switch from a boolean for the short/long list output to labels for the
    actual format. Also, split the output of each list format to an own
    function for easier maintaineance.

commit 801cce2cc9459b580c7bb7ad586c75a9b8df2a9e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 15 18:51:18 2014 +0100

    fuse: clear stat structs (RHBZ#660687).
    
    Not all the fields of struct stat are actually filled by us. This caused
    rubbish to appear in the microseconds fields, which were then used as
    base when changing atime/ctime (with e.g. touch), triggering EINVAL by
    futimens/utimensat when those rubbish values were out of the range
    allowed for microseconds.

commit 2dec29f7a6fc3c8050fc6522debe203ed84539c2
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Jan 15 14:02:24 2014 +0100

    fuse: remove extra trailing \n in debug messages
    
    debug() adds it already.

commit 3a1f0f1863a4e2008f7f400c16907e3ba5eb251f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 14 17:30:40 2014 +0000

    builder: Add documentation for how to import images into OpenStack.

commit 6963865daf626db5ed11b57cf640f4c4ece278c1
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 14 13:30:19 2014 +0100

    builder: test-virt-builder: check some results
    
    Check at least some basic modifications in the image created with
    virt-builder.

commit cf95541ebeb0960de402733d51e4a0c3cf45fa67
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Jan 14 11:08:25 2014 +0100

    builder, edit, fish: use copy-attributes
    
    Make use of the new copy-attributes command to properly copy all file
    attributes from a file to the new version of it.

commit 0092c6165ab68b8d992366b59a3dbebfc8758d28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 13 22:09:26 2014 +0000

    Version 1.25.21.

commit fd17c8a4488eb8549d4c5bb28e249b20f3932cfd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 13 22:10:39 2014 +0000

    fish: Add test-file-attrs.sh to EXTRA_DIST.
    
    This fixes commit efb5f1841524ec75d765368b447270b8a3aff8ac.

commit 5239a94ed4a83f3f94f855b5f55750d2b8f95e5d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 13 20:58:08 2014 +0000

    builder: planner: Whitespace change.

commit 1b20381a91cfefc3b4b5a6b2ddab365ad1be09a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 13 20:42:48 2014 +0000

    builder: For performance, recommend using the --no-sync option.

commit 9913e29775abb97b2cf188b76b4196a33a6505fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 13 20:29:50 2014 +0000

    builder: Add --no-delete-on-failure option to aid debugging.
    
    This lets you debug failures in virt-builder, especially when scripts
    or installing packages fails.

commit 7bc47fd1dade6e05047a32083a2a2e321558589c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 13 20:16:27 2014 +0000

    builder: Minor documentation fix to manual page.

commit 402b4fd02a9e67d7d523c032b634e6b400b57fce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 13 19:26:01 2014 +0000

    Update generated files for new copy-attributes API.
    
    This updates commit efb5f1841524ec75d765368b447270b8a3aff8ac.

commit 5b661aa97032031394862827e8b999625abecf97
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 13 19:25:34 2014 +0000

    builder: Fix documentation for --attach option.

commit 4d98fd7076ce7a84c65c3fac44ba108fff842c8f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 13 16:19:51 2014 +0000

    builder: Document how to set Japanese in Debian 7.

commit d8780ed1306998aaa007af60729998ad48d0633c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 13 14:41:28 2014 +0100

    New API: copy-attributes.
    
    This allows one to copy attributes (like permissions, xattrs,
    ownership) from a file to another.

commit eab2399965d6d51d077444672febc9bcbe0f629b
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Jan 13 14:33:35 2014 +0100

    sysprep: add --operations
    
    Add a new --operation parameter which, similarly to --enable, can be
    used to enable operations, but also to remove them, and to add/remove
    the default operations and all the available ones.

commit 2096f7ff1a691d3dc061baebf38ee83f7d0034fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 12 18:07:21 2014 +0000

    Version 1.25.20.

commit 5a80d91cb735b7a97af6d4d17302a81a24af9d3f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 12 18:06:26 2014 +0000

    builder/website: Add CirrOS signature file to EXTRA_DIST.
    
    This fixes commit 40b88fdbc76515fd21b33f54587c7f4f7b6e9715.

commit 06f9cc70b0353b16ae828ec5f7bf9794a26ebcb7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 12 17:49:48 2014 +0000

    builder: Fix virt-builder test.
    
    Add Europe/London timezone to phony Fedora guest.
    
    This fixes commit dd1bfea513658368afd3728e0c5bf8ab6041cd1f.

commit fe75a8ba4eb4e3ee8451606dc9badf98b3be8529
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 12 17:06:02 2014 +0000

    builder: Document how to set Japanese language support in Fedora 20.
    
    This updates/fixes commit 7e8ad13e863a5c87e3da47288bcecdb88ca0e4cb.

commit 791e09831eb1add80128a4801421377032503119
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 10 21:17:09 2014 +0000

    builder: Document that SELinux guests will reboot for autorelabel.

commit aa45c546f08fdc1e0306bd9eebfa0c67aceb73af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 10 19:49:02 2014 +0000

    builder: Document how to set up local mirrors for performance and reliability.

commit b528a0e6ea015b05cf59860d5af3a11c93aa5159
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 10 19:48:28 2014 +0000

    builder: Document how to change the language/locale of a new guest.

commit 0b9433e69f9a61201888edcb1a927e2225e394a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 10 21:18:07 2014 +0000

    builder: Add --link option for creating symbolic links.
    
    This is useful for configuring systemd services.

commit 7ddc47ee02cf6656e756e84da9d19d6cfd4bf0db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 10 17:04:28 2014 +0000

    builder: List --install packages in the same order as on the command line.
    
    Previously the list was reversed.  Note this doesn't have any effect
    on how the packages are installed since the guest package manager
    doesn't care about the order.

commit 45a1eef13bc9dce22a94304cdcd7d70c0b684125
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 10 14:21:17 2014 +0000

    builder: Document how to change keyboard layout.
    
    This is too complex to implement directly in virt-builder.
    
    Instead we just document how to do it for some common Linux distros
    using --run-command, --edit etc.

commit 39362f84fbbf949c1302400f9157aaa78896fa13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 10 13:47:05 2014 +0000

    builder: docs: Remove confusing reference to timezone.

commit b28eb4409e1dfb8e3f0863dbe7fe873845bb628f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 10 12:12:30 2014 +0000

    sysprep, builder: Add --timezone option to set timezone of guest.
    
    You can use it like this:
    
      virt-sysprep --timezone Europe/London ...
      virt-builder --timezone Europe/London ...

commit 20bb05541d9b581f47e5798a9aaad71d8887a389
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 10 21:19:43 2014 +0000

    daemon: xattr: Remove unused variable.
    
    Revealed by using ./configure --enable-gcc-warnings.

commit aa7c0f81247995fef9ffca2274112a903664b881
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Jan 10 15:10:03 2014 +0100

    daemon: xattr: move the listxattrs code in an own function
    
    Move in an own function the code that does the (l)listxattrs allocating
    the buffer of the right legth, as it will be useful later.
    
    No functional changes, just code motion.

commit d94bd3d00fd4193d53c259eb8e9a3150acad806a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Jan 9 18:59:19 2014 +0100

    daemon: xattr: simplify the enabling of the linuxxattrs features
    
    Instead of enable them when having one of the two headers for it but
    still checking for the HAVE_* availability of each *xattr() function
    used, just enable the linuxxattrs as a whole when having any of the
    needed headers (like before) and all the needed functions.
    
    This might cause the linuxxattrs to not be available anymore on systems
    without the whole set of *xattr() functions implemented, but OTOH it
    simplifies the xattr.c implementations.

commit 6e3790d610ebfb4c63cb8ad7dd418e930a1fe3a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 8 20:22:21 2014 +0000

    tests: Add a regression test for libvirt authentication (RHBZ#1044014).
    
    This tests the virConnectAuthPtrDefault wrapper path.

commit 37ce0dff0a40e00e1ee366f6376acb3b968719b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 8 19:36:00 2014 +0000

    tests: Add a regression test of libvirt authentication events.
    
    This requires a change to libvirt (in libvirt >= 1.2.1), see:
    
    https://www.redhat.com/archives/libvir-list/2014-January/msg00378.html

commit cf39a2f9c4b1c99a3d741d771ba13eb0e7a5479f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 2 12:20:18 2014 +0000

    libvirt-auth: Provide a friendlier wrapper around virConnectAuthPtrDefault (RHBZ#1044014).

commit 3ca8350ebf441ea51dff02b16d1e20797630d773
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 7 17:32:04 2014 +0000

    builder: Fix handling of --size parameter.
    
    It now matches the documentation:
    
      "Select the size of the output disk, [...]
    
      Virt-builder will resize filesystems inside the disk image
      automatically.
    
      If the size is not specified, then one of two things happens.  If
      the output is a file, then the size is the same as the template.  If
      the output is a device, partition, etc then the size of that device
      is used."
    
    This also adds checks to make sure that users don't try to shrink a
    disk (which is not possible), and they don't try to resize larger than
    the output block device.

commit 916c81a5fb3c9bfd4d33a157bafcf09bd1ed2de9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 7 17:30:57 2014 +0000

    mllib: Add library function to run external command and slurp up the output.
    
    This also changes a couple of functions to use this new library
    function.

commit c363a6e7974c469ceb938e34ec0b70be2b6a9714
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 7 17:30:20 2014 +0000

    builder: Pass ~prog global (program name) around.

commit d1162b1bbdec8789b26f456c0b4ff7167dc7dcb1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 7 14:52:08 2014 +0000

    builder: Note in man page how to specify size in bytes.

commit 0bb5e9fbf3a3d283a7be9725cc7bb75c0ba26e19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 4 12:37:40 2014 +0000

    builder: Add CirrOS 0.3.1 disk image.

commit e9cd8d0058d1a23a31cbd87706b3dc00dabb21dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 2 17:06:10 2014 +0000

    Version 1.25.19.

commit 993ca8527c3f0e67235af1064255fb26a785b236
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 2 16:53:34 2014 +0000

    Update copyright dates for 2014.

commit 90788410f380fd1d670b68c29b04762a472280c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 1 16:32:56 2014 +0000

    Allow ./configure --without-qemu.
    
    This means there will be no default hypervisor, and effectively the
    user will always have to specify one (eg. by setting LIBGUESTFS_HV or
    calling guestfs_set_hv).
    
    This is useful on platforms where qemu doesn't work, or where qemu is
    not needed (eg. if you want to use UML, or you just want to compile
    libguestfs without using/testing it).

commit 06ec51d428d96a696a1d7a97cfa4a09b0c9f024d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 27 09:45:49 2013 +0000

    ruby: Fix .new method (RHBZ#1046509).
    
    The .new method was unintentionally broken in
    commit 9466060201600db47016133d80af22eb38091a49.
    
    This fixes the .new method and allows it to be called with multiple
    parameters, so you can use:
    
      Guestfs::Guestfs.new
      Guestfs::Guestfs.new()
      Guestfs::Guestfs.new(:close_on_exit => false)
      etc.
    
    For backwards compatibility, Guestfs::create may still be used.
    
    This commit also adds regression tests:
    
     - Use .new method in regular tests.  (Because this was not done
       before, we didn't catch the breakage.)
    
     - Test that ::create still works.
    
     - Test that args can be passed to .new method.

commit 4c09823d3a1dd32e18c81be7deb7eef92c5ccc99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 27 13:21:38 2013 +0000

    RHEL 6: ruby: Fix fallback to rake/rdoctask for old rake.

commit 02179962452024bb94397bd5f4a4d70181e06146
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 27 12:56:51 2013 +0000

    RHEL 6: builder: Use iteri instead of List.iteri.
    
    RHEL 6 OCaml did not have List.iteri, so use the version from
    Common_utils instead.

commit 0420d7b00b0e49a3a872fa21eb10a11ec7efa488
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 23 16:35:53 2013 +0100

    tests/mountable: skip if btrfs is not available
    
    This test uses btrfs, so skip it if either the "btrfs" feature or the
    btrfs filesystem is not available.

commit 402e8879b1825bd1b172caeddfe24c182e29539a
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 20 15:00:09 2013 +0100

    inspect: fix detection of newer CirrOS versions (RHBZ#1045450).
    
    Add an own case for CirrOS, based on the /etc/cirros/version file
    provided in newer version instead of the Buildroot-generated
    /etc/br-version.

commit 7be5f8dc3f93f1eb9a720070331c06087e62d51d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 15 10:13:10 2013 +0000

    builder: Add support for RHEL 7.0 beta 1 (public beta) to the script.

commit de8a4d5b60542f870390564576d9880ed5d7214e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 20 11:38:52 2013 +0100

    Re-add regression tests for rh#563450
    
    Added in 2392fae6803b9de4a4761509007c160339d57f50 and removed in
    be025369ad622867ecf08d5c9170e8e59d2d6294; now they should work with any
    backend, as the device names are normalised and not change the guestfish
    output depending on the used backend.
    
    Thanks Richard for the hints.

commit cce9480737492a82daa41a70938a41bc5624bdc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 19 18:38:57 2013 +0000

    launch: libvirt: Clearer message when libvirt screws up.
    
    Instead of:
    
    libguestfs: error: could not create appliance through libvirt.
    Try using the direct backend to run qemu directly without libvirt,
    by setting the LIBGUESTFS_BACKEND=direct environment variable.: internal error: process exited while connecting to monitor: qemu-system-x86_64: -drive file=/tmp/libguestfs3RnJSd/snapshot2,if=none,id=drive-scsi0-0-0-0,format=qcow2,cache=writeback: could not open disk image /tmp/libguestfs3RnJSd/snapshot2: Could not open backing file: Could not open '/home/lsm5/fimagebuilder/fedora-imagebuilder/fedora-imagebuilder-sda.qcow2': Permission denied
    
    it will now say:
    
    libguestfs: error: could not create appliance through libvirt.
    
    Try running qemu directly without libvirt using this environment variable:
    export LIBGUESTFS_BACKEND=direct
    
    Original error from libvirt: internal error: process exited while connecting to monitor: qemu-system-x86_64: -drive file=/tmp/libguestfs3RnJSd/snapshot2,if=none,id=drive-scsi0-0-0-0,format=qcow2,cache=writeback: could not open disk image /tmp/libguestfs3RnJSd/snapshot2: Could not open backing file: Could not open '/home/lsm5/fimagebuilder/fedora-imagebuilder/fedora-imagebuilder-sda.qcow2': Permission denied

commit 109e710d3856a156176fa73e6ec13a17cc2b5c18
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 19 14:22:26 2013 +0000

    launch: libvirt: Don't default to using NULL for libvirt connection URI (RHBZ#1045033).
    
    NULL means that libvirt gets to guess what connection URI we meant.
    Currently it guesses qemu:///session for non-root and qemu:///system
    for root.  Except if LIBVIRT_DEFAULT_URI is set in which case this is
    used even if it's not appropriate.  Except if Xen is installed in
    which case it guesses xen:/// which is not helpful at all.
    
    Instead use qemu:///session (or qemu:///system for root -- that's
    likely to be wrong, but we can't help that).
    
    If the user really wants to use NULL and let libvirt guess, then they
    can now specify the libvirt:null backend.
    
    See:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1045033
    https://bugzilla.redhat.com/show_bug.cgi?id=886915
    
    A good way to test this is:
    
    LIBVIRT_DEFAULT_URI=iambroken libguestfs-test-tool
    
    The libguestfs libvirt backend should (after this commit) ignore
    LIBVIRT_DEFAULT_URI.  However other parts of libguestfs will still use
    it, eg. guestfs_add_drive_opts, guestfish '-d' option.

commit aa1b49bd44ef95fa97b5d0ceb6018714ecc48307
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 19 11:17:43 2013 +0000

    builder: Add --update option to update template/core packages.

commit 65a4f24247cc6adc5d99bef30a72727ef91a253f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 19 08:21:53 2013 +0000

    run: Use timeout --foreground option.
    
    If timeout doesn't have this option (RHEL 6) don't use timeout at all.
    
    Attempt to fix RHBZ#1025269.

commit 3e0e0d1fbf48aaabbbc00b09fae7695f08199d24
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 18 20:42:41 2013 +0000

    Version 1.25.18.

commit 6b92309570190b03ef1d4a69b41693d04e1c76dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 18 20:40:54 2013 +0000

    tests/regressions: Remove regression tests rhbz563450*.
    
    These two tests failed 'make check-release' (particularly the
    UML tests).
    
    This partially reverts commit 2392fae6803b9de4a4761509007c160339d57f50.

commit 6dce086bc7213ce4256ab72abfa1496a94c98653
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 18 18:38:40 2013 +0000

    Version 1.25.17.

commit ff4fd3a9f5b7c7ac2168bae146f4da3ebb416f94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 18 18:37:50 2013 +0000

    fish: Fix memory leak in inspect/-i code (detected by valgrind).
    
    This only manifested in the new virt-diff tool.

commit e217e4e3d3bfc1b9cd141bd48eb0eb952775691b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 18 17:38:26 2013 +0000

    Version 1.25.16.

commit 9bdd1377d34cb80c1259507d856d798c5ddd8b69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 18 17:37:56 2013 +0000

    builder: Change how EXTRA_DIST is generated.
    
    So that we don't need to change this every time we upload
    a new operating system signature.

commit 9c55bd45f9cfafc812d2c376905b063ff367c215
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 18 16:16:15 2013 +0000

    Update to latest gnulib.

commit d0242f490606779c13f6b9275ae06bc64097d6da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 18 16:03:43 2013 +0000

    appliance: Create an /etc/resolv.conf file referring to qemu user network nameserver (RHBZ#1044585).

commit e07ca10ba42db64a80b130eb86639ebb7c3e0488
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 16 14:45:29 2013 +0000

    New tool: virt-diff.
    
    This tool can be used to show the differences between two
    disk images.

commit 2ee25483a1a96f71b4589051a52da72ddcc0e7b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 19:32:42 2013 +0000

    daemon: Sort extended attributes when returning them.
    
    A single file can have multiple xattrs.  Previously these were
    returned in the same order as the kernel returns them.  However it is
    more useful if they are sorted by attribute name.

commit 2d6c704b2dea8a6b984ce14476108ec0575f6923
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 20:56:11 2013 +0000

    virt-ls: visit: Fix a bug with handling of extended attributes.
    
    The wrong pointer was passed to the visitor_function, resulting in it
    seeing the placeholder xattr entry (the one which stores the length of
    the list of xattrs - see
    http://libguestfs.org/guestfs.3.html#guestfs_lxattrlist ).
    
    virt-ls doesn't list xattrs at the moment, hence this bug was not seen
    before.

commit 7414e6618aeee3aa5bb95e3cb302c8031eb93b1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 16:06:19 2013 +0000

    virt-ls: visit: Add an opaque pointer to the visitor function.
    
    Useful for passing around data, but not used by virt-ls.  It
    will be used by virt-diff.

commit d34b956eb1cf75ae509c0adb01a1b959c143c80d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 09:11:19 2013 +0000

    virt-ls: Move visit and other functions to common code library.
    
    This will allow us to reuse these functions in virt-diff.

commit 11bb9b47bb10f3b19d126a12826313dbd162ba55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 10:26:30 2013 +0000

    fish: options: Add alternate add_drives_handle and inspect_mount_handle.
    
    These functions don't use the implicit 'g' global variable, but
    take a handle argument instead.

commit 4bd7dbcd55eee7b977666e29d154d230417b1151
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 09:57:23 2013 +0000

    fish: Add option parsing for -A and -D options.
    
    Same as -a and -d except these add the drives to a second list
    of drives (drvs2).

commit 715ffb81568ed62c91a69291d7297af03cbe50f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 16 15:09:58 2013 +0000

    fish: Move -d option parsing to common function.
    
    This is essentially just code motion, except:
    
    (1) It cleans up a few variable declarations which were implicitly
    used by the old macro that aren't needed any more.
    
    (2) The options are reordered alphabetically.

commit 49b2c11d425cd79b2d8b371e86e0c70db5851e9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 16 15:06:32 2013 +0000

    fish: Deprecate the -D option (prefer --no-dest-paths instead).
    
    This option will now print a warning:
    guestfish: warning: -D option is deprecated, use --no-dest-paths instead

commit cd5bd7799011518c846e2d04f0a1fc23fb2c5dea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 21:56:00 2013 +0000

    lib: Export guestfs_compare_* functions for comparing structs and lists of structs.

commit ce27c4937f36fe698ef9e2adae42a6bc17d16732
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 15:20:50 2013 +0000

    lib: Export guestfs_copy_* functions for copying structs and lists of structs.
    
    These complement the guestfs_free_* functions.

commit 6bba2de55356edf0e44a96d8a24842469b2ccaed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 21:28:49 2013 +0000

    lib: Rename cleanup-structs.c -> structs-cleanup.c and free-structs.c -> structs-free.c.
    
    Just renaming generated files, no other effects.

commit 73cf13d6234b0fffd451aa6c23c80b07be66debb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 22:09:21 2013 +0000

    daemon: Improve error message for readlink call.

commit f249bb058fac467be72a3fe8b4225a9180a78ba1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 13:57:10 2013 +0000

    generator: Fix bug in documentation of guestfs_free_* functions.
    
    These appeared in the documentation as:
    
     void guestfs_free_int_bool (struct guestfs_free_int_bool *);
                                                ^^^^
    
    which is obviously wrong.

commit 8762c9ab40babf5ae4a4216bdeb0fd83b4b63e38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 10:20:53 2013 +0000

    fish: Ensure print_inspect_prompt can only be called by guestfish.
    
    Code clean-up.

commit 062984e7e6a7b46c18fa378390976901246c473b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 10:19:26 2013 +0000

    inspector: Ensure low-level inspection functions can only be called by virt-inspector.
    
    Code clean-up.

commit 5ca029aea1d65162e8f6d67bb9787ded2ef77edd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 10:11:53 2013 +0000

    fish: options: Fix incorrect comment.

commit 13117ac9627d2357afcdc55368ca5e5fdb008557
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 16 14:37:12 2013 +0000

    virt-cat, virt-filesystems, virt-ls don't use libconfig.
    
    So it doesn't need to be linked in.

commit d8e277a62a4d56ad4efc7b24f33fee799048ebc3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 18 13:19:44 2013 +0000

    tests: guests: Add /etc/motd test file to Fedora test image.

commit 164fd74b15de4c398062fb77f27d73bfee0d49ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 18 15:05:36 2013 +0000

    builder: no_proxy environment variable should be passed to the appliance.

commit ef4bd7ca5a5bf40543fad1e6d6e006ae68cf9d29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 17 15:48:47 2013 +0000

    builder: Add Fedora 20 image.

commit 861b90b68885484a0159795185aa127ef5a01a85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 16 14:14:01 2013 +0000

    builder: Remove blank line.

commit 53e6334fa44f6876611e3ac8047e5118c3944e52
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 16 14:54:27 2013 +0100

    drives: add CD-ROM disk images as read-only drives (RHBZ#563450).
    
    The current add_cdrom way basically appends a new raw "-cdrom /path"
    parameter to the qemu invocation (even when using libvirt as backend),
    hence such images are seen as "CD-ROM drives" inside the appliance.
    However, there is no need for such particular behaviour, as they need to
    be handled as normal (read-only) drives.
    
    Adding CD-ROM disk images as drives also changes the device names used
    for them inside the appliance from /dev/srN to the usual e.g. /dev/sdX.
    
    These changes fix different issues:
    - it is possible to start guestfish without adding disks with -a, then
      just add-cdrom and run
    - list-devices does not cause guestfsd to crash when sorting the list
      of devices (exposed by the test case in RHBZ#563450)
    - the result of list-devices now reflects the order images were added
      (RHBZ#563450)
    
    add_cdrom is still deprecated, but now in favour of add_drive_ro
    (instead of add_drive), with its documentation reflecting that.
    
    Add two small regression tests for the fixes described above.

commit bd3780daec4d15a1b5168fe94c0785078dfcf6fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 18:54:56 2013 +0000

    builder: Refuse to write to a char device or /dev/null.
    
    virt-builder --output /dev/null is tempting, but not possible, and
    might result in /dev/null being deleted(!)  Check for this case and
    prevent it happening.

commit e1ef9c6e1e050cec821b6fdacbf43732ef0a9559
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 18:53:20 2013 +0000

    builder: Only use virt-resize --no-sparse when writing to a block device.
    
    Previously we would use the virt-resize --no-sparse option if the
    final output file was a block device.  This is safe, but unnecessary
    for example if virt-resize was used as an intermediate step.  So only
    use this option if virt-resize is actually writing to the block
    device.

commit 19e6b5bf368a6f9f6ea5b949b47c77723d492ca7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 17:32:40 2013 +0000

    Version 1.25.15.

commit 246f0fff3e32d2441418b2372fcaf6e55c20615d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 16:43:40 2013 +0000

    builder: Add a link to blog posting about the planner.
    
    http://rwmj.wordpress.com/2013/12/14/writing-a-planner-to-solve-a-tricky-programming-optimization-problem/
    should help people to understand how this code works.

commit 4d31664f7b8f8c70cf5a5ce7fbc34508cb2c5600
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 16:18:50 2013 +0000

    builder: tests: Add test-virt-builder-planner.sh to EXTRA_DIST.
    
    This fixes commit a27963b67ba1140c29c145a1ce14dbfc05f8d7da.

commit 879cb3bdbd6627371aeb915afb361be2fed4f35d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 16:18:23 2013 +0000

    builder: tests: Fix virt-builder --list output.
    
    This fixes commit a27963b67ba1140c29c145a1ce14dbfc05f8d7da.

commit 44bf6e398a6d59be17957a409bd94ffa3951a183
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 15:50:37 2013 +0000

    builder: Add a test of the planner.
    
    This tries out many combinations of size/format and ensures
    that the planner can deal with them.

commit dd21c551da82469d071e4a2383cc8586da8d21ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 15:50:04 2013 +0000

    builder: Flush debug info after printing it.

commit 47c7a2243daf9fd218eefdd274a1363320ac6ad0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 15:49:25 2013 +0000

    builder: planner: Handle no format= in source case correctly.

commit f10d864b93287d559a0ea6f107170a7e8eaef905
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 13 13:18:47 2013 +0000

    builder: Use a planner to work out how to convert the template to the final image.
    
    The original template might be, say, xz-compressed raw of a certain
    size.  We need to work out how to convert it to, say, qcow2 with a
    larger size, in as few operations as possible.
    
    Instead of using a nasty aggregation of special cases to do this, use
    a breadth-first search over all possible trees to try to find an
    optimal plan.
    
    (Actually the current implementation isn't optimal, but it's fine for
    virt-builder.)

commit fe100f288cdbf79ca6bbfd9848d32ec26356835e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 13:18:48 2013 +0000

    builder: Move is_block_device function into common utilities.
    
    This is just code motion.

commit 415f39f8a1a351f51650f97453497e278ce007dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 14 13:15:32 2013 +0000

    resize: Move roundup64 function into common utilities.
    
    This is just code motion.

commit a9080b3a711bd6a17b5dcfe1b881f1d82ebd804f
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Dec 12 23:59:53 2013 +0100

    golang: Don't run launch test if appliance has not been built.

commit ded4b2e12d8088bbf8a88eca1de7e84eea8755f3
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Fri Dec 13 11:04:30 2013 +0100

    sysprep: remove some Pegasus files, like certs (RHBZ#1041552).

commit c89d00c35920eb9f1fb9a9fa2befbd3ac80d6199
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 13 08:46:04 2013 +0000

    golang: Add note about difficulty of parsing go version numbers.

commit 16da369079691261d922d467b1846704779bd2ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 12 16:18:37 2013 +0000

    Version 1.25.14.

commit 0158ccbe01b4c83db130ebaa39c291e5ce543838
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 12 16:23:50 2013 +0100

    fuse: provide a stub "flush" implementation (RHBZ#660687).
    
    It seems that FUSE can invoke flush to make sure the pending changes
    (e.g. to the attributes) of a file are set. Since a missing flush
    implementation is handled as if it were returning ENOSYS, this can cause
    issues later.
    
    To overcome this, just provide a stub implementation which does nothing,
    since we have nothing to do and don't want to have FUSE error out.
    
    Furthermore, uncomment the timestamp checks in test-fuse.sh, since now
    they should be working fine.

commit 1261ee6c0bc5591066284c6d30b0d2c8750f198f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 11 19:22:12 2013 +0000

    recipes: Use new style -a/-d options in virt-edit example.

commit 07a86008b7cad3d001f29adeb8ab3fe62d402b70
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Dec 9 20:51:37 2013 +0100

    po: Create empty files to be edited by xgettext
    
    This avoids:
    
        xgettext: error while opening "libguestfs.pot-t" for reading: No such file or directory
    
    which I observed with xgettext (GNU gettext-tools) 0.18.3

commit e08d7d60b0d223c16d217f52b5103cee43169147
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Dec 9 20:50:21 2013 +0100

    Fix builder/website test in out-of-tree builds

commit 31cf379008f37cad621e105b58cbc8f9e1c008c6
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Dec 9 20:49:41 2013 +0100

    Fix manpage generation in out-of-tree builds

commit 540f298f696b819c295020684987cc4842526580
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 10 13:45:07 2013 +0000

    daemon: mkfs: Use -I option to force mkfs.fat to write a filesystem over a whole device (RHBZ#1039995).
    
    If you use virt-make-fs to create a partitionless FAT-formatted disk
    image then currently you will get an error:
    
    $ virt-make-fs --type=fat . /tmp/test.img
    'mkfs' (create filesystem) operation failed.
    Instead of 'fat', try 'vfat' (long filenames) or 'msdos' (short filenames).
    mkfs: fat: /dev/sda: mkfs.fat: Device partition expected, not making filesystem on entire device '/dev/sda' (use -I to override) at /usr/bin/virt-make-fs line 508, <PIPE> line 1.
          ...propagated at /usr/bin/virt-make-fs line 518, <PIPE> line 1.
    
    With this patch, the error goes away and partitionless disks can be
    created.

commit 5cd6785320a2b8232122b9a89ab84f2a4fd5c731
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 10 08:50:55 2013 +0000

    proto: Remove another error message which hides earlier error.
    
    When receive_file_data calls guestfs___recv_from_daemon, and that
    function returns -1, it adds the following error to the handle:
    
      receive_file_data: parse error in reply callback
    
    However this hides a more specific error message which was already
    added by guestfs___recv_from_daemon.

commit 4c18d6f7787194d958ef8648120d2f30b51636fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 10 08:48:04 2013 +0000

    proto: Remove error message which hides earlier error.
    
    When chunked encoding fails, the following error is added to
    the handle:
    
      [filename]: error in chunked encoding
    
    However all paths returning -1 from receive_file_data already set a
    more specific error, which this error hides.

commit ec2f94c4fdb00aeeab7a356552e885648743ebef
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Tue Dec 10 10:32:12 2013 +0100

    lib: fix newline in error output (RHBZ#923355).

commit 7ac66828643d9bff4b4f0b32826f74f07bb8b1c4
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 9 19:37:51 2013 +0100

    sysprep: mention globbing in help for --delete
    
    Followup of ed4bcb119cb908e98ecc1107dcd8b740ee2f484f.

commit 58056b45f482089d7e7d92c79b39b1769e477a36
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 9 16:19:12 2013 +0100

    sysprep: allow to specify globbing for --delete
    
    Adapt the globbing part from the old --remote-path work previously
    proposed for sysprep [1], allowing --delete to perform globbing when
    deleting paths.
    
    [1] https://www.redhat.com/archives/libguestfs/2013-October/msg00045.html

commit 560bad48fb795ca5abc5ca84ecbf4a60f3f94b01
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 9 16:19:11 2013 +0100

    launch: switch from -nographic to -display none
    
    The latter is a better way to disable the qemu display output as we
    need to, without enabling extra devices (which are disabled already,
    anyway).
    
    Also, related to the change above, ban the -display parameter from the
    ones that can be supplied by the user.

commit d05f408fc367db6728449dc5dc5e032336cbea58
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Mon Dec 9 16:19:10 2013 +0100

    sysprep: remove more anaconda and tuned logs (RHBZ#1039540).

commit fe01fbe110d1853000e0682754b83c52d7181b6b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 8 12:43:02 2013 +0000

    Version 1.25.13.

commit be80ad58ed932774b41284d605bb2d177e599174
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sat Dec 7 19:13:34 2013 +0100

    Fix virt-builder tests for out-of-tree build

commit ac5eeaecf8ca54d8261e312db7b0787e0df3082a
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sat Dec 7 19:12:51 2013 +0100

    Fix installing man-pages from out-of-tree build

commit bcfb951da0ea87dd82892529031de8c3105ce398
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 7 10:30:14 2013 +0000

    Add CentOS 6.5 image.

commit cdf20619530834b31f12581446f5e5d5017d027c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 6 18:58:17 2013 +0000

    recipes: Add a recipe for masking a systemd service.

commit d36ab3083c4b680f636672b72b16aa68a52ce6e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 6 15:02:36 2013 +0000

    Revert half of "builder: translate more user-visible strings"
    
    Don't change "os-version" to "OS version".  It's intended to be the
    same as the virt-builder man page, which consistently calls this the
    "os-version" string.
    
    This partially reverts commit ee0e56f43e55307fefa1d04505ed6477d604d220.

commit 6a4ae9596eb150a88d1077b412aa613ad0d16a05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 5 22:37:48 2013 +0000

    launch: direct: Pass -enable-fips option if qemu supports it.

commit d93e0c5840f599a01225a3f91961a7490a4b3d93
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 5 16:30:05 2013 +0100

    po: fix dependencies for libguestfs.pot extraction
    
    Fix the dependencies of the libguestfs.pot target: other than using the
    right make variables holding the contents of the POTFILES, depend also
    on the POTFILES themselves.

commit 871f663e65e7e49a0ea458f81a27864fbd460b3c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 5 16:30:06 2013 +0100

    fish: improve the command error messages
    
    - when a command needs no parameters, tell that explicitly instead of
      "command should have 0 parameters"
    - use gettext's plural form when printing the number of required
      arguments
    - improve the error message for a variable number of parameters limited
      only in the maximum number of them, using also a plural form

commit 3908e978667c64b2c0ede0cb84eaa10b0698b82c
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Dec 5 16:30:04 2013 +0100

    po: fix broken message extraction
    
    Extracting separately the pot for the various languages and then
    creating manually the global pot (by manually joining the above ones
    after having stripped their headers) is wrong, since other than being
    an hack it can create an invalid pot when the same message appears in
    sources written in different languages.
    
    Instead, a cleaner and safer solution is to first let ocaml-gettext
    (if available) extract the messages for the ml files, and then use
    xgettext to extract the messages for the other languages, joining the
    new messages to the existing (or not) pot file.

commit 9ed05cdd134818325eed728c6d0b5c976f35a97e
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Wed Dec 4 15:34:46 2013 +0100

    builder: translate more user-visible strings
    
    Translate also the "OS version" and "Notes" strings that appear in the
    --long output.

commit 493089f8b524ffa0ce3a7d059ad316bdc7bfd71b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 2 13:40:56 2013 +0000

    Version 1.25.12.

commit 1a27f506fa5546bf5b5ff28dac655b4c8011c11d
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Nov 28 15:49:14 2013 +0100

    inspect: improve detection of FreeBSD install discs (RHBZ#1033207).
    
    Check for /boot/loader.rc as "install disc" detection, using it to mark
    FreeBSD install discs.
    Also, check for /mfsroot.gz to see whether such disc is also a live one.
    
    See also RHBZ#1033207.

commit eebd991979b925434c73b5a892882df0d8e9ccc6
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Nov 28 14:48:37 2013 +0100

    inspect: ignore special CD devices on FreeBSD install discs
    
    /etc/fstab in installation discs of FreeBSD can have an entry pointing
    to the mounted CD itself; skip it as it is done with other CD devices in
    check_fstab.

commit 399dad5adcad562213c0fccac1e95032a7ba4604
Author: Pino Toscano <ptoscano@redhat.com>
Date:   Thu Nov 28 14:48:36 2013 +0100

    inspect: recognise Debian live images as such
    
    Check for filesystem.squashfs also in /live, since it is where
    live-build places it.

commit 38de0ac66cacc6b833b67a85474f3555a7a83f87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 26 18:32:01 2013 +0000

    launch: direct: Whitespace fix.

commit b8024a7278101beb86f7e104255088a25edcc00f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 25 23:25:12 2013 +0000

    launch: Print program and version as part of standard debug output when launching the handle.
    
    There are a lot of cases where people post debugging output, but we're
    not sure precisely which version they are using.

commit 17f2ca4999b23dd3eb0d85c00d25b05ab9536d8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 25 22:49:53 2013 +0000

    tests: Test that network drives are mapped to correct qemu -drive parameters.
    
    Although this test only specifically tests the direct backend, the
    same code is shared with the libvirt backend in some circumstances
    (eg. creating readonly drives).  So this is testing a bit of both.

commit 5b0dd9f142bd63a045b87129231b63b314ef8faa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 25 20:07:27 2013 +0000

    ocaml: Remove unused function prototype.

commit fcd075c446b832a4ece7c9baccf37e0c7f1e8cf6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 25 17:02:29 2013 +0000

    po-docs: If *.pod files are missing, tell user to run 'make update-po'.
    
    I'm now fairly convinced it's not possible to do this automatically.
    However we should at least tell the user what needs to be done.

commit 79a4378a1d2983ebdf35aa6095dbbe1e4ac4347d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 23 09:46:44 2013 +0000

    Version 1.25.11.

commit 9efed2d3356b9dead45a8abe6374c62e2c16069e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 23 09:37:17 2013 +0000

    sysprep: Fix broken test when backend is UML.
    
    This fixes commit cc1888a4977eb4942254ea5ac15c1d0a47458317.

commit 53ca673176a2ddb9bf335cb500ee317e4e6682aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 22 17:16:11 2013 +0000

    Version 1.25.10.

commit a0b969e56196a86ddf4828fefebfcd4fd1822bbc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 22 17:15:20 2013 +0000

    lua: Don't redefine lua_objlen if already defined.
    
    lua 5.2.2 seems to define this symbol already.

commit d34f765cb7fd3d472350309ea52256394c67e14d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 22 16:39:46 2013 +0000

    Version 1.25.9.

commit a7d00a6d4718d60a1a51ccc1b0840ae6f4560883
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 22 14:40:18 2013 +0000

    sysprep: Add a test suite for the --password option.

commit 008d98a098ddf438c3d94c7bb74e5c7bdfeb0238
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 21 17:13:22 2013 +0000

    builder/sysprep: Allow accounts to be locked (RHBZ#1028660).
    
    This allows you to select both locked accounts and disabled
    passwords.  The two are subtly different concepts.
    
    A locked account [cf. passwd -l] puts "!!" at the beginning of the
    shadow password field.  Locking is reversible, because the "!!"  can
    be removed, restoring the original password.  Therefore "locked"
    acts as a flag in front of an existing selector.
    
    A disabled account has "*" in the password field.  Therefore it has no
    password.
    
    Note that an account may be both locked and disabled, although this is
    probably not useful.  The shadow password field will contain "!!*".

commit aca90bf6f627b096bba36d75f65149dd1c05a1bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 21 17:34:44 2013 +0000

    builder/sysprep: Allow 'random' as a password selector.
    
    This chooses a random password.

commit e80e80af2d0dbc7ca517f14b820c3c112c6ba8c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 21 17:24:58 2013 +0000

    mllib: password: Replace password string with password_selector type.
    
    This is just code motion, there is no functional change.

commit 5b85bf71284b49f81a0a5587c5eca52de6edc934
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 21 13:57:07 2013 +0000

    builder/sysprep: Describe --password/--root-password option as "selector".
    
    It now appears in the respective man pages as:
    
      --root-password selector
    
    or:
    
      --password selector
    
    This avoids confusion from people who think these command line options
    take the password directly.

commit 53a259287e3fe55f2a5715e1e8e294a254a99d06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 21 14:30:11 2013 +0000

    ls: Note that you can use virt-cat or guestfish to show file differences.

commit 2d463453f45c813b42753eff11c1dd7b6d38b27a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 21 14:29:29 2013 +0000

    ls: In image diff example, don't use --time-t.
    
    It shows differences in file access times (atime) which is not
    actually that useful for most people.

commit 0b1bc41baf13409fe49fe42f392be852db92ac8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 19 17:49:45 2013 +0000

    FAQ: "execl: /init: Permission denied" error also caused by /init not being executable.
    
    This updates commit 98cd329323d35ab54efd976e095ae9cbf18ad338.

commit b3270f68d896ec1bbf3363d5aa657920717eab61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 19 16:59:34 2013 +0000

    FAQ: Attempt to explain "execl: /init: Permission denied" error.

commit 820b483e5f4e77b7798ba5d4be4ad815cdff1e43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 19 09:09:02 2013 +0000

    lib: Make sure -lselinux is used when linking libguestfs.so.
    
    If libselinux was detected, it was not added to the linker command
    line.  This still worked (at least on Fedora) because some other
    library pulls in the dependency implicitly, possibly libvirt.  However
    this broke on Arch:
    
    https://aur.archlinux.org/packages/libguestfs/
    
    Reported by and thanks: Antoni Segura Puimedon.

commit a522a14bbc25293d16d1cc346e5948bb99364d69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 15 09:05:43 2013 +0000

    daemon: btrfs: Upstream 'btrfs device add' command now needs '--force' option to work.
    
    However earlier versions didn't have the --force option, so we
    have to detect it.

commit 504fc657ceae144522d22c8a6eb3f4925790a935
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 14 17:01:12 2013 +0000

    Version 1.25.8.

commit 7860d70e21685f1e2a80610860e7d6c5546cc896
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 14 15:50:03 2013 +0000

    virt-win-reg: Allow URIs (RHBZ#912193).

commit 07062d88623260c8b152c0a9481ed9b4a87c3ad1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 14 15:45:23 2013 +0000

    perl: Give error instead of crashing if optarg is not an array reference.
    
      $g->add_drive ("", server => 1);
    
    would segfault.  Now it gives a nice error instead:
    
      array reference expected for 'server' argument at [line]

commit 17a982f5df98a66065aa357ec98e007db6cefb77
Author: Török Edwin <edwin@etorok.net>
Date:   Thu Nov 14 11:13:50 2013 +0200

    Avoid modulo bias in random password generation
    
    Char.code (input_char chan) mod nr_chars has modulo bias because
    the original interval is not a multiple of the destination interval,
    i.e. 256 mod nr_chars != 0.
    
    One way to fix this is to keep generating random numbers until they fall outside
    the interval where modulo bias occurs, that is accept only c=[256 % nr_chars, 256).
    That interval maps back to [0, nr_chars), and has a length of
    (256 - 256 % nr_chars), which is a multiple of nr_chars.
    
    RWMJ:
     - Modify the code so it goes into a utility library.
     - Use the same code across virt-builder and virt-sysprep.

commit 377a1cef7633cec6b4a2ca694b70ff35cbca7ba1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 14 10:09:52 2013 +0000

    mllib: Add a utility function for safely reading from /dev/urandom.
    
    OCaml's buffered 'in_channel' has a 64k buffer, so using it to read a
    few bytes from /dev/urandom removes a lot of the system's entropy (for
    example /proc/sys/kernel/random/entropy_avail goes from ~3000 to 128).
    
    This patch was originally by Edwin Török for builder.ml.  I
    generalized it because there are two other places where we did
    over-sized reads from /dev/urandom.

commit 28df30e3316a50b5ace69cc6fc2abd959bc41347
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 12 19:57:29 2013 +0000

    builder: Clarify architecture section of the documentation.
    
    I have checked and cross architecture builds work fine:
    
    http://rwmj.wordpress.com/2013/11/09/virt-builder-running-on-arm/#content

commit 6743571a388efa2895ddf644183b4a9f0ca6c5ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 12 08:49:45 2013 +0000

    Change supermin man pages section 8 to section 1.
    
    Corresponding change in upstream supermin:
    https://github.com/libguestfs/supermin/commit/cb3f9e8bbaf5e612fdf97caf9f47a4cd839c3438

commit 630b0d394fcb2bc95f54e6c4d2b2eec344262291
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 11 18:34:49 2013 +0000

    podwrapper: virt-install is not a libguestfs page.
    
    This now redirect to http://man.he.net/man1/virt-install, but this is
    unfortunately a 404.
    
    Incomplete fix for RHBZ#1029134.
    
    Thanks: Paul Maunders.

commit d6bce015a7ebf8547964578b4d6cb33ca3214bc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 11 12:29:35 2013 +0000

    builder: debian: Remove bogus proxy from apt configuration.
    
    Thanks: Daniel Miranda

commit 7b411452e2ae4ad171468d4fb3a4ad67cd0b81c1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 11 13:15:19 2013 +0000

    builder: After building a template, print fields for index file.

commit 183ae83714e81f70e18edaeb0144ccf6e537be93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 8 16:14:41 2013 +0000

    Version 1.25.7.

commit 39e4ae9e8966bef74e9e4d2477e945bb98a9ae0f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 8 16:13:35 2013 +0000

    builder/website: Add some missing files to EXTRA_DIST.

commit 10cfa2f8a13ca79a9352dc1a8c57c6e87a917938
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 7 15:30:13 2013 +0000

    builder: Allow /tmp or /Temp to be symlinks to a directory.

commit b3b82e2b1aa4d3c3c498ffa8d655f338e3fa9a8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 7 15:29:51 2013 +0000

    builder: Allow upload to directory when target is a symlink to a directory.

commit a33d7ffbb4d4a8fad202d65a917728efaaadd250
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 7 14:05:45 2013 +0000

    Update TODO: Remove some things that we've done.

commit 47a6da8a983ef8dc1bff029dcd6a4ed4395a26b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 6 19:16:00 2013 +0000

    builder/website: Add support for RHEL 5 releases to internal RHEL script.

commit 3ec5dbdcbf1a0f754df100a461026011affdd37a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 6 19:15:42 2013 +0000

    builder/website: Don't use http_proxy in internal RHEL script.

commit 6917c2298639cdac8ad9118247961429894a8afb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 6 21:39:52 2013 +0000

    builder: After compressing the template, calculate the SHA-512 hash.

commit f83d591a39ed1766d84a0bb2edb37ed4faafdff4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 6 21:39:34 2013 +0000

    builder: Add a Scientific Linux 6 image.

commit 3e05c20dd1ee619662fd47b55320553ffa535b2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 6 19:19:20 2013 +0000

    builder: Old OCaml didn't have List.iteri, so add a utility function.

commit 35d4a97f22239551867edda741189054d42ef455
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 6 16:54:08 2013 +0000

    builder: Add script for making Red Hat Enterprise Linux instances.
    
    This uses some internal Red Hat repositories so it's not generally
    useful, but could be easily adapted by users.

commit df51e09a718e5974a3c518cec40e93c36e2821b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 6 15:08:08 2013 +0000

    builder: Fail if lex is not installed.
    
    This completes the fix for commit a4800e2d4fc50f372a8b626333c4fbb9b8ca9633.

commit 0af4a70fb0e2d44dee318a2ff81c58216055daae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 6 13:42:58 2013 +0000

    builder: Use common code to sysprep, sparsify and compress images.

commit 6c26a8553c08456db96c1c3bb36f1738f34845ba
Author: Adam Huffman <adam.huffman@gmail.com>
Date:   Wed Nov 6 13:32:32 2013 +0000

    builder: Add script for making Scientific Linux instances.
    
    RWMJ:
     - Renamed the script from sl.sh -> scientificlinux.sh
     - The output file is called scientificlinux-$version
     - I fixed some whitespace issues so it's now similar to the CentOS script.

commit ffd176768db9f28ec271478732331dfbb85db665
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 22:25:59 2013 +0000

    builder: Fail if bison is not installed.
    
    This partially fixes commit a4800e2d4fc50f372a8b626333c4fbb9b8ca9633.

commit 2ea0d5fad080cda1386e5f88d2cb49747460e0fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 17:40:20 2013 +0000

    builder: Add dependencies which automake doesn't generate correctly.
    
    This is a further attempt, earlier commits:
    commit e3ac293e869a4c69225e3d954b812e9bf21588a1
    commit dfe97b352d6b398c3cb3ddb1c9984767722e514b

commit 1151b15c6270a21c5fc4c86744f4ecaa9337c308
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 16:54:37 2013 +0000

    Update to latest gnulib to get hash relicensing change (thanks Jim Meyering).

commit 71d2a28d5df0d263aa5e104aa0714c3a01223fae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 16:51:08 2013 +0000

    builder: Fix centos script - output filename was wrong.
    
    This fixes commit 2f3fb2420e7f2ccc19fdc863ecc7b7ce29dd6aa1.

commit 01eeda7df78200af300dbafc1c58216ea2ed659e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 16:13:17 2013 +0000

    Version 1.25.6.

commit 0cef4106a18d73ce28ab5da5264271fac10bf7ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 15:56:34 2013 +0000

    builder: Add dependency from index-parse.h to index-validate.
    
    For some reason automake doesn't get this dependency right,
    resulting in occasional build failures if yacc races the
    rest of the build.

commit 7d98834014008924f9e6d4d7a9ed15118b9bd9af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 15:43:24 2013 +0000

    builder: Add some generated files to CLEANFILES.
    
    This updates commit a4800e2d4fc50f372a8b626333c4fbb9b8ca9633.

commit 0a7487c6229254f638ef0cba7745405168e9f3de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 15:42:05 2013 +0000

    builder: Add missing dependency.
    
    index-parser-c.c depends on index-parse.h being created first.
    However without an explicit dependency, this is not done (and implicit
    deps don't work because automake doesn't sufficiently understand OCaml
    programs).
    
    This fixes commit a4800e2d4fc50f372a8b626333c4fbb9b8ca9633.

commit 7128ed64d7dbd894297529e890b7cb7521d2e467
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 15:19:08 2013 +0000

    Version 1.25.5.

commit 7c06bffa31d3adbda38f6775c63ef877a7b169bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 15:16:55 2013 +0000

    Don't include email addresses in AUTHORS file.
    
    Some authors had duplicate entries because they had multiple
    email addresses.

commit 7b9be3bebeca6593fd1836871d928a64dc2bc48a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 15:15:17 2013 +0000

    builder/website: Add validate.sh test script to EXTRA_DIST.
    
    This fixes commit 154bfb7dd46e7998eed1d40ead95923590763739.

commit 7901007b32fe756c83d885731ce7680465d1ecc2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 14:08:01 2013 +0000

    builder: Replace centos-6.sh with a single script.
    
    Just use:
    
      ./centos.sh 6
    
    Note that you don't need to be root.

commit ffdaa9b79bd42b895f653f13993b1dc72ca3a055
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 14:08:01 2013 +0000

    builder: Replace debian-<NN>.sh with a single script.
    
    Just use:
    
      ./debian.sh 6 squeeze
    
    Note that you don't need to be root.

commit 1661b9e878b3d77cae56c7e73a118749af0e6384
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 14:08:01 2013 +0000

    builder: Replace ubuntu-<NN>.sh with a single script.
    
    Just use:
    
      ./ubuntu.sh 10.04 lucid
    
    Note that you don't need to be root.

commit 47cb77969a8bc200e543329cb939f90fdc43963c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 13:59:55 2013 +0000

    builder: Replace fedora-<NN> shell & kickstart with a single script.
    
    Just use:
    
      ./fedora.sh 18
    
    Note that you don't need to be root.

commit e2e15641ca526763e4fd2bc5196b8e538be3b8ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 10:21:32 2013 +0000

    builder: Internal implementation of parallel xzcat (pxzcat).
    
    Instead of calling out to the pxzcat program, use an internal
    implementation.  This requires liblzma to be available at build time.
    If it's not available, fall back to using regular xzcat.
    
    It is intended that eventually this code will go away when regular
    xzcat / unxz is able to use threads.

commit b141e97783d54794144a687a7159d12da2fce341
Author: Nikos Skalkotos <skalkoto@grnet.gr>
Date:   Tue Nov 5 12:15:47 2013 +0200

    Fix fstab block device resolution for FreeBSD
    
    The device name prefix for IDE hard drives used to be `ad' but now
    is `ada' (http://www.freebsd.org/doc/handbook/disks-naming.html).
    For virtio hard drives it is `vtbd'.
    
    Under an MBR partition table a slice will be used, so the name of
    the first partitions will be either `ada0s1a' or `vtbd0s1a'. Under a
    GPT partition table, where no slice is needed, the name of the first
    partition will be either `ada0p1' or `vtbd0p1'.
    
    Signed-off-by: Nikos Skalkotos <skalkoto@grnet.gr>

commit 84c2c20f29b4caf7195d36e9ef05686b81595fc4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 07:25:46 2013 +0000

    builder/website: Add index validation test script.

commit 27a4bb5da8d8c917970293bf6bf8cc3b95175bfd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 07:20:37 2013 +0000

    builder: Add an extra Makefile.am to builder/website.

commit cbe49ec3c42d9bd4c16d40d89821e36d1e432fce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 5 07:15:19 2013 +0000

    builder: Fix missing files in EXTRA_DIST.
    
    This fixes commit a4800e2d4fc50f372a8b626333c4fbb9b8ca9633.

commit 4dc6cbced623f45406a9d78ec1a737c84054fc7e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 4 22:33:48 2013 +0000

    Version 1.25.4.

commit 399537149e6b56c2aa85d2c21128a711cf7fbca3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 4 22:13:23 2013 +0000

    builder: Fix 'check-valgrind' so it does something in this directory.

commit 6906c1c60f87071439f479dd7831c71db2b88690
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 4 14:53:41 2013 +0000

    builder: Add a real scanner/parser for index files.
    
    This adds a tool called virt-index-validate to validate index files.

commit d18059e87edb1828ad5dedaea4dbfd1515bab905
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 4 21:35:48 2013 +0000

    builder: Don't use git tree / libguestfs.git to refer to the source.
    
    git is just a VCS.

commit c827db08e810999b534ae6bd2949e74e531b2bfb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 2 08:31:27 2013 +0000

    df: Allow parallel test to be skipped.
    
    It currently fails because of
    https://bugzilla.redhat.com/show_bug.cgi?id=1025942

commit 6f1a14138bbf8fad59acbcf972cfbb9c3e11e12d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 1 16:47:20 2013 +0000

    builder: Only warn about unknown fields in the index if -v option is used.
    
    Allows us to add new fields in future without having pointless
    warnings from old versions of virt-builder.

commit 1ac035c27f2531d29d9caa2c5e69f3fbf9ce950d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 1 16:45:52 2013 +0000

    builder: Allow checksum= as an alias for checksum[sha512]=.
    
    This is for backwards compatibility with virt-builder 1.24.0 which
    could not parse a key that contains square brackets and numbers.
    
    This updates commit 4b73e0be29302da0ae8c5c79a51e770cbe6ed7cf.

commit 0ae16fe46103a0c01dce48b071cd7f5f147665f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 1 15:10:11 2013 +0000

    builder: Update TODO file with some more ideas.

commit 1cf66d95e768bfa34790e3878b03d76347f1c823
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 1 14:44:36 2013 +0000

    Version 1.25.3.

commit 244e8bf0eaed1b26294a30fd4d839f1832d7c820
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 1 14:45:39 2013 +0000

    builder: Add missing files to EXTRA_DIST.

commit 5a5474e22df67a8e633352f090776e75a9508f06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 1 14:33:25 2013 +0000

    ./run: Disable timeouts in tests on RHEL 6.
    
    Workaround for https://bugzilla.redhat.com/show_bug.cgi?id=1025269

commit a6f64f241849d066a7c60ea9d7183dbc84a0dbd6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 1 14:16:34 2013 +0000

    builder: Allow multiple source paths to be specified.
    
    Users can now specify multiple source paths, eg:
    
      virt-builder --source http://example.com/foo \
        --source http://example.com/bar
    
    to get templates from multiple places.
    
    There is still only one built-in path, but we can add more later.

commit 3c6423f4bab7649c27f4e3f65d4fd3c4ea75d64d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 1 13:48:30 2013 +0000

    builder: When debugging, print curl command before running it.

commit b37abd79a83fa9c4ea1635b0e4f0bb8630086b80
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 29 21:03:15 2013 +0000

    builder: index: Add checksum[sha512]=... option and deprecate template sigs.
    
    We don't need to sign individual templates, provided the signed index
    file contains the cryptographically secure checksums of the templates.
    Since the index file cannot be interfered with and the checksums
    cannot be spoofed, this is sufficient to ensure the integrity of the
    templates.
    
    Note the template signatures are now deprecated and will be removed in
    libguestfs 1.26.  To avoid any backwards compatibility issues, I will
    backport the relevant changes to the stable-1.24 branch.
    
    Thanks Dennis Gilmore for pointing out that we could do this.

commit 4a1ed2d4aa4eb9b72cabf2b96c98fd6f1d9f7d86
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 1 08:21:23 2013 +0000

    ./run: Fix massive thinko in $PATH setting.
    
    This fixes commit 76c20d761b24195b3cd7a620524ae84ed0ab6ab3.

commit f2f0191e469b8267c1dc807be0416c576da025ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 29 21:03:01 2013 +0000

    builder: Whitespace change in error message.

commit f5f50e12ddf822ae43d8aacea3e589e170e7f46e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 29 21:02:39 2013 +0000

    builder: Be more careful about deleting temporary files on exit.

commit 5a50bc0b9fef4d46f192cf317cddb9ff012ce860
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 29 21:01:54 2013 +0000

    builder: Whitespace fix in Index_parser module.

commit 3ab3599b2c8504eba996dec71a31a8015eecfde5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 29 19:45:23 2013 +0000

    Version 1.25.2.

commit 87d47b4ab7ffa78911ee76506ab68b10cb4deccd
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue Oct 22 16:17:25 2013 +0800

    sysprep: add feature of deleting specified paths
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    Signed-off-by: Richard W.M. Jones <rjones@redhat.com>

commit 47cadf959ce324ba561944fddb46dece12c06ab6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 29 19:23:33 2013 +0000

    builder: Add -m/--memsize and --smp command line options.

commit 51968d551ded5e0bf5b05079126f0705bb3c085e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 13 15:45:38 2013 +0100

    launch: direct: Add some code to enable qemu / gdb debugging.
    
    See the comment for details.
    
    Note this is disabled by default.  Developers can only enable it by
    changing #if 0 -> #if 1.

commit 799ea6caac9440fec6b88e1fc87da0419a5e185e
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Oct 29 13:27:30 2013 +0000

    docs: guestfs_case_sensitive_path returns error on non-existent path

commit 1cbceedfc2d61cfe3e2c2e5228bb2d28e9595972
Author: Daniel Exner <dex@dragonslave.de>
Date:   Tue Oct 22 20:44:43 2013 +0200

    Initial FrugalWare support.

commit 8fcae2681f9317979e13e19e1d8779122f24e4a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 27 18:50:07 2013 +0000

    builder: Add CentOS 6.4 guest.

commit 223040208f3e658f3371adc7a2a57183f9dbdfd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 27 14:59:39 2013 +0000

    builder: Add a section on performance to the manual.

commit cef8cc793af27d23ca300644b3b2273961a25df5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 26 20:23:22 2013 +0100

    ./run: Adjust $PATH to include all libguestfs binaries.
    
    Instead of typing:
    
      ./run ./fish/guestfish ...
    
    you can now use:
    
      ./run guestfish ...
    
    This is shorter, but there are also two good reasons for this change:
    It never made any sense to run the system-installed guestfish (or
    other) binary.  It would be unlikely to work.  Also binaries in
    libguestfs should be able to call other binaries freely without adding
    special exceptions (which we had before this change).

commit 96f97553de589f77317a44636430482a4fada292
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 26 17:09:06 2013 +0100

    firstboot: Send the output to the console as well as to the log file.
    
    For systemd:
    Currently stdout+stderr go to the journal (these are effectively
    empty unless there are gross errors).  The output of the commands
    goes to the log file.
    
    With this change, the output goes to the journal, the console and
    the log file.
    
    For SysV-init:
    Currently stdout+stderr go to the console (but these are effectively
    empty).  The output of the commands goes to the log file.
    
    With this change, the output goes to the console and the log file.

commit d3ae72c1ce86d014b9ef25ee3941ad176e6c83a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 26 14:45:30 2013 +0100

    builder: Document how to boot VMs directly in qemu or KVM.

commit e73d8b6025460a70d5dc26e476b5e9ebd9f2962b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 26 11:40:48 2013 +0100

    builder: Add --write option to write a literal file.

commit fda9a4af61f40cb7887d924a6343918aff43814c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 26 11:27:06 2013 +0100

    builder: Allow --upload to a directory.
    
    Also set the owner and permissions on the destination file correctly.

commit 4341a4649f438f8905acf052844deb45687c50d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 26 11:01:51 2013 +0100

    Version 1.25.1.

commit edca4f7fca16da182b5559441ab80f1b9d435f7c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 25 14:11:43 2013 +0100

    builder: Don't fail if ~/.cache doesn't exist (RHBZ#1022431).

commit 52aa0ce48726a6db405d44f1e66575bb35f9cb95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 25 13:36:19 2013 +0100

    builder: Copy-editing on documentation.
    
    Plus some ideas added to TODO file.

commit 164d7aa4057cd151a688383523be58e7dd57c818
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 25 13:35:51 2013 +0100

    builder: Add --mkdir option to create directories.

commit 2c73dc30a1986834bca0f411beec2ace38b5ab1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 23 11:37:11 2013 +0100

    builder: Fix two problems in --help output.

commit 3fd0b4a16d1379a835654773a484de7392c157a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 22 22:28:27 2013 +0100

    builder: Add --no-sync option to avoid sync on exit.

commit 7e1ea6db4aac1219233d87172d47f38a1d24ceca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 22 17:56:11 2013 +0100

    Revert "java: Remove version number from the jar file (RHBZ#1022184)."
    
    This reverts commit 7330ccd288a001d33866308ff8d679a884230d83.
    
    See comment in https://bugzilla.redhat.com/1022184

commit d670071c717a6cdb69e5dd5e5506fe6692847c7f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 22 17:44:33 2013 +0100

    java: Remove version number from the jar file (RHBZ#1022184).

commit 863ea044e3884d6d58d9b14c78743cc87336d6f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 22 14:22:46 2013 +0100

    builder: Use pxzcat (optionally) to speed up xzcat step.

commit 9bd782bb9da71957d03af9ec6dbe5414dbe95afc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 22 14:09:20 2013 +0100

    builder: Make xzcat binary configurable and use AC_PATH_PROG.

commit e88936ab80ea6f1e107b982a064a4f5591e805e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 22 13:52:25 2013 +0100

    builder: Don't run virt-resize when not necessary.
    
    If:
     - the output is a regular file
     - the output format is raw
     - the user didn't specify the --size option
    then we don't need to run virt-resize.  Simply uncompress
    the template directly to the output file.

commit 043b0bd6b2b2ad11c3d03c300202ded6ba232577
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 22 13:58:33 2013 +0100

    build: xz is required.
    
    It is needed for libguestfs-make-fixed-appliance and many other places.

commit ef11467924bf1fc121d9d89b983bdfdbc5163ac2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 22 13:48:41 2013 +0100

    mllib: Create config.ml from configure and use it for --version options.
    
    Also don't internationalize the output of the --version option, as
    that isn't useful.

commit 328a7021f4d3c4a68b1a2f88b002212059bbe027
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 19 22:27:52 2013 +0100

    configure: Use AC_PATH_PROG{,S} for external programs used by the library.

commit 4bf3417e594f019782a25c30ab459b2f9c099d14
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 18 17:55:45 2013 +0100

    Version 1.25.0.

commit 6882aaef09f21a7ccbea6e855492e4185392779a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 18 17:38:46 2013 +0100

    Version 1.24.0.
    
    New stable branch.

commit 328d60b588218b85fd78f5af15a82fba8702c348
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 18 11:46:16 2013 +0100

    appliance: When valgrinding daemon + error path, sleep so valgrind messages are seen.

commit 9f89b5e55fb8a150beb83cc81daf10a419cb6248
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 18 11:45:53 2013 +0100

    appliance: Add comments to init script.

commit 19193358cbce001704391ebd880d37b66e20d233
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 18 13:17:30 2013 +0100

    resize, builder: Improve speed by using cache=unsafe on newly created files.
    
    However because qemu might open these files immediately afterwards
    using cache=none, we have to sync the file before exiting.

commit a82ea6fcb46e08c31a8e9dcc1a68d2e459910b30
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 18 13:16:40 2013 +0100

    resize: Rearrange objects.
    
    This is just build refactoring.

commit eff47af4a475c9888632a2d6c2ddb302a0b442af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 18 09:09:59 2013 +0100

    RHEL 5: Don't use 'truncate' command in tests.
    
    Use 'guestfish sparse' instead, which is roughly equivalent.
    
    See commit ef1514aa1e0a099d71cbb7d2c5f24f9f32e1939d
    and commit 39df80dcc0e485e69048bddbf33c259ce532e50d.

commit d62f40f37be201af7a355bb18cf3958b62ac5474
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 17 16:03:08 2013 +0100

    Finalize release notes for libguestfs 1.24 release.

commit 8b9a04c974949df14068f08dc58782517ef2efdc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 17 15:49:13 2013 +0100

    Update PO files from Transifex.

commit 18a9bc13c970ab10bc027a901f77a2d67d97e388
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 17 15:48:44 2013 +0100

    Update ROADMAP.

commit ab04a4319d46c42fd5b165a4f763165438e508e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 17 15:47:56 2013 +0100

    API support: Fix website directory for new location.

commit 0868895099efbd90424efb1c3e04df3fae91e095
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 17 15:47:52 2013 +0100

    Update API support.

commit f515ae7dd2edab6bb0d44348457433aef14e45ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 17 15:42:38 2013 +0100

    Update TODO.

commit 0a08da49467b93979edcdf1ef2db2fa5901ac24b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 17 15:12:19 2013 +0100

    Add man page for /etc/libguestfs-tools.conf (RHBZ#1019889).
    
    Add a man page to document this configuration file.  This is
    required by some distros, eg. Debian and RHEL.

commit e1f246586d3e27454cc2643f73c0168e832d1df4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 17 15:03:37 2013 +0100

    Use qemu-img -o preallocation=metadata where possible.
    
    When format is qcow2 and we're *not* using a backing disk, we can use
    preallocation=metadata for better performance.

commit 821aa3efb04f8a4c882132a823288eef4ca97c0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 9 12:08:10 2013 +0100

    fish: CVE-2013-4419: Fix insecure temporary directory handling for remote guestfish (RHBZ#1016960).
    
    When using the guestfish --remote or guestfish --listen options,
    guestfish would create a socket in a known location
    (/tmp/.guestfish-$UID/socket-$PID).
    
    The location has to be a known one in order for both ends to
    communicate.  However no checking was done that the containing
    directory (/tmp/.guestfish-$UID) is owned by the user.  Thus another
    user could create this directory and potentially modify sockets owned
    by another user's guestfish client or server.
    
    This commit fixes the issue by creating the directory unconditionally,
    and then checking that the directory has the correct owner and
    permissions, thus preventing another user from creating the directory
    first.
    
    If guestfish sees a suspicious socket directory it will print an error
    like this and exit with an error status:
    
      guestfish: '/tmp/.guestfish-1000' is not a directory or has insecure owner or permissions
    
    Thanks: Michael Scherer for discovering this issue.
    
    Version 2:
     - Add assigned CVE number.
     - Update documentation.
    
    Signed-off-by: Richard W.M. Jones <rjones@redhat.com>

commit b9b12186714a7206434a4a2d35f466a4641f0647
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 16 16:32:06 2013 +0100

    builder: When doing maintainer test for new guests, test adding a user account.

commit b40c543c2f07c2b027f353bc754bfb255db9a5ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 17 10:39:21 2013 +0100

    launch: libvirt: Add guestfs-<random> name to the handle.
    
    This is so we can display the random name in debug messages.

commit c70c3d3a09873c9e0fd6127c3a5aaaac97b2618e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 16 10:48:07 2013 +0100

    FAQ: useradd -> usermod.
    
    This fixes commit dd554d94ad2f381c37c4a5229502963058c2c9f4.

commit 9e4c3f40bd30fe96b256bbcbd5ca1c685ddd1ca2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 20:41:07 2013 +0100

    Version 1.23.33.

commit c8214c729a18f357c0fabdd2e4890495a173f214
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 15:18:18 2013 +0100

    builder: Add maintainer test for new guests.
    
    This is not part of the automated test suite.  It's a manual test run
    by the maintainer which must be run on each new guest to ensure that
    all the virt-builder features work on the new guest.

commit 926c110097f4d68923110056526507bacff0d0cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 17:31:52 2013 +0100

    firstboot: Ensure firstboot scripts run in command line order.
    
    Previously they ran in effectively random order.

commit ae773b041f2cdda350d763da26b5a2eeb1ab5ac0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 17:30:08 2013 +0100

    sysprep: firstboot: Don't set `Created_files flag unless files are created.

commit 0f132b5520453ba69f1218822fa8474109898fdf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 16:10:28 2013 +0100

    firstboot: Add some debugging to the control script.
    
    For reasons unknown, firstboot does not work on Debian 6 & 7.
    https://bugzilla.redhat.com/show_bug.cgi?id=1019388

commit 74128c951935c277e58b77a1111f4cca54961189
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 16:19:43 2013 +0100

    sysprep: random seed: Try much harder to create a random seed file.
    
    Since this is essential for security, be much more proactive about
    trying to create a random seed file, even for guests which have buggy
    installers that don't create this file during installation.

commit e8d5cf02e065447e23498947bde69de9ffe580b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 15:32:34 2013 +0100

    builder: Really force apt not to ask questions.
    
    This fixes commit b812a0d45992e729a85f10483ae26b82b8e2da90.

commit 98d21e0083ba8ec651d2392497d435e9a54067b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 14:46:40 2013 +0100

    builder: Remove capital O and lower case L from random root password.
    
    They look too much like 0 and 1.

commit 2b426ebf96f62180185efe76eddaf07423220db1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 14:37:48 2013 +0100

    builder: Wrap program in an exception handler which pretty-prints common exceptions.
    
    This looks like a large change, but is mainly just reindenting
    everything into a 'main ()' function.

commit 58b37edce385c117f431b42e55941e66f832ce4a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 14:19:53 2013 +0100

    builder: Remove nbdkit-xz-plugin support (it was disabled anyway).
    
    We can re-add this later if libvirt gets fixed, but for now simplify
    the code and concentrate on the one code path.

commit ca3f3d24fc044afc8302517551c87a1d7bd17c34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 14:08:39 2013 +0100

    builder: Move command line argument processing to separate source file.
    
    This is just code motion.

commit ca0da2d3e2670d38d063085604d027a9452a2ba7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 15 09:53:08 2013 +0100

    firstboot: Fix test for installing sysvinit scripts.
    
    This fixes commit 9aa13e057497a91ce9037f18a51ea6f35b4f2aa5.

commit dc3b0a03fb2b6805bec759ebe07e3a5438556379
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 23:25:31 2013 +0100

    builder: Try really hard to make apt non-interactive.

commit fdc3dcd29e2b31819ef686b30e2e3e12d7e96573
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 14:55:53 2013 -0400

    appliance: Remove cruft and run udevd directly.
    
    This commit removes a lot of cruft from old RHEL which was required to
    start udev.  Instead we run the daemon directly.
    
    Also it removes the fallback path which created some device nodes in
    /dev by hand.  This likely did not work.  This also removes the
    dependency on MAKEDEV which is long gone from most distros.
    
    This is required for Ubuntu, since the /etc/init.d/udev script didn't
    actually work.  The most common symptom was that /dev/virtio-ports/*
    was not created because udev didn't process the cold start events.

commit 83f9bb804bb79817eced489de24cbe51ab5a787e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 18:07:22 2013 +0100

    Version 1.23.32.

commit 5defb8bed5b4326abc45ddc008a0f9e2e7255553
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 18:21:32 2013 +0100

    build: Add missing EXTRA_DIST files.

commit 7ab6bff676e5f681b974c4c826cfdabcdb050bec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 18:20:21 2013 +0100

    build: Add maintainer-check-extra-dist rule.
    
    This is used by the maintainer to check for missing files
    in EXTRA_DIST.

commit dffc66a4d835a0f3e1df446ce306e470b7f88e47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 18:20:55 2013 +0100

    build: Don't hard-code list of virt-builder templates in top level directory.
    
    It's troublesome for maintenance.  Use a wildcard here.

commit b60e194058d9d886ac87fd39e6f429aa95d816f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 15:51:47 2013 +0100

    Update to latest gnulib.

commit 2f3893c327b542ff194c5736839175be8616d25d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 14:56:56 2013 +0100

    firstboot: Install both systemd and SysV init scripts.
    
    This should be safe, and avoids the whole issue of whether a guest
    uses systemd or not.  Also it is possible to switch init systems
    (eg. by specifying init= on the command line) so it's not even clear
    if a guest "is" systemd.
    
    Thanks: Tom Gundersen on #systemd.
    
    This updates/fixes commit 596de56a436d56886616f5cc213bb72a4f6f5561.

commit da025dedddca19c2363668442fc1cb524e6d0d72
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 14:56:13 2013 +0100

    firstboot: Start service after network only.
    
    Not necessary to wait for syslog since (a) we do our own logging
    to a file and (b) syslog might not be installed.

commit 546533292e297ca7a47d4495a6b8f7e40f47df72
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 14:05:27 2013 +0100

    firstboot: Fix firstboot scripts so they work on Ubuntu.
    
    Ubuntu 13.10 has /etc/systemd but uses Upstart.  This confuses the
    script because it assumed that if you have /etc/systemd then you are
    using systemd.  Ubuntu includes systemd services (inherited from
    Debian) but they just don't run.

commit 4dfe71c309dadca9aa6da566f04bcadd601bda4b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 13:45:10 2013 +0100

    builder: Add --notes option.
    
    This displays the release notes.

commit 1e198aa744f77118bbdee6b05681a5cb4160bf27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 13:44:41 2013 +0100

    builder: Add short synopsis in --help output.

commit 47ce334ecf2b030e0d73ccdadc0c553383f81f41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 13:44:06 2013 +0100

    builder: Tidy up release notes for operating systems.

commit ff463459bf8fde9d73835809ddc4cd7683c290fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 13:40:57 2013 +0100

    builder: debian/ubuntu: Add notes about running dpkg-reconfigure.
    
    Required to regenerate SSH host keys.

commit 402bb5b3fb35e37a31ce2994d2bd744d3a4b84c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 13:27:07 2013 +0100

    builder: Fix typo in man page.

commit 6a19dd2d2d825eac1b42b8faacee29b3d840a222
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 12:33:06 2013 +0100

    builder: Fix output to block devices.
    
    If the output is a block device:
    
    - Detect the size of the output device.
    
    - Don't attempt to delete the output device on failure.
    
    - Turn off sparse copying in virt-resize.

commit ebbac7558f8df3d9f2affce1701433ef3362f712
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 12:32:29 2013 +0100

    resize: Add --no-sparse flag to let you turn off sparse copying.
    
    Useful when the target is a block device containing old data.

commit f84b86ac2d1423a491819c5be894a19c9d71b558
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 13:15:04 2013 +0100

    builder: Run 'apt-get update' before trying to install packages.

commit f793e0cc8b6984f8b288b8cc4246561597a83e23
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 14 12:32:04 2013 +0100

    FAQ: Clearer instructions for Debian and Ubuntu users.

commit 4bb7d6540203d2e149bf4baeb8abd4af6973fea3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 13 18:12:02 2013 +0100

    builder: Kill any daemons started by installed packages.
    
    Some --install requests may pull in packages that start daemons (dbus
    being a favourite daemon apparently).  These daemons will prevent the
    disks from being unmounted and everything being cleaned up at the end.
    Add some experimental code to kill these daemons.

commit b411bd05fb415591775a8c23f2013855a466c82b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 13 17:51:12 2013 +0100

    builder: Add more templates to the list which is copied to the website.

commit 4b4dd2e7728fd9a0347b056f0426e81b15f31579
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 13 17:50:16 2013 +0100

    builder: Add the logo to the HTML manual page.
    
    Unfortunately:
    
     - It appears below the TOC.  This is unavoidable because of the
       flow of the current HTML.
    
     - The logo is now duplicated in git.

commit 1370f493935d8e29d54271d4bcbdf1ee7f6a6ada
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 21:55:18 2013 +0100

    Version 1.23.31.

commit aa9d98f0ef6a64a6544ee767a48e3820f95f0dfc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 21:51:47 2013 +0100

    po: builder: Hack to remove duplicate message definition.
    
    Because we're not running msgmerge but concatenating the PO files, you
    can get duplicate messages (in this case "no"), resulting in this
    error:
    
    libguestfs.pot:6142: duplicate message definition...
    libguestfs.pot:3285: ...this is the location of the first definition
    
    Just work around this for now.

commit e65c3d262dd2083003c8a2dd30dbb834b29e9f66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 21:28:44 2013 +0100

    builder: Document how to enable virtual consoles on Debian guests.

commit 72c6facc07a92139f3c3b1aa68f84a53b4b0e468
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 20:25:52 2013 +0100

    builder: Add --edit option.
    
    This allows you to use Perl to edit files in the guest.
    
    This works very similarly to the 'virt-edit -e' (non-interactive
    editing) function.

commit bd3de8c0d90915c0b0bb16c36cb21413dd0806b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 20:31:39 2013 +0100

    builder: Small copy-edit to the manual.

commit d5a100e37e892a56a49ff2c30ff05f86989dddcb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 20:22:10 2013 +0100

    edit: Add virt-edit --edit as an alias for virt-edit -e.
    
    This just adds the alias and does nothing else.

commit 34c0f4d6d73ba9f77f5a9bd5031d0a53042d7054
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 20:24:26 2013 +0100

    builder: Upcase --delete and --scrub option arguments in man page.
    
    For consistency with other options.
    
    This updates commit 7820aaf1f3f1402811c1c3c8b2239aec0e12cf5e.

commit 373c487e099482cd099d0144bf6e2db4d27c6302
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 20:10:34 2013 +0100

    appliance: Disable LD_PRELOAD libSegFault in virt-rescue shell.
    
    Commit c598e14052399f19d36d7874d7133cba779bd3c2 exports
    LD_PRELOAD=/lib64/libSegFault.so so that guestfsd and processes that
    it runs will produce descriptive stack traces.
    
    However it exports it to everything including the virt-rescue shell.
    But if we are chrooting into a guest which doesn't have this file (or
    indeed any guest) we should not use LD_PRELOAD.
    
    Therefore unset LD_PRELOAD in the rescue shell.
    
    See also related commit 21e5fc811ea3708ef0c768467ffe53368bc435e9.

commit f376bd903ea2873d0eea8d2bb9cb687794cc50ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 19:03:09 2013 +0100

    builder: Add Debian 6 (Squeeze) guest template.

commit abf42b4db304b9f0aad35338f1fa67a5f0efa123
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 17:19:52 2013 +0100

    builder: With -v option, dump out the log file.
    
    Useful for debugging install errors.

commit c627722de99ff1cef0c52bc98c0d3138812dc8c1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 17:14:58 2013 +0100

    builder: Add comment about download /dev/stderr truncating redirection files.

commit d228f5d46940d8a507ca400a909e4a2ff942cad7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 16:37:57 2013 +0100

    builder: '@' (not '+') is used to install groups of packages in Fedora.

commit d51247854b5b9b6373ec368be177c64959f7aa8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 16:36:01 2013 +0100

    builder: Print some stats about the generated image at the end.
    
    It will print stats at the end like this:
    
      Output: fedora-18.img (8.0G)
      Free space: 3.2G (39%)

commit 289b4b313811c6555287ed66a96194d9b269fcef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 15:45:48 2013 +0100

    builder: Add --delete and --scrub options for deleting guest files.

commit d96f461c68fbf34e5ad5745c636506dba369b7b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 15:33:48 2013 +0100

    builder: In documentation, use 'scrub log file' instead of 'wipe'.
    
    Since we really do try to scrub the data.

commit aee33cf5faa7f166378ab3c98c512f0ab9c0e7bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 15:13:42 2013 +0100

    builder: Advice on setting environment variables to maximize caching.

commit 5c536b841b1e9d62b197a221331ffb5f96077b6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 15:13:26 2013 +0100

    builder: Add --cache-all-templates option.

commit 4bc04d565c7a94e25d79624547e3ec1213813a7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 14:57:34 2013 +0100

    builder: Make --delete-cache obey the --cache option.
    
    Previously a command such as:
    
      virt-builder --cache /tmp/cache --delete-cache
    
    would delete ~/.cache/virt-builder (the default cachedir).
    
    It's obviously meant to delete /tmp/cache, which this commit fixes.

commit b4069d2c461d8c24d72397a7a996aa378368cde4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 14:52:27 2013 +0100

    builder: Add --print-cache option.

commit 6aa1a4aea7a3dc3dd54f3f657c523bc2f4769d15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 12 12:58:49 2013 +0100

    recipes: More recipes for virt-builder, syslinux, Xen partitionless guest conversion.

commit 733bca03c84b6a6ff002d30178f77ac31f694004
Author: John Eckersberg <jeckersb@redhat.com>
Date:   Fri Oct 11 22:26:07 2013 -0400

    btrfs: Fix improper memmove usage in do_btrfs_subvolume_list (RHBZ#1018149).
    
    The third parameter (number of bytes to copy) was given as an offset
    relative to dest, when it should be relative to src.  This fixes some
    valgrind warnings I happened across.

commit 47b0c581148b8bd9cee2c7bb696f4ebd9f2fcfd2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 15:47:16 2013 +0100

    Version 1.23.30.

commit 378476907c1dc66fa9857eb06e7da7d442b0b645
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 13:24:59 2013 +0100

    debian: Warn if /dev/kvm is 0660 and user is not in the KVM group.
    
    On Debian, /dev/kvm is mode 0660 and group kvm, so users need to add
    themselves to the kvm group otherwise things are going to be very slow
    (this is Debian bug 640328).

commit 121653d1417546ffe500610270db5821ee4f1c89
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 14:35:12 2013 +0100

    events: Add a warning event and direct all warning messages through it.
    
    This also causes warnings to be printed even in non-verbose mode,
    which is useful.

commit aa11ddbc66e43840a6c8fa053eed29b09e511b6b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 13:28:58 2013 +0100

    launch: libvirt: Suggest using the direct backend if libvirt fails.

commit 935e321e01731dd3fa849eabf8afd70c44580042
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 12:43:39 2013 +0100

    builder: Avoid parallel cache downloads from stomping on each other.
    
    This should let you run virt-builder instances in parallel.

commit 94f4871ec5b6400953c61acc83b3a841c5d504f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 11:48:27 2013 +0100

    daemon: Don't leak 'device' string in parse_btrfsvol.
    
    Since 'device' is assigned repeatedly, and because
    device_name_translation allocates a new string each time, we have to
    free it in the loop and along error paths.
    
    Found by ./configure --enable-valgrind-daemon.

commit a1d876125f396881933fa47d3001ababacf9f3b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 11:51:13 2013 +0100

    daemon: xattr: Fix scope of cleanup buf to avoid memory leaks.
    
    Found by ./configure --enable-valgrind-daemon.

commit 04cdd2aa89539fa6ba83339fc579b14e7145378a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 11:13:18 2013 +0100

    daemon: Fix macro definition.
    
    Defined a bogus macro along an unused code path.

commit 9c4fa22ce52aadb982aaaece143fbb39e331b736
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 11:12:57 2013 +0100

    daemon: parted: Fix memory leak of list of strings.
    
    Found by ./configure --enable-valgrind-daemon.

commit 7d6827343a03f58fdb7f9b8b75db2971c3834ad3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 11:12:27 2013 +0100

    daemon: Fix scope of cleanup functions to avoid memory leaks.
    
    Found by ./configure --enable-valgrind-daemon.

commit 03d4db233a02a9b21e260fbeae4cb1f2c0d2ca36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 11 11:11:43 2013 +0100

    daemon: Ignore memory leak in aug_setm.
    
    (Found by ./configure --enable-valgrind-daemon)

commit 570892572aed0ab366415c5dd61b072556e96f91
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 10 22:24:01 2013 +0100

    daemon: When valgrinding the daemon, take steps to cleanly exit daemon.
    
    This adds a new internal API: internal_exit
    
    Only when valgrinding the daemon, have the library call internal_exit
    along the close path, and close the sockets first.  This ensures we
    will see normal valgrind messages (we were only seeing valgrind aborts
    before).
    
    Note this is not used in production builds.

commit 908537027850afaad75ef5eedad380c9decbd731
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 10 14:19:25 2013 +0100

    Version 1.23.29.

commit a4825d29ca1acffc461f69a0ace8574b08daa2bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 10 15:50:01 2013 +0100

    inspector: Allow the test to be skipped by setting an environment variable.

commit 165c481a5d267b08ea0f4b4181916635163c15eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 9 12:07:39 2013 +0100

    fish: Use UNIX_PATH_MAX instead of hard-coded value for max length of socket buf.

commit e552182aa9d65409c03481723a33548142bbea8c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 9 20:55:28 2013 +0100

    sparsify: Use Filename.temp_dir_name instead of Filename.get_temp_dir_name ().
    
    The latter function is only available in OCaml >= 4.00 whereas
    Filename.temp_dir_name has been around since OCaml 3.09.1.  In this
    case it doesn't make any difference which one we use.

commit 60de22560898ef06e1bcf9fa7e18f755a25b8b48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 9 20:42:47 2013 +0100

    generator: Change handling of C 'function(void)' to be simpler.
    
    This also fixes an obscure case in daemon/optgroups.h.
    
    The only difference in the generated output is:
    
    --- daemon/optgroups.h.orig          2013-10-09 20:42:02.479681861 +0100
    +++ daemon/optgroups.h               2013-10-09 20:42:10.563681858 +0100
    @@ -149,7 +149,7 @@
       int optgroup_inotify_available (void) { return 0; }
    
     #define OPTGROUP_JOURNAL_NOT_AVAILABLE \
    -  int __attribute__((noreturn)) do_internal_journal_get () { abort (); } \
    +  int __attribute__((noreturn)) do_internal_journal_get (void) { abort (); } \
       int __attribute__((noreturn)) do_journal_close (void) { abort (); } \
       int64_t __attribute__((noreturn)) do_journal_get_data_threshold (void) { abort (); } \
       int __attribute__((noreturn)) do_journal_next (void) { abort (); } \

commit 72323c5f982ae50ab485cabefc944f8afc2cdfd2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 8 18:39:18 2013 +0100

    build: WEBSITEDIR has moved.

commit ba73973a46ed39d52065e7125ced5d843ae1420a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 8 12:34:33 2013 +0100

    Update TODO with more ideas.

commit f5a0e831ead9bc20b6d197bd6b2d9b04a0927c8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 8 12:32:41 2013 +0100

    builder: Upload /etc/resolv.conf from the host when the network is enabled.
    
    When the user has enabled the network (not the default) we upload
    /etc/resolv.conf from the host to the appliance /etc/resolv.conf
    so that programs in the appliance can contact nameservers.
    
    Commit 9521422ce60578f7196cc8b7977d998159238c19 previously changed the
    behaviour to copy /etc/resolv.conf into the sysroot when running
    commands.

commit 72404b650f4664c234387a2441b6f6b306ef05a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 8 12:15:52 2013 +0100

    df: parallel: Add a debug message when work function returns an error.
    
    Further attempts to find out why this hangs under Koji.

commit 2ff72800d9cfa74f8bf8a6adba6935bd174d6fbb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 8 12:12:22 2013 +0100

    launch: If launch takes longer than 20 minutes, time out.
    
    Add a constant fixed timeout for launch (currently 20 minutes, we'll
    make it configurable if needed in the future).  If the appliance takes
    longer than this to connect back, we time out assuming that the kernel
    has hung during boot.

commit 79223bcfc365213c498e7e1472a476c06ce73081
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 8 11:58:26 2013 +0100

    launch: libvirt: Clarify comment.

commit 6e4b58b9690045c3f44259db57ea126d665f4010
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 8 10:00:33 2013 +0100

    blockdev: Deprecate blockdev_setbsz and make it do nothing (RHBZ#624334).
    
    This call never did anything.  Don't use it.  Also I have submitted a
    patch upstream to remove the corresponding option from blockdev.
    
    See RHBZ#1002825 for an explanation of why this call was always
    useless.
    
    Thanks: Masayoshi Mizuma

commit 092f7fa4d25409b99b5676f9007588310db52e0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 8 09:09:49 2013 +0100

    Version 1.23.28.

commit b0d319ec9a473ec9acea4c7d2f659ae09789d68b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 7 19:55:00 2013 +0100

    daemon: command: Copy appliance /etc/resolv.conf in before running commands.
    
    When you try to run commands for an Ubuntu guest, they fail because in
    Ubuntu /etc/resolv.conf is a symlink to /run/...  and this turns out
    to be a dangling symlink when the Ubuntu guest is mounted up under the
    appliance.
    
    Therefore even if the network is enabled, any command which tries to
    do name resolution will fail.
    
    Ideally we would like to bind-mount the appliance /etc/resolv.conf
    into the sysroot.  However this is not possible because mount is buggy
    (see comment).  So instead we use a complex hack to achieve the same
    ends.
    
    Note this is only done if the network is enabled and if /etc in the
    guest actually exists.  The original /etc/resolv.conf is restored
    as soon as the command has run.

commit bfa2d389657bfbea9456eb0e35128fa66b8bf44e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 7 19:53:54 2013 +0100

    daemon: Refactor bind-mount code.
    
    This is just code motion.

commit 8537bb7758f9615a1ad434719360b4e8cffb6359
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 7 17:04:26 2013 +0100

    daemon: 'exists' API should not follow broken symlinks.
    
    Using guestfs_exists on a symlink which existed but pointed to a
    non-existent file was returning false.  However exists obviously
    should not be following the symlink in the first place.

commit c93a3ce771f3ef738bb3223d9ddbdea3e63020b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 7 15:59:37 2013 +0100

    sysprep: ubuntu: Use secure SHA-512 crypt back to Ubuntu 10.04.

commit 1cf7986c1105417dbde5f8c8ab3ecc3d3c765447
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 7 13:54:25 2013 +0100

    builder: Add Ubuntu 10.04LTS, 12.04LTS and 13.10 templates.

commit f838324048a861c2babe32b59485b7e76770025e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 7 14:27:25 2013 +0100

    sysprep: Fix documentation for --mount-options.

commit 0c412563512683b2b593d412410b7eff97640703
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 7 14:18:02 2013 +0100

    sysprep: Don't remove /var/cache/apt/archives/partial directory.
    
    Removing this directory breaks Ubuntu guests.
    
    This change adds a utility function which removes only files from a
    directory.  This is a safer way to clean cache directories etc.

commit 232fa9d16d82c82fb66d529434043875921e96a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 7 10:51:23 2013 +0100

    builder: network: Note that only outgoing connections are allowed.

commit 32410a5e9f92c6a36725c87fe8579fa202502fcd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 7 10:02:57 2013 +0100

    builder: Add section on debugging and other documentation fixes.

commit 166b2bbdba34412797a0d43a09f7b6cb1bbd643d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 22:34:46 2013 +0100

    Version 1.23.27.

commit 3fa4d4b0205e5419763e46bb5b4b79a3def5fa7c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 22:26:28 2013 +0100

    perl: valgrind: Renamed function requires different valgrind suppression.
    
    Seems to be a difference in Perl 5.18.

commit 978fb8539703a0a23c27fce31b6bc44d8e713705
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 20:11:33 2013 +0100

    builder: logo: Small adjustments.

commit e1771391835d9ba6ab54bf76ffd0c607112190a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 18:13:27 2013 +0100

    builder: Document how to import disk images to other tools.
    
    Thanks: Kashyap Chamarthy

commit 79e20bd57d7e4a7dc0d6056578441b7edd81f0c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 18:12:49 2013 +0100

    builder: Display the output filename.
    
    Thanks: Kashyap Chamarthy

commit d145f59fb99ca14604d707006fba42bf0d05bc95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 17:48:58 2013 +0100

    Version 1.23.26.

commit 64afaf837b1de1a6af4a446083ae8b54b283ba37
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 16:00:21 2013 +0100

    builder: Use progress bar for large template downloads that are not in the cache.

commit 008cc430a3e5a555fa1991d9a2b2a897332af497
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 15:00:54 2013 +0100

    builder: Create an install log file, and dump the full log on error.
    
    This should make debugging much simpler, and also provides a
    build log in the guest once it's built.

commit b2192096c6f6c21bd4fdbf069b0c061f5a45aee4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 15:00:36 2013 +0100

    builder: Tidy up error messages.

commit 1a9be0206752165a160974a2956a89c7b92ba96c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 14:25:07 2013 +0100

    builder: Clean up messaging.
    
    Ensure every significant action gets a message.

commit 42147961a670b88f4eae759eca03793c3e1a3d19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 12:58:31 2013 +0100

    Add virt-builder logo.

commit aa70e7e7edc675ebcf5cb6430e17c08679338d3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 11:53:06 2013 +0100

    Update release notes with dependency changes since 1.22.

commit 0c12ca2ce7573aaf5ef374e8e373079ef3935dae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 5 11:43:17 2013 +0100

    todo: Some items to do in virt-builder.

commit 53abb3ebfd8a16965dadd6aa96f56396f3757a62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 13:59:59 2013 +0100

    builder: docs: Minor copy-edits of the man page.

commit 61194caefced052fefdcb1f39bad6ab76290d4b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 13:44:39 2013 +0100

    Update release notes.

commit af4b9977ae952246eec193bed0cf8711ce268847
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 13:44:23 2013 +0100

    Update API support.

commit 4a2726260444405f2584945cb7ddc05d8beb4339
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 12:01:18 2013 +0100

    Version 1.23.25.

commit e6f5d4cf64c597823a13e33e77e3bfb3e2c9dda4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 11:43:31 2013 +0100

    builder: docs: Add sections on architecture, security, UML.

commit e2ea6fc590bf0752b839e60075402cd6bc5bfc78
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 08:48:26 2013 +0100

    uml: Fix virt-builder test.
    
    Note comment in the test about networks.

commit af63d5a14e2990a5a77e7aa652908bbb9ca0c59c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 08:33:52 2013 +0100

    builder: Fix --format/--output-format arguments to virt-resize subcommand.
    
    The 'virt-builder --format' option translates to the
    'virt-resize --output-format' option, because it specifies the output
    format.
    
    On the contrary, the 'virt-resize --format' option (the input format)
    is always 'raw'.

commit 00633fe95b3af905a6c815fc5e83c53faf1531a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 08:31:53 2013 +0100

    builder: Add -v option to test so we get all debugging output.

commit 86c9cbc2997e333f8f879c680e2e4317331e332c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 08:26:00 2013 +0100

    tests/nbd: Avoid warning when tests are skipped.
    
    Since END{} clause is always called,  might not be defined if
    we exit early.  Move the whole clause to the top.

commit 1d0df77af1b7d128af775decca46684358a20a15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 4 08:25:14 2013 +0100

    builder: Add test *.xz files to CLEANFILES.

commit 99ec84c50913163c6bca0aff5e108dea62f5c90e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 3 21:58:35 2013 +0100

    Version 1.23.24.

commit 7a6ca0e04d22dd7e97d330cc4f10da43b71bb087
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 3 21:46:35 2013 +0100

    website: Make the rule install builder files to website.

commit 36b1708f51dfd5e8baa1ed41ef6694286806f1d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 3 21:46:27 2013 +0100

    website: Add HTMLSUPPORTFILES to rule.

commit 1041aea0ebabbdf6e51a05f8c0a00f99e96a5eb1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 3 19:20:28 2013 +0100

    builder: Add Debian 7 template + scripts used to create it.

commit 2128cf40c0c2b4436e57ff754d434f4fb966eb49
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 3 15:03:10 2013 +0100

    builder: Implement --hostname (set hostname of guest).
    
    This also makes a minor rearrangement so that the random seed, root
    password, hostname setting all happen before package installation.
    This keeps these configuration changes together and means that the
    packages that are installed can act differently based on hostname
    (which is conceivable).

commit 4b3d70622f07a479af612d42e46da0747b062f14
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 3 14:53:22 2013 +0100

    sysprep: Refactor hostname code into a common library.

commit c77f3a4cf57a42b84d38b0886c0307d160387ed4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 3 12:55:57 2013 +0100

    builder: Add tests.

commit 7fc90d5ebd8c425a8d5342e59549b09334667485
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 24 14:00:37 2013 +0100

    New tool: virt-builder: For quickly building virtual machine images.
    
    On baremetal you can build and customize a new guest in under 2
    minutes.  For example:
    
    $ virt-builder fedora-19 \
        --root-password password:test \
        --install minicom \
        --firstboot-command 'yum -y update' \
        --firstboot-command 'useradd -m -p "" rjones ; chage -d 0 rjones'
    [     0.0] Downloading: file:///home/rjones/d/libguestfs/builder/website/fedora-19.xz
    [     1.0] Uncompressing: file:///home/rjones/d/libguestfs/builder/website/fedora-19.xz
    [    24.0] Running virt-resize to expand the disk to 4.2G
    [    77.0] Opening the new disk
    [    81.0] Installing packages: minicom
    [    94.0] Installing firstboot command: [001] yum -y update
    [    94.0] Installing firstboot command: [002] useradd -m -p "" rjones ; chage -d 0 rjones
    [    94.0] Finishing off

commit ccb10bc029dd9fdf67da592c05ecb4b709baa628
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 2 17:57:08 2013 +0100

    sysprep: Refactor setting random seed code into a common library.
    
    This is just code motion.

commit 6dff991e7f8b6d9bddde099866d73e0fedbdc6fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 1 23:49:54 2013 +0100

    firstboot: Invoke firstboot.sh script with 'start' parameter.
    
    .. else the systemd script does not run.

commit 2203f4c9814760093a76c29bbb98f8931267d363
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 1 23:20:55 2013 +0100

    sysprep: Refactor firstboot code into a common library.

commit e236d2593101d49678b4a7cbb3bec250fd1a563f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 27 20:30:10 2013 +0100

    resize: Don't add mllib/* sources to 'SOURCES'.
    
    This was a mistake in commit 2a6ce793200e2cc6793a0242ec9ea3f90ad452b8.

commit f746042d7ddcc81e2cdb95f2c96aedc8abba8fd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 27 14:25:23 2013 +0100

    sysprep: Refactor password handling code into a common library.
    
    Also the crypt binding is moved to mllib because this is a dependency
    of the password library.
    
    This is just code motion.

commit 732057ba6b0d7b437a905f10707da193a4982d36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 27 15:22:08 2013 +0100

    mllib: Rename parse_size to parse_resize.
    
    This is just code motion, but it reduces a source of confusion.

commit 32d753912a41d86f63da45dcd2679a31b5f0857a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 27 15:20:31 2013 +0100

    mllib: error function has ~prog parameter, instead of assuming virt-resize.
    
      $ virt-sparsify a a
      virt-resize: error: you cannot use the same disk image for input and
      output
      If reporting bugs, run virt-resize with the '-d' option and include the
      complete output.
    
    Note (a) it assumes the program is called "virt-resize" which it
    isn't, and (b) it assumes the program has a debug option -d which it
    doesn't.
    
    This commit changes the error message and adds a -v option to
    virt-resize.

commit 258a7bf2a5b753ab92dbb57812295ee8c0e7a333
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 27 13:57:02 2013 +0100

    resize, sparsify: Small argument parser refactoring.
    
    Factor out a common string.

commit 694585501074d139d8ff252333f096cc4e83dd7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 3 21:38:18 2013 +0100

    daemon: Don't set LD_PRELOAD for guestfsd children.
    
    Commit c598e14052399f19d36d7874d7133cba779bd3c2 exports
    LD_PRELOAD=/lib64/libSegFault.so so that guestfsd and processes that
    it runs will produce descriptive stack traces.
    
    However if we chroot into /sysroot (ie. CHROOT_IN/CHROOT_OUT) and if
    the libSegFault.so library does not exist inside the chroot (as is the
    case on Debian guests) then we cannot run any processes.  In any case
    we *don't* want to necessarily run this library from the guest.
    
    The proper way to fix this is to confine all chrooting to a
    subprocess, but that's a big change to guestfsd which we'll have to do
    one day.  For now, unset LD_PRELOAD once guestfsd starts up.

commit 8db64ca3e97327d6ce7d066ba8c4c272380f907a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 3 18:17:39 2013 +0100

    daemon: Fix xfs_info parser because of new format.
    
    The old parser had several problems: firstly it called the error path
    sometimes without calling reply_with_error causing a protocol hang.
    More seriously it had hard-coded line numbers, and since Fedora 21 the
    output of xfs_info has changed, moving lines around.
    
    Change the parser to be more robust against added fields by using the
    first name on the line as the section name, thus 'bsize=' is
    interpreted differently depending on whether it appears in the "data"
    section or the "naming" section.
    
    Ensure also that we don't call the error path without calling
    reply_with_error, which is a side-effect of the above change.

commit 36c7aea79494c454bbe12ca5693e35424291678b
Author: Cole Robinson <crobinso@redhat.com>
Date:   Thu Oct 3 15:06:03 2013 +0100

    launch: libvirt: Set attribute present=yes to enable kvmclock.

commit 3526385c0369f8cfb518f8fe1a42b7820d09614c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 27 17:14:31 2013 +0100

    Version 1.23.23.

commit 43919a217633cd40ab57c8a2fe66e478af0e585b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 26 22:11:01 2013 +0100

    Update BUGS file.

commit ccae7aca76faf1441c425980a1d581ba41e1cd67
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 26 21:33:04 2013 +0100

    Update PO files.

commit 3ca6db49a46d53a049af12d7f6332ead1a87053e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 26 21:30:56 2013 +0100

    tools: Generate a special POTFILES-pl and dump symlink hack in tools directory.

commit d54141b1c8bbc97e7e7360d2623a65bb67245aac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 26 10:47:17 2013 +0100

    appliance: Create /dev/loop-control and similar devices.
    
    When 'mount -o loop' and similar commands are used, the loop module is
    loaded automatically by the kernel when /dev/loop-control is accessed.
    
    /dev/loop-control is created semi-statically by an unholy and
    overcomplex combination of kmod static-nodes and systemd-tmpfiles
    (instead of using, say, just udev or even just a simple series of
    mknod commands).

commit c321b4bc06b42ee5b79f9f4a5da5f6f9f84e97f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 25 16:00:38 2013 +0100

    appliance: If --enable-valgrind-daemon then increase minimum memory to 768 MB.
    
    tests/c-api would fail from time to time if --enable-valgrind-daemon
    was configured.  There was no obvious memory leak.  It looks as if the
    overhead of valgrind was sufficient to break long-running tests such
    as this one.

commit 5b41d68082ded57e56d584585f9041e74d939f4f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 25 12:20:37 2013 +0100

    launch: libvirt: Use host-passthrough instead of host-model.
    
    <cpu model="host-passthrough"> really passes -cpu host to qemu, which
    is what we want since we don't care about live migration or ABI
    stability.
    
    This should avoid http://bugzilla.redhat.com/870071 .
    
    Note this "taints" the libvirt domain.  We don't particularly care
    about that, and the reason for the tainting doesn't seem to make much
    sense anyway.
    
    This updates commit 6f76fdb41eb6bd124fbc3d084f5c2a3371b37d9b.

commit 7ba6a648916a6cae18a8950524652a93664ad31d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 24 13:54:08 2013 +0100

    sparsify: Fix incorrect reference to documentation from tool.

commit 8dbd4e7a29331951139ec43aa9a6f08da176e28f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 24 13:48:47 2013 +0100

    mllib: Ensure that mllib is included in POTFILES-ml.
    
    This updates commit 2a6ce793200e2cc6793a0242ec9ea3f90ad452b8.

commit 7af32ff7d736e2e0303006a5ceab74e008bbd8bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 24 12:45:19 2013 +0100

    uri: Fix two compiler warnings.
    
    We have to include the right header so that guestfs___free_string_list
    is declared.  Unfortunately that means ensuring -I src is passed to
    the compiler in every tool subdirectory.
    
    Also fix (bogus) compiler warning about incorrect type of the
    parameter to caml_copy_string_array.

commit 9022967c736b7bfed07439cc7477c1e80ec644d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 24 12:32:11 2013 +0100

    tools: Move shared OCaml code to mllib/ directory.
    
    Previously a lot of shared code lived in the resize/ directory for no
    particular reason.
    
    This is just code motion.

commit 57708867d3d85f65957424df27a6dbf4855d220d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 23 13:50:05 2013 +0100

    resize: Allow the input file to be a URI.
    
    This lets you use nbd as a source for resizing, eg:
    
      virt-resize nbd://example.com outfile

commit 9ad04ec178f5cd2b969cead90230adf96763cd5a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 23 13:49:21 2013 +0100

    sysprep: Fix option quoting in manual page.
    
    This fixes commit b65c1c667b26313abf312a7ab51f8bf947243d07.

commit 203cc0c8b6a8be166676f1141baf7131faf9775d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 12 09:16:31 2013 +0100

    virt-df: parallel: Send debugging messages to stderr.
    
    Not stdout (ordinary program output) since that gets eaten by
    the tests.
    
    This fixes commit 67b9469754684bc0c79fffab7bbca9f6ffee84f0.

commit 5bcd31a4851b6462ea565b5e83953a8b55af1bfa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 11 14:26:07 2013 +0100

    arm: Drop kernel_irqchip=off hack.
    
    Was only required because of the previous use of vexpress-a9.  With
    vexpress-a15 should no longer be needed.

commit faa81d15262a428b107ee6fcdd0573b6bec37743
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 11 14:24:54 2013 +0100

    arm: Switch to using Versatile Express A15 machine.
    
    This is the machine which qemu actually emulates these days.

commit 5d76f3be6a8ab8f715259b8eca6186faaf85400d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 11 14:42:45 2013 +0100

    Remove incorrect comment.
    
    qemu does in fact fix up the device tree with the correct memory size
    supplied by -m <ramsize> so the comment was incorrect.
    
    This updates commit 8d273a27156813593fe7f6bb657fcf04eb325b59.

commit 465e4c4e0767d517594b0189474d84bd2d975b5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 11 14:22:05 2013 +0100

    arm: Pass mem= parameter on Linux command line.
    
    It is thought that qemu-system-arm -m <ramsize> could conflict with
    the actual memory that Linux thinks is available (from the device tree).
    
    Thanks: Marc Zyngier

commit 7c0422172d7ce7488b06ff841f705e8812beb1e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 11 11:57:40 2013 +0100

    arm: Don't bother supplying guest architecture.
    
    libvirt seems to do the right thing without this.

commit de3b23fc52a4c6628ac169ecb1522fa0eabad304
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 11 11:53:18 2013 +0100

    arm: Add notes about machine types.
    
    Thanks: Marc Zyngier from ARM, Andre Przywara from Linaro for
    patiently explaining this to me.

commit c8ce41da3bade5a2081a7499159fbd26a8a1ca8c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 11 10:52:24 2013 +0100

    launch: Centrally define machine type and DTB wildcard.
    
    This avoids a bit of arch-specific #ifdef.

commit 4646f88767a8feeb59ce7d275acc287f9bdc14e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 11 10:44:08 2013 +0100

    Version 1.23.22.

commit adaa83d377a12c9c4748738d28e36a804a9d52ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 10 23:31:58 2013 +0100

    docs: Remove misleading / outdated section about other arches from README.

commit 006117b20479099c4163659a6cb33971de23b66b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 10 22:37:18 2013 +0100

    ppc: inspection: Use iconv "UTF-16LE" instead of "UTF-16".
    
    See commit message:
    https://github.com/libguestfs/hivex/commit/8e31fd84cb1c7edcd897ddaaea407774de459b2e

commit 5b2011abebc86613bf12495afa7374a72964f9c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 10 11:44:14 2013 +0100

    inspection: Don't print a warning if \Windows\explorer.exe does not exist.
    
    guestfs_case_sensitive_path does not test for file existence.  We have
    to test for it explicitly.
    
    This updates commit 9ea6e9701461e594033999150f930cc4fafec4d2.  See the
    description of that commit for more details.

commit e83834aca4a6bf645e98b48d15de504d6e4eae24
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 10 10:41:37 2013 +0100

    ppc: Disallow ide interface.
    
    qemu-system-ppc64 lets you add the IDE interface to the appliance, but
    the appliance kernel ignores it (and consequently can't find the
    appliance disk so it all goes wrong).  Best to just disallow this.
    
    Also skip tests that try using iface = 'ide'.

commit 2b80175e6bff090543e4f5659c7605fe3f752fb7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 10 10:09:01 2013 +0100

    ppc: Use a larger default memory size on ppc64.
    
    Without this, test-max-disks fails when creating device nodes.

commit ccc81c0dc55b36fd8429d9a1389a0e96ba06ba6e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 9 22:54:09 2013 +0100

    ppc: launch: direct: Use -M pseries.

commit 40a4f6a6bf396feb564c9adbaf3152d8b86169d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 9 12:23:26 2013 +0100

    arm: launch: direct: Use correct device name for virtio-scsi when detecting.

commit f3574992270d06563a47d08c159538b9b632acdb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 9 11:58:06 2013 +0100

    tests: Add a regression test that ensure the network can be added.
    
    This was only tested before (implicitly) by the rsync test in
    tests/rsync.  It's better to have an explicit test of this
    functionality.

commit 227e84528b6393279a3b88fd72624ff2f53f8cc3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 9 11:57:20 2013 +0100

    arm: launch: libvirt: Use virtio-net-{pci,device} instead of hard-coding virtio-net-pci.
    
    This is so it works on virtio-mmio platforms such as ARM.

commit 5d68c19d2b0d9a3e26160e2b6147ab46c9fcbc55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 9 09:02:59 2013 +0100

    arm: launch: libvirt: Set kernel_irqchip=off for KVM to work around buggy qemu/kernel.

commit 9a122fc6c3cd749050435ac5aba79ef2e45d016d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 8 23:23:11 2013 +0100

    arm: launch: libvirt: Force <emulator>.
    
    This is a temporary hack, because otherwise libvirt tries to use
    /usr/bin/qemu-kvm even though this is ARM.

commit 33606a62aed780c74c45d69e7ee789a069482435
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 8 23:22:34 2013 +0100

    arm: launch: libvirt: Use vexpress-a9 machine type.

commit 07ce7895bca9beb250a05aeb1dc16240160dc9d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 8 23:21:30 2013 +0100

    arm: launch: libvirt: Don't try setting a cpu model on ARM.
    
    One day we may be able to make this work, but presently libvirt says:
    
      CPU specification not supported by hypervisor

commit 685d8ee76ef7084eb5d0440ff37ae84b57636c16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 8 23:09:34 2013 +0100

    launch: libvirt: 'is_custom_hv' instead of 'is_custom_qemu'.
    
    Just code motion related to the changed from LIBGUESTFS_QEMU
    to LIBGUESTFS_HV.
    
    This updates commit 78dbd08dd2115efcc488e8fbcaf9705697eb075b.

commit 6b640123be63951433abda5d16d7c66e3a3a3aea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 8 20:50:54 2013 +0100

    arm: tests: 9p: Modify name of virtio-9p-pci device when using virtio-mmio.
    
    It's called virtio-9p-device on virtio-mmio.

commit e6d20cf0b9003d3e0d0ade2773b814b540d4e373
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 8 16:21:17 2013 +0100

    arm: Error if iface=ide and skip tests that use iface=ide.
    
    ARM doesn't support IDE.  (Well, that's not entirely true as I found a
    reference to one extremely obscure ARM board that had IDE disks, but
    qemu-system-arm doesn't appear to support them).

commit de5f90178ede1fa76d233a84fc669018d0f116de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 8 16:19:24 2013 +0100

    launch: direct: Handle iface=virtio using virtio-blk path.
    
    iface=virtio means use (old) virtio-blk.  Since there's an existing
    path for using virtio-blk, use that instead of adding if=virtio (which
    will fail on ARM).

commit a3ba110902c80eaf528fff3b854c42c2f4123f9d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 7 08:18:55 2013 -0400

    arm: launch: direct: Add kernel_irqchip=off to make ARM KVM work.
    
    See:
    https://lists.fedoraproject.org/pipermail/arm/2013-September/006758.html

commit d31ab8351ed0d3cc01f19a6158043dc9322669a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 7 13:06:21 2013 +0100

    Version 1.23.21.

commit d9b675df56eb0600cdc9ef84cff202d1f773648b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 6 13:17:52 2013 -0400

    arm: appliance: Add support for device trees (dtb's).
    
    If supermin-helper >= 4.1.5 is found, use the new-style syntax and if
    the architecture requires it (only ARM for now) implement device
    trees.
    
    This means we pass a supermin-helper --dtb option to find the right
    device tree (currently Versatile Express A9, since that's what we pass
    to qemu in the -M option).  This makes supermin-helper find a
    compatible device tree file.
    
    Also that we pass the corresponding dtb file to qemu via the qemu -dtb
    option, or to libvirt via the <dtb> element.

commit 307d1ea1d7ec7c96708967832c3a0f2cc5a2c233
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 6 09:09:34 2013 +0100

    sysprep: Update POTFILES-ml.
    
    This updates commit ea7088b5cab30158149b07bd208e54631b86b8eb.

commit 5a08de4dafbc01faefc0f12cf547c270988f0950
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri Sep 6 15:52:38 2013 +0800

    sysprep: remove tmp files
    
    This removes tmp files under /tmp and /var/tmp.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 2c6c748ac6fc44395e31f5cb84d6fda025e8d8fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 18:41:56 2013 -0400

    launch: direct: Set QEMU_AUDIO_DRV=none to stop qemu opening audio devices.
    
    Libvirt does the same thing, and it definitely has an effect
    on ARM at least.

commit 2395f0fa7378ebd32e735b7d8597ead038508c23
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 18:02:33 2013 -0400

    arm: launch: direct: Use virtio-net-device instead of virtio-net-pci on ARM.
    
    This updates commit 92749924112b21e01d7cdbbb4cc07627168a705f.

commit c4b384fc04acf857d0959c1b33672d6c1955dbe8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 14:18:33 2013 -0400

    arm: launch: direct: Use virtio-mmio devices on ARM.
    
    Devices such as virtio-blk are (implicitly) PCI devices.  They don't
    work on ARM.  You have to use the alternate names like
    'virtio-blk-device' instead.

commit ff2f4f1a81908791fc1cf9e78a3a38be64ed541a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 14:14:53 2013 -0400

    arm: launch: direct: Specify a -M (machine type).
    
    Currently this uses the Versatile Express A9 (vexpress-a9) machine
    type, which is not ideal long-term.  However it includes such things
    as virtio-mmio and so virtio things should work.
    
    Note that -M vexpress-a15 does not work with qemu (from git on
    2013-09-05 + Fedora kernel 3.11.0).  There are no boot messages.

commit e8136c68db7afc2480e47b07faff49183161ffbb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 13:50:08 2013 -0400

    arm: launch: direct: Don't use -cpu flag.
    
    We have no idea what the right choice is, so don't choose anything at all.

commit 4c64ea1c461b0486dc61a524fac3e5f38a927fa1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 11:05:26 2013 -0400

    arm: configure: Search correctly for qemu-system-arm binary.

commit a0c4361305823fdd3de7a9e26f0887edbfa5b107
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 18:47:00 2013 +0100

    launch: direct: Always use -drive ...,iface=none.
    
    For virtio-scsi, this is the same as always:
    
      -drive ...,iface=none -device scsi-hd
    
    For virtio-blk, this now uses:
    
      -drive ...,iface=none -device virtio-blk

commit 4d9b5965d1a81f41abeecd27900e2dfdc78b9c0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 18:45:24 2013 +0100

    launch: direct: Always use cache=unsafe for the appliance.
    
    The code to select writeback was redundant, because current
    qemu always supports cache=unsafe.

commit fa0833a300b63bd7c1ae983fd5021982b775dedb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 5 18:39:46 2013 +0100

    launch: direct: Refactor -drive parameter for virtio-blk/virtio-scsi.
    
    This is a straightforward refactoring of the code for generating
    -drive and/or -device parameters for virtio-blk and virtio-scsi.

commit 3773a208c6d94e0923d29e0c3c10e4dafccea01d
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Thu Sep 5 19:13:22 2013 +0800

    sysprep: remove firewall rules
    
    If we do not want to keep the original firewall rules, enable
    this operation to remove these rules automatically.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
    
     - Updated po-file.
    
     - Change documentation to note that it's disabled by default
       and in theory could make the guest exploitable.

commit e45444d8b0411f4f0b8e5fb7062e68eb51b91991
Author: Martin Kletzander <mkletzan@redhat.com>
Date:   Wed Sep 4 13:42:40 2013 +0200

    Get rid of gnulib error
    
    Even though this doesn't stop the compile phase, I find it a bit
    distracting that this is what I get with bootstrap:
    
    ../.gnulib/gnulib-tool: *** cannot find ./configure.ac - make sure you
    run gnulib-tool from within your package's directory
    ../.gnulib/gnulib-tool: *** Stop.
    
    Signed-off-by: Martin Kletzander <mkletzan@redhat.com>

commit 4bc86f1ca6021e1299cb506572b4de01046fd94f
Author: Martin Kletzander <mkletzan@redhat.com>
Date:   Wed Sep 4 13:42:39 2013 +0200

    Don't redefine _FORTIFY_SOURCE
    
    The macro _FORTIFY_SOURCE might be already defined by environment in
    which case it shouldn't be overriden (might be if it has lower value).
    
    Signed-off-by: Martin Kletzander <mkletzan@redhat.com>

commit 4d199cbc63965e9dd88219bd28e0a06539080058
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Thu Sep 5 14:57:33 2013 +0800

    sysprep: remove log file of ntp
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 401a03232d629bfb1625b78453f456a96d88c9a4
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Thu Sep 5 14:57:32 2013 +0800

    sysprep: remove log file of gdm
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 0b84904f6e2e2ec4d2816e1405db4cd79b40cb2b
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Thu Sep 5 14:57:31 2013 +0800

    sysprep: remove log file of sysstat
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 72015cc4a23f644c6dab6080354fcd4729bbcd9b
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Thu Sep 5 14:57:30 2013 +0800

    sysprep: remove /var/log/audit/audit.log
    
    audit.log is already included in /var/log/audit/*.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit cb40b33868a82d4aa96dfe534a171e0ccaf6cf6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 3 12:44:25 2013 +0100

    virt-df: parallel: Compile debugging messages in always.
    
    Enable debugging messages whenever LIBGUESTFS_DEBUG=1 / -v option, so
    that we can track down possible race condition seen in Koji.

commit 61f4331e92f4d669ca6b02ce2a8601b3e70cb22f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 19:37:57 2013 +0100

    daemon: augeas: Don't test if AUG_NO_ERR_CLOSE is defined.
    
    It's an enum, not a macro, and in any case it has been present in
    augeas.h since 0.10.0, and the minimum version that libguestfs
    requires is 1.0.0.
    
    This fixes commit 3d132f29204e8c5c77f08841b5288dfe3013f4f0.

commit f7b5c76efe8e7053bf239799a4049cfc8630d630
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 2 19:19:26 2013 +0100

    daemon: augeas: Enhance error reporting for aug_init failures.
    
    Thanks: Dominic Cleal.

commit 0805e4be2b5fb0d8fd7227d88509487b0c7a1b81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 1 16:36:25 2013 +0100

    Version 1.23.20.

commit 58d8c9f0bfc62223ab34fd092dee69e9243e2460
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 1 11:11:55 2013 +0100

    drives: Don't need to call free_drive_servers since preceding code checks servers == NULL.

commit 9f99109d3c485c7392be3f843dd2ed533881e89f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 31 22:48:04 2013 +0100

    rescue: Use cachemode "unsafe" for the virt-rescue --scratch option.

commit ab96c162b8205316b9a3a93efb49957692c6f5f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 31 22:47:44 2013 +0100

    sparsify: Use cachemode "unsafe" for the overlay disk.

commit 72d1a355aeb19071740ce5121afaa74a1b79ded0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 31 22:38:03 2013 +0100

    drives: Ensure all scratch drives use cachemode "unsafe".
    
    They are _scratch_ drives so any data on them doesn't matter and can
    be reconstructed in the event of a host system crash.

commit 698698c4a8ac677b7ed3564c77e7fc6fea4d58e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 31 22:24:40 2013 +0100

    add_drive: Introduce 'cachemode' parameter to control drive caching.
    
    This commit adds an optional 'cachemode' parameter to the 'add_drive'
    API to control caching.  This corresponds approximately to the
    '-drive ...,cache=' parameter in qemu, but the choices are much more
    restrictive, just 'writeback' or 'unsafe', for reasons outlined below.
    
    The caching modes supported by recent QEMU are:
    
      writeback:
       - Reports data writes completed when data is present in the host
         page cache.
         Only safe provided guest correctly issues flush operations.
    
      writethrough:
       - Reports data writes completed only when each write has been
         flushed to disk.  Performance is reported as not good.
    
      none:
       - Uses O_DIRECT (avoids all interaction with host cache), but does
         not ensure every write is flushed to disk.
         Only safe provided guest correctly issues flush operations.
    
      directsync:
       - Uses O_DIRECT (avoids all interaction with host cache), and
         ensures every write has been flushed to disk.
    
      unsafe:
       - No special handling.
    
    Since the libguestfs appliance kernel always issues flush operations
    (eg. for filesystem journalling and for sync) the following modes can
    be ignored: 'directsync', 'writethrough'.
    
    That leaves 'writeback', 'none' and 'unsafe'.  However 'none' is both
    a constant source of pain (RHBZ#994517), is inefficient because it
    doesn't use the host cache, and does not give us any safety guarantees
    over and above 'writeback'.  Therefore we should ignore 'none'.
    
    This leaves 'writeback' (safe) and 'unsafe' (fast, useful for scratch
    disks), which is what we implement in this patch.
    
    Note that the previous behaviour was to use 'none' if possible, else
    to use 'writeback'.  The new behaviour is to use 'writeback' only
    which is (in safety terms) equivalent to 'none', and also faster and
    less painful (RHBZ#994517).
    
    This patch also allows you to specify a cache mode for network drives
    which also previously defaulted to 'writeback'.
    
    There is a considerable performance benefit to using unsafe (for
    scratch disks only, of course).  The C API tests only use scratch
    disks (since they are just tests, the final state of the disk doesn't
    matter), and this decreases total run time from 202 seconds to 163
    seconds, about 25% faster.

commit cf92e135f88f15323c17ab962808c9c4a72b8300
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 31 18:26:33 2013 +0100

    sparsify: Test for qcow2 features instead of keying off qemu-img version.
    
    Test whether qcow2 features are possible in qemu-img instead of
    assuming they are by keying off the version.
    
    Also use the 'lazy_refcounts' flag, if available.  It may make writing
    to the overlay file marginally faster (however I tested it and there
    was no measurable difference).

commit 63dad168f80c13202025a5483edb6496fe5ef1dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 31 18:17:05 2013 +0100

    sparsify: Fix signal handling.
    
    If you don't have a ^C (SIGINT) signal handler at all, then at_exit
    handlers are not called so you end up leaving the large temporary
    overlay file lying around.  That was fixed, incorrectly, by
    commit 7283a5a2765c0670e9dceec70e626a49a30d269c.
    
    However the code now would delete the overlay file in the SIGINT
    handler but otherwise continue running until basically it tries to
    read the overlay file (now deleted) and fails.  So it kind of worked,
    by accident.
    
    Fix this so that the signal handler calls exit, thus ensuring both
    that the exit handler is called (to delete the file) and that the
    program actually exits as soon as possible.
    
    This also refactors the unlink_on_exit function into a utility.

commit 8bc4f64e2c90c2d38f487c92ae7349b52780dc5d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 31 18:13:04 2013 +0100

    daemon: Add comment about how zero_free_space would be better if we could do cancellation.

commit fa1408e09236b1614686a31ef7b7925725f372fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 30 13:50:25 2013 +0100

    configure: Fix stupid typo which caused compressed images to always be used.
    
    Libguestfs won't work if you try to use it with supermin < 4.1.4
    because the logic for detecting if compressed images can be used was
    wrong (it was always enabled, instead of disabled for supermin < 4.1.4).

commit 6a5e61f0bc31411134a8f862201f715c49fe3b8f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 21:19:58 2013 +0100

    Rename virt-{cat,edit,filesystems,inspector,ls,rescue}.c to *.c.
    
    This is just renaming of files.

commit a8ac178b5c75de385d5752c2fb74163b415e2edd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 18:32:12 2013 +0100

    Version 1.23.19.

commit 71bf987477eca5e69219f1c244f747e0d6902e4b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 17:26:59 2013 +0100

    uml: Skip tests/md/test-inspect-fstab-md.sh
    
    Hangs at various places during the test, eg. running mdadm, mounting
    MD filesystem.  Seems to be a bug in UML/MD.

commit 475651abb35fc7d0d87743a9cbff6ee0f245440d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 13:59:14 2013 +0100

    mke2fs: Document that too small blockscount will result in ext2 filesystem (RHBZ#1002032).

commit 8fba694396cceb8cf1f6a1ae452fa311bcbef195
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 13:49:26 2013 +0100

    rsync: Document use of glob + rsync-out in guestfish (RHBZ#1001876).

commit 90634bdf1c118c2afc6c36dd0b836f2befef355b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 13:36:56 2013 +0100

    Add a regression test of tar-out excludes option (RHBZ#1001875).

commit ac00466acc6f2820f3c59bc9a9b2042f34a572fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 13:26:51 2013 +0100

    daemon: tar: Use a temporary file to pass excludes to tar command (RHBZ#1001875).
    
    Use tar -X option instead of tar --exclude=... option.

commit 106c87016b22ab3918b8fa4cd68ed8a45d5ff2ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 11:41:46 2013 +0100

    daemon: Allow labels to be set on DOS filesystems using 'dosfslabel'.
    
    You can now use virt-format or virt-make-fs --label option to set a
    label for a DOS filesystem:
    
    $ ./run ./format/virt-format -a /tmp/test.img --filesystem=vfat --label=BOOT
    $ ./run ./cat/virt-filesystems -a /tmp/test.img --all --long -h
    Name       Type        VFS   Label  MBR  Size  Parent
    /dev/sda1  filesystem  vfat  BOOT   -    1.0G  -
    /dev/sda1  partition   -     -      0b   1.0G  /dev/sda
    /dev/sda   device      -     -      -    1.0G  -
    
    This also contains a small code refactoring.
    
    Thanks: Gerd Hoffmann (kraxel)

commit e7e40f8ce381e3463808371aa686154c3da0d5bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 11:37:06 2013 +0100

    virt-make-fs: Add --label option for setting filesystem label.
    
    $ ./run ./tools/virt-make-fs /tmp/supermin-4.1.4.tar.gz /tmp/test.img
    $ ./run ./cat/virt-filesystems -a /tmp/test.img --all --long -h
    Name      Type        VFS   Label  MBR  Size  Parent
    /dev/sda  filesystem  ext2  -      -    3.7M  -
    /dev/sda  device      -     -      -    3.7M  -
    
    $ ./run ./tools/virt-make-fs /tmp/supermin-4.1.4.tar.gz /tmp/test.img --label=BOOT
    $ ./run ./cat/virt-filesystems -a /tmp/test.img --all --long -h
    Name      Type        VFS   Label  MBR  Size  Parent
    /dev/sda  filesystem  ext2  BOOT   -    3.7M  -
    /dev/sda  device      -     -      -    3.7M  -
    
    Thanks: Gerd Hoffmann (kraxel)

commit f17575a443fa407c950288556e0f8e620c9133ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 11:32:05 2013 +0100

    format: Add --label option for setting filesystem label.
    
    $ ./run ./format/virt-format -a /tmp/test.img --filesystem=ext2 --label=BOOT
    $ ./run ./cat/virt-filesystems -a /tmp/test.img --all --long -h
    Name       Type        VFS   Label  MBR  Size  Parent
    /dev/sda1  filesystem  ext2  BOOT   -    1.0G  -
    /dev/sda1  partition   -     -      83   1.0G  /dev/sda
    /dev/sda   device      -     -      -    1.0G  -
    
    Thanks: Gerd Hoffmann (kraxel)

commit faf48f7d890dcba26e13f089358969b073c238d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 29 11:24:00 2013 +0100

    format: Set MBR partition type byte appropriately (RHBZ#1000428).
    
    Windows won't see a filesystem unless the MBR partition type
    byte is set correctly.
    
    $ ./run ./format/virt-format -a /tmp/test.img
    $ ./run ./cat/virt-filesystems -a /tmp/test.img --all --long -h
    Name       Type        VFS      Label  MBR  Size  Parent
    /dev/sda1  filesystem  unknown  -      -    1.0G  -
    /dev/sda1  partition   -        -      83   1.0G  /dev/sda
    /dev/sda   device      -        -      -    1.0G  -
    
    $ ./run ./format/virt-format -a /tmp/test.img --filesystem=ntfs
    $ ./run ./cat/virt-filesystems -a /tmp/test.img --all --long -h
    Name       Type        VFS   Label  MBR  Size  Parent
    /dev/sda1  filesystem  ntfs  -      -    1.0G  -
    /dev/sda1  partition   -     -      07   1.0G  /dev/sda
    /dev/sda   device      -     -      -    1.0G  -
    
    $ ./run ./format/virt-format -a /tmp/test.img --filesystem=vfat
    $ ./run ./cat/virt-filesystems -a /tmp/test.img --all --long -h
    Name       Type        VFS   Label  MBR  Size  Parent
    /dev/sda1  filesystem  vfat  -      -    1.0G  -
    /dev/sda1  partition   -     -      0b   1.0G  /dev/sda
    /dev/sda   device      -     -      -    1.0G  -
    
    $ ./run ./format/virt-format -a /tmp/test.img --lvm --filesystem=vfat
    $ ./run ./cat/virt-filesystems -a /tmp/test.img --all --long -h
    Name        Type        VFS   Label  MBR  Size   Parent
    /dev/VG/LV  filesystem  vfat  -      -    1020M  -
    /dev/VG/LV  lv          -     -      -    1020M  /dev/VG
    /dev/VG     vg          -     -      -    1020M  /dev/sda1
    /dev/sda1   pv          -     -      -    1020M  -
    /dev/sda1   partition   -     -      8e   1.0G   /dev/sda
    /dev/sda    device      -     -      -    1.0G   -
    
    Thanks: Gerd Hoffmann (kraxel)

commit 9ffcb454c79ebd0fca99e236ecd93692ccd2a723
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 28 22:35:42 2013 +0100

    appliance: Use gzip-compressed cpio files if supermin-helper supports it.
    
    supermin-helper >= 4.1.4 has new support for compressed cpio files
    (not hostfiles).  Detect if this is supported, and use it.

commit 68ba0a4a0bc00873c77d25d2b3d779c82fc11765
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 28 18:45:14 2013 +0100

    javadoc: Install javadoc in $(datadir)/javadoc/libguestfs (without -java-$(version)).
    
    Apparently this is the normal place for javadoc, and not
    where we installed it before.

commit 326ff36c4e582b7f50a1bb1c7057a748708f903e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 22 19:48:05 2013 +0100

    Initialize CLEANUP_* stack variables with NULL in various places.
    
    Code like:
    
      CLEANUP_FREE char *buf;
      /* some code which might return early */
      buf = malloc (10);
    
    is a potential bug because the free (*buf) might be called when buf is
    an uninitialized pointer.  Initialize buf = NULL to avoid this.
    
    Several of these are bugs, most are not bugs (because there is no
    early return statement before the variable gets initialized).
    
    However the compiler can elide the initialization, and even if it does
    not the performance "penalty" is miniscule, and correctness is better.

commit 1d0d852a6d26af9562a2fc379a57e61204b109ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 22 19:38:54 2013 +0100

    daemon: sh: Fix missing initializer which caused segfault (RHBZ#1000121).
    
    Thanks: Olaf Hering.

commit 940f7ba0272e6bc549a3bcf7bc6c8cdb0e7ef83a
Author: Olaf Hering <olaf@aepfle.de>
Date:   Tue Aug 20 16:33:01 2013 +0200

    lib: avoid pragma usage in journal.c
    
    journal.c: In function 'guestfs__journal_get':
    journal.c:120:9: error: #pragma GCC diagnostic not allowed inside functions
    journal.c:121:9: error: #pragma GCC diagnostic not allowed inside functions
    journal.c:123:9: error: #pragma GCC diagnostic not allowed inside functions
    make[3]: *** [libguestfs_la-journal.lo] Error 1
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 51e4ffa2ba1f52ccab50cabb792e090c21129dc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 20 18:28:25 2013 +0100

    daemon: hivex: Define empty hivex_finalize function in case !HAVE_HIVEX.
    
    Thanks: Olaf Hering (see previous commit).

commit ee416af959fd5fffedd5f729cf946b9249995625
Author: Olaf Hering <olaf@aepfle.de>
Date:   Tue Aug 20 15:48:51 2013 +0200

    daemon: fix build without systemd-journal
    
    Fix typo in OPTGROUP_JOURNAL_NOT_AVAILABLE
    Define empty journal_finalize, called by mount.c
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit d24d93928ed51a192ac848773acda424c559309b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 20 11:42:18 2013 +0100

    daemon: Document guestfs_verbose=1 and guestfs_channel=<PATH> in man page.

commit 3582090881f47f7a2804f429de08f09fd32579ca
Author: Olaf Hering <olaf@aepfle.de>
Date:   Mon Aug 19 19:28:18 2013 +0200

    tests: change noinst to check
    
    This change avoids the hard requirement for qemu-tools during package
    build.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 7c0ec36165db00ca8c48ae70cf78b88a9b60c9de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 19 15:46:20 2013 +0100

    Version 1.23.18.

commit 1120016d82f168cdf48a9539df8bb1e6a8f120d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 19 15:45:35 2013 +0100

    uml: Remove unused function is_numeric.
    
    This fixes commit b607f8628876f4779921047ad29aa9a623e3bde2.

commit b000c48b0aac325d3e4117073e578e0c3dbbcb95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 19 14:17:55 2013 +0100

    fish: Document that guestfish --remote --add won't work as expected (RHBZ#998513).

commit 7fc26997e622203aa49e8278f17ba5861be2b08f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 19 13:50:29 2013 +0100

    launch: direct: Don't try to wait for qemu if parent process forked (RHBZ#998482).
    
    When using guestfish --remote, libguestfs is not the parent of qemu,
    so waitpid is expected to return -ECHILD.  And indeed guestfish --remote
    would print a bogus error message in this case:
    
      libguestfs: error: waitpid (qemu): No child processes
    
    If the parent process forked into the background, then it should have
    called 'set_recovery_proc 0' so we can use this to determine if we
    need to wait for qemu.
    
    Thanks: Kazuya Saito for reporting and identifying the issue.

commit 03b22f0e1ea11e674380a13f89ef070d62b6af71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 19 10:34:39 2013 +0100

    uml: Remove kill_vmlinux subprocess, problem fixed upstream.
    
    Note you need to apply these patches to the Linux kernel to get
    User-Mode Linux to work with libguestfs:
    
    http://marc.info/?l=user-mode-linux-devel&m=137682544009451&w=2
    http://marc.info/?l=user-mode-linux-devel&m=137682543809449&w=2
    http://marc.info/?l=user-mode-linux-devel&m=137682544209452&w=2
    http://marc.info/?l=user-mode-linux-devel&m=137682543809448&w=2

commit 3e92d5459c52fda1bcb266bdbedae6e4f58ddf06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 19 10:31:27 2013 +0100

    uml: Exit status 1 is a normal exit code for vmlinux subprocess.
    
    Note you need to apply these patches to the Linux kernel
    to get User-Mode Linux to work with libguestfs:
    
    http://marc.info/?l=user-mode-linux-devel&m=137682544009451&w=2
    http://marc.info/?l=user-mode-linux-devel&m=137682543809449&w=2
    http://marc.info/?l=user-mode-linux-devel&m=137682544209452&w=2
    http://marc.info/?l=user-mode-linux-devel&m=137682543809448&w=2

commit bcd53ef2d5e66a5597664071f29a633cb7ce14f9
Author: Or Goshen <oberonc@gmail.com>
Date:   Mon Aug 19 10:08:34 2013 +0100

    Fix to src/proto.c in libguestfs so it will compile with portablexdr under mingw.

commit b8433287aa43f38055efa676c47fa09cc66f5633
Author: Nikita Menkovich <n.menkovich@sprinthost.ru>
Date:   Fri Aug 16 17:14:28 2013 +0100

    sysprep: added --mount-options option to mount selected partitions with options.

commit 45b81869d68c6af1dd41644bfa69927f3b809ef9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 16 13:35:12 2013 +0100

    FAQ: Replace the debugging section (again) with a checklist of information we need to start to fix bugs.

commit b2e4b96b32ec9a88b1648fa3f248a148e530ff28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 16 13:24:19 2013 +0100

    FAQ: Move #debug anchor back to the right place.
    
    This was accidentally moved by this commit:
    
      commit b8b5ed65c26dd19a0bc9f8282a50c6dff90c456a
      Author: Richard W.M. Jones <rjones@redhat.com>
      Date:   Wed May 23 11:46:23 2012 +0100
    
        FAQ: Add section about using libguestfs in closed source programs.

commit edc0b63016d7cb290072f88f050fae3b4e38283f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 16 12:00:06 2013 +0100

    FAQ: Delete section about Ubuntu 10.04.
    
    The link was broken, and we don't support Ubuntu 10.04 (maybe the
    'oldlinux' branch does).

commit c066f14aa9e7944d818f42ebba6c4c071c72540f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 16 09:13:59 2013 +0100

    cleanups: Use correct types for some cleanup functions.

commit 07234217be69b370525e711f7e01f03c33f388a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 15 22:30:21 2013 +0100

    uml: Add uml_mkcow requirement to README.
    
    This fixes commit 858d6e7176d7b18bc29c8503bbc2887a3b74a272.

commit 5b8bed6c679fc678ae318b05e64b8b5f3b70a724
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 15 16:57:04 2013 +0100

    launch: Create the direct & uml command lines safely.
    
    Refactor the direct & uml backends to safely create the qemu & vmlinux
    command lines.
    
    Don't do malloc-after-fork, which is not safe.  Do all the allocation
    in the main process before the fork.
    
    Use stringsbuf to simplify the code.

commit 937494e82154be6f5646e585f3a8736dd9065b07
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 15 13:52:13 2013 +0100

    Refactor backends so they are modular.
    
    Instead of hard-coding the list of backends into the core of
    libguestfs in many places, make each backend into a true module which
    registers itself with the core when the library is loaded.
    
    This is a step towards making backends into loadable modules, but it
    doesn't actually do that.
    
    This is just code motion.

commit 43e3149638178d6ab264efaa45665b7dc650d9d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 15 12:34:47 2013 +0100

    launch: libvirt: Move internal_set_libvirt_selinux_* APIs to common launch code.
    
    This is just code motion, but means the libvirt backend no longer has
    to export those two internal APIs.

commit 0f495a5ddaf19157465a435ccbe3118d3393c1d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 15 21:59:48 2013 +0100

    lib: Use stringsbuf at various places in the library to simplify the code.
    
    This is just code refactoring.

commit a2c280dfa2fcd815ab21e237a955f998f0d791d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 15 22:01:36 2013 +0100

    lib: Add stringsbuf mini-library for constructing lists of strings.
    
    This is modelled on similar code in the daemon that we have used
    successfully for a long time.

commit ceea676a6b08d5927d7c45eea131946ee3f6a6fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 15 21:48:50 2013 +0100

    list-filesystems: Don't fail if there are no filesystems found (RHBZ#995711).
    
    list-filesystems was returning NULL (but not setting an error) if no
    filesystems were found.  Instead return an empty list.

commit 7f79039dc5a00bf90028a71f56a762610d409f6b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 15 18:43:08 2013 +0100

    cmd: Better type checking in CLEANUP_CMD_CLOSE macro.

commit 639699d410c2fbd7b74b5fb019ecd5dbc88438bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 15 11:33:55 2013 +0100

    utils: Move guestfs___drive_name function to the utilities library.
    
    For some historical reason, it was stuck in src/launch-direct.c and
    the comment referred to launch-appliance.c!

commit a9c94a0f51a113a2acbd4a410703c934908a3bbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 15 09:12:44 2013 +0100

    podwrapper: guestunmount is a libguestfs page, don't link it to he.net.

commit 633dcf4a50b3ed94a10ee8e479340fe5a11f221b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 14 23:30:30 2013 +0100

    Version 1.23.17.

commit d216b48fc539686dc6163ca9422373c438efe4b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 14 23:28:11 2013 +0100

    Remove contrib file from EXTRA_DIST.
    
    This fixes commit 36d29700dcef01d681d41f0b593a16e7814e3ee1.

commit cfcdd3e0c1397d995d768bd610e4e64fd55109c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 14 17:40:24 2013 +0100

    guestfs-performance: Add a section on the performance of UML.

commit 9aba70bc4c340e5d0b0b6e8235c0825c02e8ec1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 13 22:28:28 2013 +0100

    Rename 'qemu' as 'hv', 'LIBGUESTFS_QEMU' as 'LIBGUESTFS_HV'.

commit 273b39a92075886668184c1c992fc739c5b3478f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 14 15:25:17 2013 +0100

    launch: libvirt: Don't enable <cpu mode="host-model"> on TCG.
    
    It's fairly pointless to do this with TCG, since all we would be doing
    is emulating a more complicated processor slowly.  Also it may be the
    cause of subtle problems we see during testing.
    
    This updates commit 6f76fdb41eb6bd124fbc3d084f5c2a3371b37d9b.

commit 02d1b2d6123702d705b7b799ebb6c58ae25b58a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 14 15:08:04 2013 +0100

    launch: direct: Don't use -cpu host on TCG.
    
    qemu -cpu \? documents this as:
    
    host  KVM processor with all supported host features (only available in KVM mode)
    
    And indeed if you try it with TCG you'll get this error:
    
    Unable to find CPU definition: host
    
    This fixes commit 038ed0a08eaed33e62a27c9f91780a25de0bc08c.

commit 6b3e8ead289eb4bd3574778b8baabed3d6a3343c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 14 12:52:48 2013 +0100

    tests: Add a test that console log messages make it up to events.
    
    In Rawhide, the console was briefly broken although it "fixed itself"
    when libvirtd was restarted.

commit ab045b7b39e559c1f0527f833471ca99be580565
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 13 21:45:29 2013 +0100

    Remove contrib/guestfsd-in-wine.sh.
    
    Added in 2009, unlikely it still works since I doubt it has been
    compiled since then.

commit ec3a7092a8c8d9657f15a72bf0c3fc8b41d1e08d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 13 21:31:12 2013 +0100

    uml: Change (temporary) path to UML binary.

commit e7868c2ba4bb78c53470714a0cfd3db32a1ddd63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 13 15:46:02 2013 +0100

    Version 1.23.16.

commit 2f9537fce79dc3c3a3e50dd2dea28d905de8455e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 22:47:25 2013 +0100

    uml: Add check-uml and check-valgrind-uml to release tests.

commit 1a0e2c2146570fc60a0e75f694d7f64ed78b2e99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 16:19:28 2013 +0100

    uml: tests: Add 'make check-uml' and 'make check-valgrind-uml' rules.
    
    These run the test suite using User-Mode Linux.  Currently you have to
    set LIBGUESTFS_QEMU to point to the vmlinux binary, but perhaps we
    can solve that in future.

commit c1c7b7a3883412cf242b4eeab6b88d503541cf30
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 13 13:50:36 2013 +0100

    uml: virt-make-fs: Modify test so it doesn't use qcow2 under UML.
    
    Modify the test so it doesn't try to test qcow2 format when the
    backend is User-Mode Linux which doesn't support qcow2.

commit aa75d660f519bc042403c229e589843fc276ba69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 13 13:49:42 2013 +0100

    uml: sparsify: Skip test since it needs qcow2.

commit 408fbcd5cf4c9b15558787ba3d3ac0cfb7bdad0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 13 13:49:31 2013 +0100

    uml: resize: Skip test since it needs qcow2.

commit 6ac782805aa639d733be4e7321749f9011aba5ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 13 13:49:16 2013 +0100

    uml: fuse: Skip test since it needs qcow2.

commit b245da2535c073a2e4a38af0c52197669baa37cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 22:50:19 2013 +0100

    uml: tests: edit: Skip test since it needs qcow2.

commit 8e40b931d071d9930cda998a4421f29d4f9cc69f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 22:21:38 2013 +0100

    uml: tests/qemu: Fix tests so they work without support for qcow2.

commit 6bf2b9b5649d7e8e92e0e7fb4b141204702e8a35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 22:06:10 2013 +0100

    uml: tests/md: Skip test-inspect-fstab.sh since it needs qcow2.

commit ce17cb94915975ad0c63b57dfb9fe19abef997a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 21:57:00 2013 +0100

    uml: tests/md: Fix test to cope with /dev/ubd* device names.

commit 7f680d4aa62735d8304da7560ab8e082b9a02a75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 16:56:47 2013 +0100

    uml: tests/luks: Fix assumption that broke /dev/ubd* device names.

commit 533138a3f6d7569239d9bd26ccb4a334e811c71a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 16:43:50 2013 +0100

    uml: tests/lvm: Fix assumption that broke /dev/ubd* device names.

commit 4d1c39d6a42e34a2da7544a8c9ab2bdd45e2dac2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 16:40:57 2013 +0100

    uml: tests/mountable: Skip tests that need qcow2.

commit c4cfe9c044f4f23ee432138beefb6c85d31e52dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 16:34:27 2013 +0100

    uml: tests/disks: Fix test so it can cope with /dev/ubd* device names.

commit 77277f903f1074060edb4e0c708f328fe242e135
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 16:19:11 2013 +0100

    uml: tests: Skip some tests which cannot work with the UML backend.

commit 53ed10b03677c952b8d85290b5a3382a005bc492
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 21:23:44 2013 +0100

    uml: Fix race when multiple handles are used in parallel.
    
    See comment for explanation.

commit 351422f066fa6da163fdcdef56c606fe39ac39c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 16:31:24 2013 +0100

    uml: Fix maximum number of disks.

commit 87a6eaba7ef6b3a98c0612e267557a1cc645252e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 18:44:41 2013 +0100

    uml: Fix guestfs_canonical_device_name API to understand /dev/ubd* paths.

commit 28a39f09a4021e50591c5f29ea03872b6c2d1e25
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 13 13:50:43 2013 +0100

    virt-list-filesystems: Fix to use $g->canonical_device_name instead of homebrew function.
    
    The homebrew function didn't recognize /dev/ubd* device names, and in
    any case using the API function is shorter and clearer.

commit 99321bd48a6545d325358324f84c9b11c61b734c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 21:49:55 2013 +0100

    daemon: list-md-devices: Check if a /dev/md<X> device is valid before returning it.
    
    For reasons not fully understood, if md is linked into the kernel (and
    not a module), a /dev/md0 device node is created.  However this is not
    a real RAID device.  For example running mdadm --detail /dev/md0 will
    fail on it.
    
    Check the /dev/md<X> devices are real RAID devices before returning
    them from the list-md-devices API.

commit 74b0551f112b7f9a1c5b0583719259ad5c319321
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 21:28:58 2013 +0100

    daemon: md: Whitespace fixes.

commit 624138e906a60f5ed73feb2d52178fa2e3b78e53
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 19:25:11 2013 +0100

    daemon: If /proc/modules doesn't exist, linuxmodules optgroup is disabled.
    
    It likely means the kernel was compiled without modules support.

commit 00c572eb1a5b68d847be62710ddf45d16a8d18b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 19:24:35 2013 +0100

    tests/regressions: Allow regression test for bug 914931 to be skipped.

commit 4432a18241c4a410a437ff3ad06a306a81240a2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 17:48:08 2013 +0100

    tests/md: Fix error path to display the correct output.

commit 4f9f06866bb3afb2b2758e84eed74021a3256add
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 16:00:59 2013 +0100

    docs: The old make check-with-appliance/etc rules were renamed.
    
    This fixes commit 68990840b64491b39ab8da5f1e46367ae5f01594.

commit d67e8d1d4f6bd9b42119830fa3f926a60a9cea15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 13:42:26 2013 +0100

    tests: c-api: Fix device name comparison when using User-Mode Linux.
    
    This updates commit 858d6e7176d7b18bc29c8503bbc2887a3b74a272.

commit 70dc1c75ca0ee4caff9aef34eed444550fc7f100
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 13:41:53 2013 +0100

    docs: Clearer documentation for User-Mode Linux.
    
    This updates commit 858d6e7176d7b18bc29c8503bbc2887a3b74a272.

commit c72ae23039a1293f1fb15e519e459f98dc094590
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 13:41:24 2013 +0100

    launch: direct: Print \n after printing qemu command line.
    
    This makes it easier to see error messages printed by qemu.

commit 7d877b7cd4825661b06f6ecc0b893355fe6fcddf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 12 13:40:24 2013 +0100

    daemon: compare_device_names: Fix typo in this function.
    
    This would have broken the function if we were comparing mixed
    /dev/sda and /dev/ubda (ie different length) strings.  Which we never
    normally do, luckily.

commit df0f70e958b9871c5c4d7d1aa54c6653c7f71cea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 11 23:06:37 2013 +0100

    Version 1.23.15.

commit f762c148f8c35be997cbbbc07fbd65fb48ca3d86
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 11 23:37:17 2013 +0100

    daemon: Ensure CLEANUP_FREE* variables are initialized with NULL.
    
    Otherwise an early exit from the function will cause an uninitialized
    pointer to be freed.
    
    This fixes commit 1d7c3a27822717398415940bde1d4476441e9c1a.

commit dc14daff29969e5c4c62d258370202f70d68f55f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 9 22:46:39 2013 +0100

    Add experimental User-Mode Linux backend.

commit 6b5730c1c2db5d389cbd4a116061e000fdecaaff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 10 12:41:03 2013 +0100

    daemon: Recognize /dev/ubd[a-] as a valid device name.

commit 2b507e8b74041ad9301f7a769c56698d1e614716
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 9 22:45:37 2013 +0100

    daemon: Allow guestfs_channel to override the virtio-serial channel.
    
    Also if /dev/ttyS* is specified, make sure the serial port is set to
    raw mode.

commit 9eb36d3203447b02082b44ea9c68ad9c5247f5ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 9 16:08:26 2013 +0100

    conn: Make sure we display all log messages when qemu goes away.
    
    If qemu goes away it is (more in theory than in reality) possible for
    log messages to be lost in the kernel's socket buffer.
    
    This turns out to matter more for User-Mode Linux.

commit 5a915cd2a08a67f9bacc5eedbca38bf7628806ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 9 16:09:39 2013 +0100

    appliance/init: Allow guestfs_noreboot=1 flag to avoid reboot at end of /init script.

commit 450d784135fe7e0ddc14222412e87eea3ae8622f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 11 19:45:12 2013 +0100

    lib: Turn 'random_chars' function used by libvirt backend into utility function.

commit 9edad702d4e41c80b05a315377260903f9219957
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 11 19:47:44 2013 +0100

    utils: Remove duplicate inclusion of <string.h>.

commit 5a950052fb4e24beecdf009ec423a0027e4a6092
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 10 12:39:40 2013 +0100

    daemon: ldm: Don't return an error if /dev/mapper doesn't exist.

commit d8272042cb5e19ec0a33859705c32ee412c7c807
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 10 16:35:30 2013 +0100

    daemon: Device name translation now allocates a new string.
    
    Previously device name translation worked on the string in-place.
    
    This worked fine because the device strings always come from XDR where
    they are dynamically allocated.  However it wouldn't work if the
    translated name had to be longer than the original, specifically for
    /dev/sd -> /dev/ubd (for User Mode Linux).
    
    Therefore this commit changes the generator so that
    device_name_translation and parse_btrfsvol (which depends on it)
    allocate the new device name instead of overwriting it.

commit 4fc32e210647d7ff5538500615960c294047ca95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 10 13:34:58 2013 +0100

    daemon: Move all RESOLVE macros to daemon/stubs.c.
    
    These macros are pretty horrible to use, with unexpected side-effects.
    Move them exclusively into the generated code and rewrite the one
    place in the general C code which used them.
    
    There's no functional change in this code.

commit 1c7141a414a1d3c06eb4e25da78fa662ca20c917
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 10 16:47:46 2013 +0100

    tests/mountable: Better error messages.
    
    Better error messages (for diagnosis) when this test fails.  Also this
    fixes the line endings which were broken before.

commit 4905265ec6afd8ace013f5bf341321a018e04de9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 11 17:36:55 2013 +0100

    Fix --enable-valgrind-daemon so it doesn't break valgrind of the library.
    
    Using ./configure --enable-valgrind-daemon breaks valgrinding of the
    library because guestfs_close wouldn't call guestfs_shutdown in that
    case, resulting in some resources owned by the backend being leaked.
    
    After this commit, --enable-valgrind-daemon will shut down the handle
    normally.
    
    This updates commit 55e3b8711f340a2f8bdb8ee8ff99deb40b4e9108.

commit 51e9f994c241623977ef0d3514280a5f76dfd1ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 11 12:07:38 2013 +0100

    Print an error message if valgrind failure is detected in the daemon.
    
    This updates commit 55e3b8711f340a2f8bdb8ee8ff99deb40b4e9108.

commit 47afb1efe23983b10bfdfc10f3bf780fb37719c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 10 23:02:42 2013 +0100

    daemon: Remove unnecessary sysroot_path (selinux).
    
    This fixes commit 72afcf450a78b7e58f65b4a7aaf94d71cd25fca5.

commit f60a8ace470c62d884ed1da6502e60a90a32b3e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 10 21:51:27 2013 +0100

    Fix --enable-valgrind-daemon option.
    
    Don't add the "valgrind channel" to the appliance.
    
    Just dump out the valgrind.log to stderr while the daemon is running.
    
    Ensure that if valgrind tests fail in the appliance, that we don't
    exit with success in the library by checking for a canary message in
    the verbose daemon logs.
    
    This allows the option to be used routinely by developers.

commit 553dd8f3e071493138908f72597a43d6f04e7263
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 9 22:33:52 2013 +0100

    proto: Fix --enable-packet-dump mode.
    
    This was broken when we rearranged the socket code.

commit 2c95bf0fe07db0f19978fedd3990c7b2a011208c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 9 17:33:02 2013 +0100

    appliance/init: Display uname -a in debug output.
    
    Useful for debugging kernel / architecture issues.  Note this
    has no effect if debugging is disabled.

commit e454389b9b0204cc487e47bb277c8373d5e1e3da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 7 14:54:10 2013 +0100

    daemon: Close augeas, hivex, journal handles in unmount_all.
    
    This is also called implicitly from internal_autosync, ensuring that
    exit won't fail because of an open handle.
    
    libguestfs: error: internal_autosync: umount: /sysroot: umount: /sysroot: target is busy.
            (In some cases useful info about processes that use
             the device is found by lsof(8) or fuser(1))

commit 6c2953e75404f13717878202e3acf55a8312c29f
Author: Paul Mackerras <paulus@samba.org>
Date:   Wed Aug 7 13:56:26 2013 +1000

    Fix parsing of boot flag in do_part_get_bootable()
    
    The code in do_part_get_bootable() assumes that if a partition has the
    bootable flag set, then that is the only flag.  It compares the entire
    flags field with the string "boot".  However, the boot flag isn't
    always the only flag.  For instance, POWER systems typically have a
    bootable partition of type 0x41 (PPC PReP boot), which parted -m
    displays as:
    
    # parted -m -- f18.img unit b print
    BYT;
    /root/f18.img:16106127360B:file:512:512:msdos::;
    1:1048576B:5242879B:4194304B:::boot, prep;
    
    That is, the flags field contains "boot, prep", and thus libguestfs
    fails to see that this partition is bootable.  Ultimately this causes
    virt-resize to fail to set the bootable flag on the boot partition of
    the destination image, resulting in an image that won't boot.
    
    This patch fixes the problem by searching for the string "boot" within
    the flags field, instead of comparing the whole flags field.

commit 4c508b09ce3b4429e1f876bb05f94ada23323e35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 6 18:20:44 2013 +0100

    sparsify: Advertize in --machine-readable that we support --check-tmpdir option.
    
    This lets programs add the --check-tmpdir=[ignore|continue|fail]
    option to avoid interactivity.
    
    This fixes commit 7c463ac477168df5d4e4eb472ba01fa18b89c1a6.

commit 8c4ff62b306de498764a5432ca30a3b62bf47028
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 6 16:29:02 2013 +0100

    Version 1.23.14.

commit 3fa29c378be5f22f032aa03bce61f7eaf0c2120f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 6 14:43:56 2013 +0100

    Pull latest translations from Transifex.

commit 6b2c06da4731763d80308008ea16b6b7adc5077b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 6 14:34:48 2013 +0100

    Update Transifex domain name from .net -> .com.

commit ce9017ea991daf35d55327f216fb1dd6c32f1065
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 6 14:31:48 2013 +0100

    Update gnulib to latest version.

commit d2adde1e26d976649897d6e34a062ae913a23a0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 6 13:18:54 2013 +0100

    sparsify: Get free space on TMPDIR and give a warning if we estimate it is too little.

commit 52d3322e276523fedc8b731cf4802d3d138aed66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 6 12:20:31 2013 +0100

    Update TODO file.

commit f87c535c446d67aa5bde32d61992cde693be881c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 6 11:41:34 2013 +0100

    New APIs: aug-setm and aug-label.
    
    Bindings for the aug_setm and aug_label APIs in Augeas.

commit 64773386ae0f02c771b4c6bb614d4222abe7f814
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 6 11:41:08 2013 +0100

    augeas: Improve error reporting.
    
    Display all the information from the handle about errors.

commit b4000664196613a7385df9c9ca7acf26fa970143
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 5 16:50:15 2013 +0100

    launch: libvirt: Enable kvmclock.
    
    This enables stable guest clocks.

commit 671cfe2f505cec40803ef4c91fdc3444b7c4ad77
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 5 16:42:43 2013 +0100

    launch: libvirt: Enable <cpu mode=host-model>.
    
    This may still cause problems on some CPUs because of a bug
    in libvirt.  See:
    https://bugzilla.redhat.com/show_bug.cgi?id=870071

commit 15942a3fa175bf469951d7e96b40262c5e1dec68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 5 16:35:47 2013 +0100

    launch: direct: Specify -cpu host,+kvmclock.
    
    '-cpu host' makes the CPU look like the host CPU.  This is useful
    because it means the appliance can use all the host CPU's features,
    eg. for fast checksumming or MD XORing.
    
    'kvmclock' is the paravirtualized clock for qemu/KVM.  It's much more
    stable than relying on tsc or a virtualized device such as HPET, and
    clock instability is one of the problems we have encountered when
    running libguestfs on a heavily loaded machine, especially in a nested VM.
    
    Note that we require qemu >= 1.2 (and have for a while) which has long
    supported both of these options.

commit ec47a2527cd5c8dd148f0f9d107e940bc2dd192d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 5 16:35:15 2013 +0100

    launch: direct: Add drives after machine parameters.
    
    This is just code motion.  It should affect the semantics of the code,
    nor how the appliance VM is created.

commit c7fa10260782c58cbe6c5bce0f3bffc4e5585590
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 5 15:41:39 2013 +0100

    ./run: Omit timeout -k option on RHEL 6.
    
    If timeout doesn't have the -k option, don't use it.

commit 0abf92d3a852c0637d52aded28b8887596f2fd64
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 3 12:45:55 2013 +0100

    Version 1.23.13.

commit 6acbb9ad601ac28acd01dcbf7e7fec4ff33968b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 3 10:42:21 2013 +0100

    sysprep: Add "notes" field for notes on shortcomings, bugs, etc.
    
    Instead of keeping this information as comments in the source, put it
    into the virt-sysprep(1) man page.

commit e888ec18191d212d6da51682fff4277c89d24ce2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 3 10:12:42 2013 +0100

    sysprep: Various code refactorings of the operations.
    
     - Use 'op' instead of 'xxx_op' for operation table.
     - Add a 'defaults' for the operation table and remove any default
       values.
    
    This is just code motion and there is no functional change.

commit 6c45a7d10ceb75e1a831dfef46d28fb079a895e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 3 10:03:49 2013 +0100

    resize: Mark progress bar functions as "noalloc".
    
    Avoids GC overhead and turns these into simple C calls.  See:
    http://camltastic.blogspot.co.uk/2008/08/tip-calling-c-functions-directly-with.html

commit 8b369cbfc2586a4a5d38d46bca121c02baca3c3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 3 10:01:34 2013 +0100

    resize: Mark isatty function as "noalloc".
    
    This turns it into an ordinary C call without the unnecessary [in this
    case] GC frame overhead.  See:
    http://camltastic.blogspot.co.uk/2008/08/tip-calling-c-functions-directly-with.html

commit b341472aa30fef4a96e919df2420b14601687009
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 3 09:20:41 2013 +0100

    FAQ: Tips about using direct backend and fixed appliance on Fedora/RHEL.

commit 11a0161186371cca818fb76c69acb61491048e29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 3 09:19:57 2013 +0100

    FAQ: Common problem with Debian is not running update-guestfs-appliance.

commit 1d44db238c0d68c872c23eecc0da6958ca68dfa5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 2 15:00:04 2013 +0100

    sysprep: Allow root and non-root passwords to be set.
    
    This adds a virt-sysprep 'password' operation which adds the
    following command line options:
    
      --root-password     Set the guest's root password.
      --password          Set any guest password.

commit dde7b7a9c012f51cc1d11cd89555b85638faf5ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 2 15:16:10 2013 +0100

    sysprep: Disable fs-uuids operation by default.
    
    Disable this operation because it is more likely than not to break
    Linux guests.
    
    To fix this properly will involve finding all the places in the guest
    where the UUIDs are used to locate and mount filesystems,
    eg. /etc/fstab and possibly initramfs.
    
    This updates commit 8965368eb89532ac1613fffb0a3a661f005bae81.

commit e554db5a5f3ebd67861f9d0c9e3114eb2ace28c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 31 20:43:43 2013 +0100

    journal: Fix incorrect printf format specifier for 32-bit.
    
    journal.c: In function 'do_journal_skip':
    journal.c:134:5: error: format '%zd' expects argument of type 'signed size_t', but argument 3 has type 'int64_t' [-Werror=format=]
         reply_with_perror_errno (-r, "failed to skip %zd journal entries", skip);
         ^
    
    This fixes commit 5cb7f294f6a5a8b4a68e940c30ca9af0fe0741d5.

commit 67e407ad6d424eaa96fc61fa78c5218ff3829e5a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 31 20:42:06 2013 +0100

    arm: Avoid cast-align warning.
    
    Note the 64-bit int field really isn't aligned.  We hope that the ARM
    kernel this is running on will do the appropriate fix ups.

commit 5bac846ce301c622d5eb8a438b9075a72fe5d22c
Author: Nicholas Strugnell <nstrug@redhat.com>
Date:   Wed Jul 31 16:24:20 2013 +0100

    sysprep: rhn_systemid: delete osad-auth.conf file in RHN configuration

commit 4afa6db67bcb81d9929f93a59e339e9f2693cc84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 18:16:30 2013 +0100

    Version 1.23.12.

commit a1bbe56b46974be4ed5fe9eb69692d317a830e00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 16:16:55 2013 +0100

    tests: fish: Add valgrind testing to various existing tests.
    
    This involves running ./guestfish under $VG (== valgrind + options,
    defined only when check-valgrind is run).

commit 0cf28971f5ece98ada6e691382a3bae2bb0749c1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 16:15:04 2013 +0100

    fish: Add a test for -a URI options.

commit cf742fff9ade2ad300b3b815a9a1a066358d97d0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 16:13:24 2013 +0100

    fish: Fix guestfish so it can recognize sheepdog://... as a valid URI.
    
    Because "sheepdog" is 8 characters, it wasn't recognized before.

commit 03ecefff6ddb801c373b8bb5cbd42173868b16a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 14:49:55 2013 +0100

    sysprep: Allow -a URI options to be used (RHBZ#968875).
    
    This allows you to sysprep a remote guest by doing eg:
    
      virt-sysprep -a ssh://remote.example.com/disk.img

commit 1f8b06bbd995aa3b05ff5ea69ca40ed6a0c732c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 14:34:23 2013 +0100

    resize: Add bindings for the guestfish -a URI parsing mini-library.
    
    This allows -a options to be parsed from OCaml programs, reusing
    the same code that is being used by C.

commit 6fd5d7f82664903a64df0075e2a47f93c8ede804
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 12:43:33 2013 +0100

    fish: Split off URI handling (for -a argument) from general options parsing.
    
    This is so we will be able to reuse the same code in the OCaml tools.
    
    This is just code motion.

commit 5e7bd3e6c55f4412de56a20d77f0111530eb69d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 12:22:08 2013 +0100

    fish: options: Fix optarg -> arg.
    
    Don't read the global variable optarg.  Read arg instead.
    (In all cases they are the same, so this bug made no difference).

commit d67d2863d737072d2096ed4017b7e72b51097e9e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 12:17:22 2013 +0100

    fish: Don't store xmlURIPtr directly in the drive struct.
    
    Original drv_uri fields:
    
          xmlURIPtr uri;        /* URI */
          char *socket;         /* ?socket parameter from URI. */
          const char *format;   /* format (NULL == autodetect) */
    
    New drv_uri fields:
    
          char *path;           /* disk path */
          char *protocol;       /* protocol (eg. "nbd") */
          char **server;        /* server(s) - can be NULL */
          char *username;       /* username - can be NULL */
          const char *format;   /* format (NULL == autodetect) */
          const char *orig_uri; /* original URI (for error messages etc.) */
    
    This is just code motion.

commit 98b610a6540faaf80bc2d0df2760f6259a5d5ab5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 12:16:38 2013 +0100

    internal: Add CLEANUP_XMLFREEURI (cleanup function for xmlURIPtr).

commit 3c57a6cfbc36c3df127cac6cc1e0c2a9bd1baf5e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 30 11:44:47 2013 +0100

    resize: Move isatty_stdout function to separate module (TTY.isatty_stdout).
    
    It was jammed into the Progress module just for convenience.

commit afd999d25781a4c736dae91b52ec0276c481cde7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 14:37:50 2013 +0100

    daemon: cap-get-file: Return empty string if no capability on file (RHBZ#989356).
    
    Return an empty string (instead of an error) if no capabilities are
    set on a file, and document that in the API.

commit cc38d1edb9cfdded154edea02f7b9a6c18ebbf7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 13:52:16 2013 +0100

    resize: Link to information about dracut-modules-growroot.

commit 9b9e945fc3826b00c2f530e29fe53581ec2a1fd2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 11:58:48 2013 +0100

    tests/mount-local: Fix test of parallel mount-local.
    
    This fixes commit 14fabcd88e1500368affad86b3cf221f3884a739.
    
    Bug found by Kashyap Chamarthy.

commit edcc7e5e631b6e35ac230557b3225f22deb249fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 29 08:58:41 2013 +0100

    Version 1.23.11.

commit 80fa4b9fc1bc85264affdfe3e0835bccdb5c504d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 28 18:09:42 2013 +0100

    tests: Add tests for the new journal APIs (RHBZ#988100).
    
    This relies on the test data from
    commit b502197ec4f201fa79255243fa09343cf3550ab5.

commit c72e73f9f1d20c87bf2da2be8935302df144b901
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 27 15:28:50 2013 +0100

    New APIs: Add systemd journal support (RHBZ#988100).
    
    This adds simple support for reading the journal files from guests
    that use the systemd journal.
    
    The new APIs are:
    
      journal-open
      journal-close
      journal-next
      journal-skip
      journal-get
      journal-get-data-threshold
      journal-set-data-threshold
      internal-journal-get
    
    More complex journal support (eg. for seeking within the journal,
    support for cursors) could be added later.

commit 0e7352a78cf4fb12097a1e89b6d71fd23d07034e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 27 17:58:50 2013 +0100

    tests/guests: Add some systemd journal data to the Fedora test images.
    
    The journal data blob comes from a real Fedora 20 (x86-64) machine.

commit f36e337e48bb6272a3fe457b8526c2b95e6af9c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 27 16:34:54 2013 +0100

    src/file.c: Be sure to call guestfs___lazy_make_tmpdir before using g->tmpdir.
    
    Although g->tmpdir is always set after launch, and none of these calls
    should be used before launch, it's always possible that a caller would
    use one of these APIs before launching the handle.
    
    If guestfs___lazy_make_tmpdir is not called, then g->tmpdir is NULL,
    and the constructed filename would look like "(null)/...".
    
    In fact it's possible to observe this error (although it seems to have
    no especially bad effects):
    
      $ strace guestfish ls / |& fgrep '(null)'
      unlink("(null)/ls1")     = -1 ENOENT (No such file or directory)

commit 2bbfb0eb9614ffab567c982ffb49cf4a3f3c3d54
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 27 15:56:13 2013 +0100

    generator: Fix the case where a daemon function has one FileIn/FileOut parameter and no other parameters.
    
    The FileIn/FileOut parameters are not passed through to the daemon.
    Previously we generated incorrect RPC code (an empty 'struct
    guestfs_<fn>_args') because we didn't account for these FileIn/FileOut
    parameters correctly.

commit 9bb753f79868947db014053253079a8a94c80495
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 27 15:48:33 2013 +0100

    generator: Fix whitespace.

commit b0d036a1c0b18f4cca6ce4159f3d55ddcd33f2c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 26 15:42:36 2013 +0100

    sysprep: On RHEL, firstboot script should be called S99... not 99.
    
    Thanks: Nicholas Strugnell

commit 17c3fa94995595a44c0515cd0307b096eae85030
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 23 12:23:51 2013 +0100

    Version 1.23.10.

commit 7ef33083cf3d5d1b0502136ef7e5b7cec79c26bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 19:36:49 2013 +0100

    tests: Use unique or temporary names for temporary files.
    
    Review every test(!) to ensure that it:
    
     - Doesn't use a generic name (eg. "test1.img", "test.out") for any
       temporary file it needs.
    
     - Does instead use a unique name or a temporary name (eg. a name like
       "name-of-the-test.img", or a scratch disk).
    
     - Does not use 'rm -f' to clean up its temporary files (so we can
       detect errors if the wrong temporary file is created or removed).
    
    This allows tests to be run in parallel, so they don't stomp on each
    other's temporary files.

commit 446944d5c39930cb7f98bac1b812f9be5e711072
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 23 09:42:45 2013 +0100

    fish: For -N option, add drive with explicit format = "raw".
    
    Although autodetecting is safe (we always have just created a drive),
    it saves a little bit of time if we don't have to run qemu-img to
    detect the disk format with the libvirt backend.
    
    Note that for prepared drives the format is always raw and we don't
    anticipate creating drives in other formats.

commit 0b01bcec46609b85be1a8d540b6db07642f42060
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 22 14:08:20 2013 +0100

    fish: Allow -N filename=type to use 'filename' instead of 'test1.img' (etc.)
    
    So:
    
      guestfish -N fs
    
    is equivalent to:
    
      guestfish -N test1.img=fs

commit e60dc69f597139bec747e9f3909d8daf58e17cf0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 22 15:24:44 2013 +0100

    fish: Split up long line in --help output.

commit d2b12a223ce851efbe0ca24c3864152bf2b1a893
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 22 13:58:49 2013 +0100

    fish: Clarify documentation.
    
    It's not "the guest" which is launched, but the libguestfs appliance.

commit cb02ac9b184a0f7b9240c6981798ff45801362fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 22 13:28:28 2013 +0100

    sysprep: Add new fs-uuids operation.
    
    This creates new random UUIDs for all filesystems in a guest.

commit 9d48cc7d67d43f6424dd44001c093a9561dc28f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 22 13:13:18 2013 +0100

    docs: Document labels and UUIDs in the API overview section.

commit 39f5b6d1d5506ae803e9aa5b0e0323ce0f884792
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 22 12:41:47 2013 +0100

    New API: Implement set-uuid for ext2/3/4 and XFS (RHBZ#986877).
    
    Also includes tests.

commit 6a61583a3c93820eae1ce6eac4d66ee1bbef9e6a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 22 11:29:42 2013 +0100

    daemon: Implement set-label for XFS and fix it for btrfs (RHBZ#986875).
    
    Implement 'set-label' for XFS filesystems.
    
    Fix the call for btrfs.  Previous
    commit d5817537fa6c51a7f851ecc5e4e63e60609e0c03 added some bogus
    documentation implying this call would work for btrfs, but it did
    not.
    
    Add tests.

commit 30202588bef1dac653ec0e88b8555a39bc91b991
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 19:32:35 2013 +0100

    tools: 'test.img' is no longer used.
    
    This probably used to be a temporary file used for testing.

commit 7786906b9bfc32e19e82c123cab86350186bca3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 16:42:53 2013 +0100

    tests: Use new guestfs_add_drive_scratch API where possible in tests.
    
    Replaces code such as:
    
      fd = open "test1.img"
      ftruncate fd, size
      close fd
      g.add_drive "test1.img"
    
    with the shorter and simpler:
    
      g.add_drive_scratch size

commit 0ef5cf6bd8396f22da15227b717c957248d1d1a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 15:57:32 2013 +0100

    fish: Link to the new 'scratch' command from the old 'sparse' command.

commit 0af15ef06f69b50beb2c68d4456320938d4b2233
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 15:57:11 2013 +0100

    tests/lvm: Remove some commented out debugging code.

commit ad14b3b4f0af567f3fcc789377fdcb48ff96ee87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 15:05:54 2013 +0100

    tests/c-api: Use guestfs_add_drive_scratch API to create scratch drives.
    
    Replaces the old custom code for making and deleting the drives.

commit cfcbe02aea66675c40ce40b3f73668b3bf2a6ae6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 14:09:56 2013 +0100

    New API: add-drive-scratch.
    
    This adds a temporary scratch drive to the handle.

commit 9eecaa0edb9f4508e346f494f6e42e867c787f86
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 14:25:46 2013 +0100

    Revert "tests: Add a regression test for all disk_* info commands (RHBZ#981663)."
    
    This reverts commit 2311fb0632a64cfa2bab8bf65c82ffaa042d619e.
    
    This is no longer needed, since now the disk_* info functions
    are being properly tested by the C API tests.

commit d6e716ac610dff34531fe12421ab65dd131107a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 14:23:50 2013 +0100

    tests/c-api: Remove 'GETKEY:' hack since it's no longer used anywhere.

commit 6626509c654df29fd2211b10a148685c19d89064
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 14:22:58 2013 +0100

    tests: Better testing of guestfs_disk_* functions using blank disks from tests/data directory.

commit f1170d11169b7b47577244c8714f9a0621cda5c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 14:22:14 2013 +0100

    tests/data: Add some blank disks in various sizes and formats for testing.

commit e089554751a00d5af569bae0fb36f733fe96dc0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 13:19:58 2013 +0100

    ocaml: Rewrite TESTS rule to be compatible with automake 1.13 parallel-tests.
    
    Because of this bug in automake:
    
      https://lists.gnu.org/archive/html/bug-automake/2013-01/threads.html#00103
    
    this requires that we duplicate the lists of bytecode (bc) and native
    code (opt) tests because we cannot use ordinary GNU make macros to
    construct these lists.

commit ab91936c3b554e6d895d50f26e57c8435457fb11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 20 16:30:45 2013 +0100

    FAQ: Add section about different packaging strategies for libguestfs.

commit f91a418e0ed2eb84494d9613cb81bf663ef44cf3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 12:00:03 2013 +0100

    Update API support.

commit 62c2c4747a9c3a1b6d30014277ba9b9bef75648f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 19 10:06:31 2013 +0100

    Version 1.23.9.

commit 5c259fc8b14ce6925106f603553b7a1f7b62cfd2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 18 14:36:25 2013 +0100

    mkfs: Use -b size=<size> for xfs (RHBZ#981715).

commit 1c6077363448803ad869b11212d5f23de52104bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 18 13:59:09 2013 +0100

    tests: Add a regression test for all disk_* info commands (RHBZ#981663).

commit ef245fb414bc1f26fe01eae60b0286f363fe8e40
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 18 13:07:13 2013 +0100

    info: Fix double-call to error function when qemu-img info command fails (RHBZ#981663).
    
    Previously if the 'qemu-img info --output json' command failed, then
    the stdout callback would be called first with a zero-length buffer.
    Since a zero-length buffer cannot be valid JSON (in this context)
    don't produce a separate error message.
    
    However do catch the case when qemu-img info might produce no output
    and no error (if that were to happen -- it does not happen at the
    moment).

commit 59383bbe3e48eab48821cb7cb706f65182546287
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 18 13:04:55 2013 +0100

    info: disk-format et al: Fix error message when no file exists (RHBZ#981663).
    
    $ guestfish disk-format /etc/nosuchfile
    
    Instead of this obscure double error message:
    
      libguestfs: error: qemu-img info: JSON parse error: parse error: premature EOF
                           (right here) ------^
      libguestfs: error: qemu-img info: /etc/nosuchfile: qemu-img info exited with error status 1.
      To see full error messages you may need to enable debugging.
      See http://libguestfs.org/guestfs-faq.1.html#debugging-libguestfs
    
    You will now see this simpler error:
    
      libguestfs: error: disk info: /etc/nosuchfile: No such file or directory
    
    Thanks: Bo Fan.

commit 2dde6b83dc82eee2c01db53992c0dceb606b9941
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 18 13:57:39 2013 +0100

    cmd: Allow callers to override file-closing behaviour after fork.
    
    This allows us to send file descriptors directly to child processes,
    eg. using /dev/fd/<N>.

commit 53598d46917d10b9e54684c1e730990a61eff991
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 18 10:03:13 2013 +0100

    acls: Improve documentation for acl_set_file (RHBZ#985269).
    
    Thanks: Bo Fan.

commit 85a5a0ae16847ce2c87201d7b06db0fb1ab8af7c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 17 16:57:58 2013 +0100

    library: Fix a few direct calls to perror(3).
    
    Mainly in the FUSE code, left over from when this code lived in the
    standalone guestmount program.

commit 2f08b5dc671a03ffbdb02e39fd0b3f5b0bd31b7e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 17 12:52:41 2013 +0100

    tests: Improve the testing of acl_set_file function.
    
    See also: https://bugzilla.redhat.com/show_bug.cgi?id=985269

commit 0cbfd0d2abe6b37a9ace3beb2e2bfa4177b037ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 11 21:05:56 2013 +0100

    ./run: Increase default timeout from 1h -> 4h.
    
    1 hour was not long enough for the C API tests when run in Koji.
    
    This update commit caab9f1e6f7ac0d8d5209c31854d640b807519ce.

commit 9242c4505d919ca06d927aa0e68e13c51a5e38a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 11 19:09:05 2013 +0100

    launch: appliance: Fix a double-free if kernel linking fails (RHBZ#983218).
    
    This also simplifies the code which takes the building_lock around
    guestfs___build_appliance.
    
    Thanks Attila Fazekas for the detailed bug report.

commit 46d30dec3bafbb6f919f56f9df41e5463f149f57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 11 12:58:45 2013 +0100

    ./run: Timeout tests after 1 hour.
    
    No single test should run longer than 1 hour even on the slowest of
    hardware.  We are having a problem in Koji where a test hangs and then
    we end up losing the output completely, so a timeout + print the log
    to that point is much better.

commit 3bc87ff4548b0eac1203f5a968db1df28d58d9d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 11 12:53:28 2013 +0100

    ./run: Add a better comment describing --test mode.
    
    This is just code motion, there is no functional change.

commit 6fc3fc71ea2b90518f8ece939df73e69f9d448cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 9 14:32:14 2013 +0100

    Remove more temporary ($builddir/tmp) files when doing 'make clean'.

commit e8cda57003b66a0c1b3299769ed10d1e5d20b505
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 9 13:59:52 2013 +0100

    golang: Fix it so it builds if libguestfs is not installed.
    
    It was using the installed copy of libguestfs not the local copy.
    
    We can't encode the paths in guestfs.go, since this source file gets
    copied into the install directory where those paths would not make
    sense.  Instead we have to use CGO_CFLAGS and CGO_LDFLAGS to
    communicate the right flags to go when doing the local build and test.

commit a6cbd9239e4d6012ac0f80f9bbadd7ebdf33bd51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 9 11:59:04 2013 +0100

    Version 1.23.8.

commit 25152210b12af7cc5141219b658b752773b4880c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 6 21:05:13 2013 +0100

    tests: Add test for aug_ls.

commit e78a779a55ecf9662efddd6593d8d2026b092542
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 6 20:46:19 2013 +0100

    tests: Test aug_insert, aug_clear and aug_save.

commit dea3a3b6a00bc7ebaa740f8910ffd02f01d65edf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 6 20:04:53 2013 +0100

    tests: Test aug_set.

commit 799e67ab500168013c5c60747dd2175bc16cb1f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 6 19:57:43 2013 +0100

    tests: Test result of aug_get properly.
    
    Don't just check aug_get runs, check the resulting string is correct.

commit fe553e68b618f68d6b99f751ec93ee73e7638536
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 6 19:24:40 2013 +0100

    tests: c-api: Add a cleanup function for tests.
    
    By specifying a cleanup function we can ensure that Augeas and hivex
    functions can be tested.
    
    There is no functional change here, verified by diffing the generated
    file tests/c-api/tests.c before and after.

commit 5e6e2437a79e8205bafa4087259553412cc7f209
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 6 20:41:34 2013 +0100

    tests: Fix mix up of actual/expected in error messages.

commit 97352fc7dc8a181c8d587f6756f3a0ee9ca943a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 6 15:08:13 2013 +0100

    FAQ: Fix typo.

commit 44d11309ac90770b5b10996d8f78dca62e1da2c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 6 15:07:58 2013 +0100

    FAQ: Explain qemu-nbd & libguestfs better.

commit b2cfae017119abc8f36bd86c64f9c9ef1c2fd9dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 5 15:07:34 2013 +0100

    tests: Add basic Augeas tests.

commit 3c7bd794c8d942f7c818725d21dcc9c4861e1fab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 5 14:58:26 2013 +0100

    hivex: Add some simple tests of the hivex_* APIs.
    
    These are by no means comprehensive, but cover the basics.
    
    The 'minimal' hive comes from hivex.

commit ffd2d57473d40083c19ef189068c67a1f589ea1f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 5 14:25:16 2013 +0100

    daemon: hivex: Check that hivex_commit is passed an absolute path (RHBZ#981683).
    
    You will now get an error like:
    
    libguestfs: error: hivex_commit: do_hivex_commit: path must start with a / character

commit 85a0e894aa8982b9e2cbccddde7cdb2bbd4f8c13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 5 13:59:21 2013 +0100

    filesystem-available: Clarify documentation for this test.
    
    See:
    https://bugzilla.redhat.com/show_bug.cgi?id=980358#c1
    
    Thanks Bo Fan.

commit a9ccf5acae2e27f55fa45c489389eef5cc28e4a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 4 14:42:26 2013 +0100

    golang: Add examples and guestfs-golang(3) man page.

commit 98ef50f4385cb3882df7cc1c0a994363ecbde70d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 4 15:27:12 2013 +0100

    golang: Don't try to free the result of guestfs_last_error.
    
    The return value is a constant string, part of the handle, and
    it must not be freed by the golang code.

commit 05ee975a807aa81e931a2d7716a8eb04d4c6d4ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 4 14:42:45 2013 +0100

    golang: tests: Call or defer g.Close().

commit c4e84677c419ca9711d25a49443bb57978a8cd0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 4 13:50:32 2013 +0100

    golang: Add bindtests.

commit 0e30d9ab18b821e9e0d2ee2fcbaafd4c9d3a17ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 4 14:00:56 2013 +0100

    golang: Map OptString to *string, not string (since string is not nullable).

commit ab114238d55ae76ac0b448702bf6cf20f11319ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 4 13:49:01 2013 +0100

    golang: Capitalize fields in OptArgs* structs.
    
    Otherwise those fields aren't accessible outside the package.  We
    didn't catch this because all tests run in the same package.

commit 48c39aa01c2d1dedc754cf268589199804bc2a28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 4 13:12:00 2013 +0100

    golang: If 'go run' command fails, log the error message in config.log.

commit d75a8e64f9be1b1fa2dd7e3b06bd3d0677429a81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 4 13:11:45 2013 +0100

    java: Fix typo in comment.

commit dda46c94dc36a08b03552f53c149dd92f7b62bda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 3 12:39:16 2013 +0100

    Version 1.23.7.

commit 81bccce19449cf385155d6f950490e5b88c807b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 1 12:45:09 2013 +0100

    Add Go (language) bindings.

commit d20ea9bf06fb09fa6c1659f29884c5c16d14e66e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 1 15:27:06 2013 +0100

    java: Fix comment in test script.

commit eeb5798730579648baecb156a3facd47e2b64250
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 28 12:57:07 2013 +0100

    configure: python: RHEL 6 doesn't have sysconfig, use distutils.sysconfig instead.
    
    This works on recent Python as well.

commit 66c43bbf3ba52d3940746687e0d7c465f3adb3ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 26 19:02:16 2013 +0100

    Version 1.23.6.

commit ad02a5d77b4463428303d8429637ecbe7602fff5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 26 14:37:26 2013 +0100

    daemon: Verify ext2/3/4 filesystem name before passing to mke2fs (RHBZ#978302).
    
    Add a utility function (fstype_is_extfs) to match ext2/3/4 filesystem
    names.  This is used in a couple of places.
    
    When passing the mke2fs -t parameter, verify that the request is for
    an ext2/3/4 filesystem.  Previously we did not check this, and neither
    did mke2fs when the -F flag was also used.

commit 5a758d5b869febb6fff800327d53d4443cff32f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 24 21:06:58 2013 +0100

    sysprep: New operation to remove RPM database files.
    
    See:
    https://lists.fedoraproject.org/pipermail/devel/2013-June/184389.html

commit f21840f84d2374c2465e0ffea8ba37d51a99262b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 20 09:13:41 2013 +0100

    virt-resize: Add notes about Windows and disk consistency (RHBZ#975753).
    
    Also group the Windows-related notes together.

commit d4bb5d0f725f1afb1fb81bc08292c970f4053e39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 19 19:03:21 2013 +0100

    virt-resize: Take into account large start offset of the first partition when calculating overhead (RHBZ#974904).
    
    Since we don't usually move the first partition, if the first
    partition has an unusually large offset from the start of the disk,
    then the unpartitioned space in front of that partition counts as
    partitioning overhead.  However the previous surplus calculation was
    not taking that into account.
    
    This was a problem for certain Ubuntu images which are partitioned
    with an 8 MB gap before the first partition.
    
    Thanks: David Hart.

commit 4c1a1195651fa811bf37c321b9733fca25fad4d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 19 19:02:48 2013 +0100

    virt-resize: Add some more debugging messages.
    
    These are only printed when using the --debug flag and are
    helpful for diagnosing problems.

commit e4e08182dfd51cc00b154b8b3018bf38ad942ee5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 19 19:02:15 2013 +0100

    virt-resize: Fix minor typo in error message.

commit a414548155833c7db6fa4bace046deb9124e0301
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 19 13:26:18 2013 +0100

    tests: Add a regression test for iface launch hangs (RHBZ#975797).

commit cdf4f552acc077158b694393524b25b450f77125
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 19 14:40:51 2013 +0100

    launch: direct: Calculate appliance root correctly when iface drives are added (RHBZ#975797).
    
    This also changes guestfs___appliance_command_line to allow
    appliance_dev parameter to be NULL.  Previously a bogus root=
    parameter could be passed.

commit fb01e1607b998c85f00f85f8d75148e1aa687d02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 19 13:21:10 2013 +0100

    tests/regressions: Remove duplicate test skip code.

commit f46eadcc0c3aefcad2cd0d47fd344b806d8b088e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 18 17:43:26 2013 +0100

    Version 1.23.5.

commit ba91e0a07f29a3bf436d6afc81f9040dfee29103
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 18 19:31:21 2013 +0100

    tests: inspection: Add example and test XML to EXTRA_DIST.
    
    This fixes commit a86cb71fcadbed3881e593b6de9706c03ca57149.

commit e8d05a0c2457bafc592c46144a94ad349d8f964d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 18 18:00:24 2013 +0100

    tests: inspection: Don't complain because NTFS UUID changes between test runs.
    
    This fixes commit a86cb71fcadbed3881e593b6de9706c03ca57149.

commit 69d2eb1d9ee5f6ba770636a2356275dc3cfb7339
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 18 17:11:21 2013 +0100

    inspector: Add a real test of inspection.
    
    Verify that the output from inspection doesn't change, in order to
    catch regressions such as RHBZ#975412.

commit f94f1c606dd8303e51dbeafb7a7a5d226ee1dd53
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 18 17:01:53 2013 +0100

    inspection: Replace phony XML with virt-inspector output from real guests.
    
    Also add an example from a real RHEL 6 guest.
    
    Remove rules for building these XML files which are no longer
    relevant.  These files were built by running virt-inspector on real
    guests, and then edited to remove excessive <application> sections.

commit c326937af099ee089ae9b3e793f6a20c7b0226ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 18 15:13:02 2013 +0100

    inspection: Fix hostname inspection because of faulty Augeas path expression (RHBZ#975412).

commit 6e538eeb2d7685ac0984218336bd3f8f8b957412
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 18 14:39:55 2013 +0100

    Augeas >= 1.0.0 is now required.

commit 85bc35d0e4d1cf9ee8086f1256b1e56480563a65
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 18 15:12:02 2013 +0100

    utils: Add utility functions guestfs___concat_strings and guestfs__join_strings.
    
    These concatenate strings or join them with a separator in between.

commit a7954e16696862b17e7f2026bcd014448867af7e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 14 13:20:26 2013 +0100

    Version 1.23.4.

commit 0f3f5e4b038230b3eed125c717e2eb6e69b7b5ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 14 11:03:24 2013 +0100

    inspection: Fix inspection of Fedora guests (RHBZ#974489).
    
    Commit e71b2c11f59b3f8ae0c4b31c4ab5b0d1bfcdf181 broke inspection of
    Fedora guests because guestfs_is_file returns false for
    /etc/redhat-release (it's a symlink to a file, not a file).
    
    We fix this by using the new followsymlinks flag added in the
    previous commit.  Thus guestfs_is_file becomes
    guestfs_is_file_opts (g, filename, GUESTFS_IS_FILE_OPTS_FOLLOWSYMLINKS, 1, -1)
    which checks if it's a file or a symlink to a file.
    
    This fixes commit e71b2c11f59b3f8ae0c4b31c4ab5b0d1bfcdf181.

commit 6a023e65c9d7c04c132fc77c3aafc54b184b0e88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 14 10:53:17 2013 +0100

    Add followsymlinks flag to is-file, is-dir, is-blockdev, is-chardev, is-fifo and is-socket APIs.
    
    This adds an extra optional boolean 'followsymlinks' flag to those 6
    is-* APIs.  If the flag is true, then symlinks are followed, ie. we
    use stat instead of lstat in the test.
    
    For the rationale behind this change, see:
    https://bugzilla.redhat.com/show_bug.cgi?id=974489

commit e56ed9de03dff2fcabdaec36f12ffbd4da2d91a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 11 13:09:09 2013 +0100

    FAQ: Developer questions about committing and forking.

commit 162794c39d380e437814d4319d2b098fef7e1812
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 11 13:08:49 2013 +0100

    FAQ: Emphasize that we don't accept github pull requests.

commit 8c99f55b3b97c75204689f0589ea73d467c2b7e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 11 12:55:26 2013 +0100

    FAQ: Put B<> bold section around "Note"s in the text.

commit 7ac2818ba125c8aad688112af046565297c919fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 11 12:55:12 2013 +0100

    FAQ: RHEL 6.5 will fix the buildnet problem.

commit 770c2b9618aaad7d2b143d85a1d2fbef96cd26cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 11 12:54:29 2013 +0100

    FAQ: Indent Ubuntu releases in list.

commit c09059755f8611708d50c2d5aaf576f94241be69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 11 12:53:25 2013 +0100

    FAQ: RHEL 7 is based on libguestfs 1.22.

commit 406550d4fea00ff5519f9a7456dc1176702e7739
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 11 12:53:08 2013 +0100

    FAQ: Add link to RHEL 6.5 preview repository.

commit 133ebbbb106969c64180fd335e8a9a50d8ac205d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 10 19:33:53 2013 +0100

    Version 1.23.3.

commit 481e654e9ac73e887870e509e1da16fe5ae747a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 10 18:09:43 2013 +0100

    build: Fix 'make distclean' (again).
    
    So it doesn't break after the generator has been deleted by
    a previous distclean rule.

commit 0c8204ef9ecc54449d316fc8bb5ad46880ad639c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 10 16:08:05 2013 +0100

    txz-out: Fix this API to produce xz files again (RHBZ#972775).
    
    Commit 864ef706a84c7c87a62f776d4b2e82a6f959ae14 (in Aug 2012) broke
    the deprecated txz-out API.  Because of a thinko during this commit,
    instead of producing xz files it produces bzip2 files.
    
    Fix this API again.
    
    Thanks: Bo Fan / Red Hat QA team.

commit bdc81f30687eb3265ecdc1c41f0441c691f8fc10
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jun 7 12:18:51 2013 +0100

    inspect: Fix bogus warning for partitions without /boot.ini
    
    Fix a bogus warning introduced by
    5abb196de869cd27a6fa2377d79b9a267120f48e. If a non-windows partition
    hasn't been detected as something else and falls through to windows
    detection, inspection would display a bogus warning about missing
    /boot.ini.
    
    RWMJ: Test if guestfs_is_file > 0, in case it returns an error.

commit 6fb8065a2f53412814aca39b12546ba2dce80905
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 5 17:29:43 2013 +0100

    inspection: Reformat is_systemroot declaration.
    
    Just code motion.

commit 745dcbd9da6d9b4e10fb85c86202da137997cd7d
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jun 5 16:56:03 2013 +0100

    inspect: Partial support for non-standard windows system root
    
    Support arbitrary windows system root for pre-vista systems where
    boot.ini is on the same partition as the system root.

commit 96d0e7ea0fcdd6b7a9f148d10c930e2dcd0512bf
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jun 5 16:56:02 2013 +0100

    inspect: Add internal match6 function

commit 61691842a262cdcc0b794c48c28c1b0ac4ef024f
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jun 5 16:56:01 2013 +0100

    inspection: Refactor windows systemroot detection to allow re-use
    
    This change refactors guestfs___has_windows_systemroot to
    guestfs___get_windows_systemroot. The new function returns a
    dynamically allocated char * which must be freed.
    
    The new function is no less efficient than before, as it returns the
    result of guestfs___case_sensitive_path_silently, which is required
    anyway. The new code is slightly more efficient than before, as it
    re-uses the result of this testing in guestfs___check_windows_root
    rather than running it again.

commit 3336f090ed2d62ac7ced8ce98fc45a8b8875710b
Author: Olaf Hering <olaf@aepfle.de>
Date:   Tue Jun 4 16:39:12 2013 +0200

    Set DISTRO to SUSE if /etc/SuSE-release exists
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit dfbdc043602be823ee7804b74458aef1f3cfad2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 4 12:06:29 2013 +0100

    ocaml: Build dependencies for tests too.

commit f8c8ca65b0e1995f598acd5693fcc1bc644db28c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 4 11:52:18 2013 +0100

    build: Add common-rules.mk, common rules for all Makefiles.
    
    This file is mainly a central place to:
    
     - include localenv if it exists, and
    
     - define the RHEL 5 backwards compatibility macros, instead of
       spreading them over every other file.

commit 5e5e1d19338cd9b26f503be91dd722d26e9634b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 4 11:33:27 2013 +0100

    build: Don't include subdir-rules.mk in top level Makefile.am.
    
    Also there are no generated files at the top level, so no need to
    mention $(generator_built) in this file.

commit 5b2c4850feb898deef5cc5019ac2ae599c0fcbff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 4 11:30:09 2013 +0100

    Quote ./configure --help output (options) properly.

commit 6b5f622c2429879b1f37388c4fd1d41ffceb495e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 3 23:00:21 2013 +0100

    build: Simplify and speed up expression that generates po/POTFILES.
    
    This has to run on every build, so:
    
    - Use two grep commands instead of lots.
    
    - Remove unnecessary use of sed.
    
    - Remove some obsolete directories that haven't existed for a long time.

commit 4e40428846807802704624123a01b68a03d13075
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 3 22:47:03 2013 +0100

    generator: Don't always recurse into the generator directory.
    
    Previously, every subdirectory that contained generated files would
    cause a recursion into the ../generator directory.  This was slow and
    unnecessary.  Only recurse if the generator actually needs to be
    rerun.
    
    Note this changes the semantics slightly: For example if you added a
    new action and just ran `make -C ocaml' then previously the generator
    would be rerun, but now it would not.  However I'm not convinced the
    previous semantics were that useful, particularly considering that
    with this change a simple `make' is much faster.

commit fe2aa37bd59ef858f9ed6b9666bb982abca0eb0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 3 22:37:51 2013 +0100

    ocamldoc: Depend directly on guestfs.mli, guestfs.ml files, not wildcards.

commit 6f5b9d906f92f5492befbb36b9fdd74e1d939327
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Jun 4 00:31:57 2013 +0200

    python: Build extension with PEP-3149 compliant suffix if defined.

commit 9f5c68cf8cdc92f9420a70183077cdcbf9a6fb23
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Wed May 29 01:00:25 2013 +0200

    perl: Use symlink hack from hivex

commit 8f6cb692abf9b966e75fc48395a3464a9aafac71
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Wed May 29 00:58:17 2013 +0200

    Revert "perl: Fix build and test to work with separated builds."
    
    This reverts commit 4ea016dae96ed4fc3ca6d057f17fde9697f0e627.

commit eeb2b9ef41566bc0fa73b9c898e5f0974c6cb71e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 3 13:25:47 2013 +0100

    Version 1.23.2.

commit fad4c1b24fc6baa065f468fdf307e3163c3d57be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 3 11:50:11 2013 +0100

    docs: Updated release versions which fix CVE-2013-2124.

commit c25781145a4cf7b9f461ed656a752cb12acfa7e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 31 14:14:19 2013 +0100

    inspection: Add a fuzz-test of inspection.

commit 1d0003b64774c382152d1d6147fa8da87fc2affe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 2 13:08:08 2013 +0100

    perl: Add rules + environment variables so Perl code can be valgrinded.

commit 451cdefbde2a5f5dee14a5df8df5fb8ad2d4740f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 31 22:39:16 2013 +0100

    inspection: Use guestfs_is_{dir,file} in preference to guestfs_exists.
    
    Where possible, using this is more accurate, and it helps when
    trying to do fuzz testing.

commit 9ff6c16d2f493e9b54e669cc1a7525cda9cbb6ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 31 19:42:07 2013 +0100

    events: Avoid event handler limit if program allocates and deallocates handlers.

commit a6c5ad5208b1b0ae42268ad1c3b92b207d36e6f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 31 14:36:08 2013 +0100

    New API: remount: Allow rw flag to be adjusted on mounted filesystem.

commit ad5ffce172346c21d3e39746ed590aadfcbdc2b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 2 18:52:44 2013 +0100

    proto: Fix for rare FileIn hangs. (RHBZ#969845).
    
    Yet another protocol bug!
    
    If the daemon cancels, then the library should send a cancellation
    chunk.  It normally does this during the loop where it is uploading a
    file.  However due to an oversight or possibly a regression when we
    modularized the socket code, the library did not send a cancellation
    chunk if the daemon cancelled just before the end of file was sent.
    
    This commit fixes this.

commit a45387c8e50a7f5015761959000606d96979d878
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 1 14:11:40 2013 +0100

    inspection: Correct fix for segfault if /etc/SuSE-release is an empty file.
    
    The test was the wrong way round.
    
    See: CVE-2013-2124.
    
    This fixes commit ae8bb84ecd46d7b6ef557a87725923ac8d09dce0.

commit ecb19e293103df20c882bd23347a325be7c6386d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 31 11:49:22 2013 +0100

    lib: Don't call directly from one guestfs__* function to another.
    
    The public-facing functions like 'guestfs_*' are implemented as
    wrappers around implementation functions like 'guestfs__*' (for
    library-side functions only).
    
    Don't call from one 'guestfs__*' function to another.  It prevents
    ENTER events from being caught, especially where a deprecated function
    calls another implementation.
    
    Most code was not doing this, but there were still some places left
    where it was done.

commit dadb8055ad0a475243de32a65a824d1ef9915581
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 31 11:29:15 2013 +0100

    events: Use bool for flag.

commit cafd56f2bdfcf44d993d6db63874063adcd3aa0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 31 11:28:54 2013 +0100

    events: Refactor code to make the common path clear.

commit 9765785d3a91ffa2ff8b62c9264f144d76a3ad78
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 31 08:37:44 2013 +0100

    inspection: Don't segfault if /etc/SuSE-release is an empty file.
    
    Related to CVE-2013-2124.
    
    Thanks: Olaf Hering.

commit 50280b1753dbdb7b53b8c9592e7407546b5f8617
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 30 12:31:54 2013 +0100

    tests/http: Add a test of HTTP protocol.
    
    Disabled for various reasons.  See comment in Makefile.am.

commit 854d0d9287cadfe16495958cfc8b95aac79e5c63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 30 11:48:05 2013 +0100

    release notes: Recompile so that long URLs aren't broken in text output.

commit ef5336966f2246f21776bbdb85c96b72c1a6b6dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 30 11:45:59 2013 +0100

    podwrapper: Set Text::Wrap::huge property to "overflow".
    
    This stops long URLs from being broken in the text output mode.
    
    See:
    https://www.redhat.com/archives/libguestfs/2013-May/thread.html#00088

commit e06a25d7ff2628499de5a62dda0ff405ac81ad6a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 29 19:16:20 2013 +0100

    security: Centralize CVE information in one place (in guestfs(3)).

commit 2e2fff7c6752582e4989f84bf66c6800bbed90c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 29 19:13:46 2013 +0100

    security: Add documentation for CVE-2013-2124.

commit 1cf2051ac2ba4349301ed13a5c33cbab5ffda094
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 29 16:02:26 2013 +0100

    appliance: Add sensible disk optimizations.
    
    The timeout lets us read remote images without timing out.
    
    The noop scheduler lets the host do scheduling.  This generally makes
    sense for mixed workloads because the host has a global view of the
    system, and often has more compute power too.

commit 86715cb8cabd86f5f8802948ceaec4cbbf79fe15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 29 15:39:47 2013 +0100

    appliance: Remove dead code which (if not dead) would have set disk scheduler to noop.

commit 9ae991bd2fbbe7c2593f0ac00c328e4b888b0207
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 29 15:37:35 2013 +0100

    appliance: Don't set 'rotational' on virtio-blk devices.
    
    virtio-blk is obsolete so we don't need to bother optimizing it.
    People should use virtio-scsi instead.
    
    Also virtio-blk should choose the optimal settings itself.
    
    This was originally added to fix this bug:
    https://bugzilla.redhat.com/show_bug.cgi?id=509383

commit 11e8f1c35396449e4ca1314cc7786c034d20adc3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 29 16:22:02 2013 +0100

    generator: Set builddir for old RHEL 5 which didn't have this.

commit 6305d55bc129421a28fafc57528f9180cd6fcce0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 29 16:15:24 2013 +0100

    generator: Set abs_srcdir for old RHEL 5 which didn't have this.

commit fea1734d7bec1b612265dde322ebf9c7fc052ca0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 29 14:35:54 2013 +0100

    generator: Set abs_builddir for old RHEL 5 which didn't have this.

commit 9b07b2d65e2e2507e7785e95a44309465f5b90a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 21:38:23 2013 +0100

    tests: Add 'make check-release' rule.
    
    This is a subset of tests which will be required to pass before a
    tarball can be released by the maintainer.

commit 1163dd3004a3a9aca2823390a8215d31be625f63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 21:33:56 2013 +0100

    tests: Add new 'make check-all' rule.
    
    This runs all of the check* rules.  Since this includes 'make check',
    'make check-all' is not quite equivalent to the old 'make extra-tests'
    which was removed in the previous commit.

commit 223fe794d4c2454817964ee382a31931f9bc3f6b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 21:33:26 2013 +0100

    tests: Remove 'make extra-tests' rule.

commit 350ca8438328ddda8650ed47bb471dfdb6422107
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 17:22:58 2013 +0100

    Version 1.23.1.

commit 0e4acd6bbeaf26d7288e8b7461a570aa70cef500
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 16:15:59 2013 +0100

    inspection: Fix double-free when certain guest files are empty.
    
    The following commit:
    
      commit 5a3da366268825b26b470cde35658b67c1d11cd4
      Author: Richard W.M. Jones <rjones@redhat.com>
      Date:   Thu Jan 24 17:07:38 2013 +0000
    
          inspect: Use CLEANUP_* macros in inspection code.
    
    can cause a double-free along an error path when certain guest files
    are empty where we expected those files to contain at least one line.
    
    This causes virt-inspector to crash when run on these guests.
    
    The following is a test case which demonstrates the crash.
    `f20rawhidex64' is a Fedora guest, but with small adjustments to the
    test you could use any Linux guest for this test.
    
      $ qemu-img create -f qcow2 -b f20rawhidex64 /tmp/test.qcow2
      Formatting '/tmp/test.qcow2', fmt=qcow2 size=21474836480 backing_file='f20rawhidex64' encryption=off cluster_size=65536 lazy_refcounts=off
      $ guestfish -i -a /tmp/test.qcow2 -- rm /etc/redhat-release : touch /etc/redhat-release
      $ virt-inspector /tmp/test.qcow2
      *** glibc detected *** virt-inspector: double free or corruption (fasttop): 0x00007f18bc9925a0 ***
      ======= Backtrace: =========
      /lib64/libc.so.6(+0x34ecc7ca8e)[0x7f18b8e64a8e]
      /lib64/libguestfs.so.0(+0x3f91898078)[0x7f18ba13c078]
      /lib64/libguestfs.so.0(+0x3f91899761)[0x7f18ba13d761]
      /lib64/libguestfs.so.0(+0x3f91896d12)[0x7f18ba13ad12]
      /lib64/libguestfs.so.0(+0x3f91894140)[0x7f18ba138140]
      /lib64/libguestfs.so.0(guestfs_inspect_os+0x35)[0x7f18ba0bcc35]
      virt-inspector(main+0x547)[0x7f18ba7c57d7]
      /lib64/libc.so.6(__libc_start_main+0xf5)[0x7f18b8e09a05]
      virt-inspector(+0x6665)[0x7f18ba7c7665]
    
    This is a denial of service, but not likely to be exploitable.
    
    (Found by Coverity)

commit d47a874ff32de19155c7df4783d8980104d0bdf2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 16:04:06 2013 +0100

    rbd: Fix overallocation because of incorrect 'sizeof'.
    
    (Found by Coverity)

commit fc03db1740011eaaf5c4cfa3ad56091cbb881f07
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 16:02:24 2013 +0100

    conn-socket: Don't leak 'conn' on error paths.
    
    (Found by Coverity)

commit ccae891d86a66f4b6e32d6601e7be5aa0f575769
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 15:59:54 2013 +0100

    erlang: Don't leak (some) strings along error paths.
    
    This fixes several string leaks along error paths which
    were found by Coverity.
    
    However this is not a complete fix.

commit b1dcd490824963b8db57bb0eb85feb0523ef7a29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 15:48:42 2013 +0100

    fish: Check for out of memory failure.
    
    (Found by Coverity)

commit c933397fd1ea524ba3b45d6b1424e880e16237ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 15:48:23 2013 +0100

    inspection: Test for failure from match1 function.
    
    (Found by Coverity)

commit 92366c59837038d5e7ce26d182ff405913e62bdb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 15:41:32 2013 +0100

    drives: Don't call `close (-1)'.
    
    (Found by Coverity)

commit 1e59e36d4869243ba76ceff94388b7203557c9d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 28 14:49:17 2013 +0100

    guestfs-testing: Add tests for various new features added since 1.14.
    
    In particular, test remote access using guestfish if they
    have libguestfs >= 1.22.
    
    Also add some diagnosis tips.

commit 614d79df24c8f1ea8bbab230afbfbc542a0e6b44
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 24 14:19:41 2013 +0100

    syntax-check: HAVE_DECL_* macros are always defined.
    
    These macros are always defined to 0|1.  We don't need to
    check if they are defined.

commit 8fe9e5e4597c96680e68fd2e8653926230dcdb6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 24 14:19:24 2013 +0100

    syntax-check: Remove trailing whitespace.

commit e64e0dff6574a9be95e78931c46f3dc24007b07f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 24 14:19:06 2013 +0100

    syntax-check: Use newline before EOF in these text files.

commit 42289234abd8f1db782d8ce21772707c6c8aeac1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 24 14:18:32 2013 +0100

    syntax-check: Remove unused ``#includes''.

commit 6e25af565ef950b3025525b4d36ead29f9c98109
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 24 14:17:06 2013 +0100

    syntax-check: Use exit (EXIT_*) macros instead of hard-coded 0|1.
    
    These are defined in <stdlib.h> which the test program already includes.

commit b2c8efdbac3d9f64111d070e7fe5316d0eca551c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 24 13:48:23 2013 +0100

    syntax-check: Ignore more syntax-check problems.
    
    For some reason maint.mk doesn't process all of these regexps,
    or perhaps the regexps are not well-formed.

commit e2441cce3a9c7296426d5a20ed814239353dfa80
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 24 14:16:29 2013 +0100

    Ignore various intermediate files left around by 'make syntax-check'.

commit a53b03d76c66774f56ba5e75b47cf5a2ce6ccb9e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 24 14:16:37 2013 +0100

    make help: Suggest using -j1 -k options with make syntax-check.
    
    This lets you see all the output, not interleaved.

commit d2557e0c687fdf02359093b0fe2719d9eb66214f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 23 12:49:09 2013 +0100

    Version 1.23.0.

commit e17c1584b0069f972e13a6be9223d63ea96a314a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 23 12:06:46 2013 +0100

    Version 1.22.0.

commit 34e8d6a335e0cc3aa8b7fca26ff8a4ea9a54e778
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 23 12:09:51 2013 +0100

    build: Set 'stable' or 'development' in commit tag automatically.
    
    This sets two macros: BRANCH_NUMBER and BRANCH_TYPE.

commit 13c86be459aa0a17cbbe8cf5359dca413351bf88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 23 11:51:46 2013 +0100

    release notes: Get ready for 1.22 release.

commit 20b28a05ef1f8e5cf365950fdefde7c7b67c3976
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 22 14:20:53 2013 +0100

    tests/mountable/test-internal-parse-mountable.c: Hoist variable decls to top.

commit 9850cf10125d9a4e9f69d0b19dcf5b4e910137f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 22 14:19:57 2013 +0100

    tests/mountable/test-internal-parse-mountable.c: Don't fully allocate 1GB disk.
    
    This test required 1 GB of free space since it used posix_fallocate
    instead of creating a sparse disk.  Use truncate instead.

commit 6a49d762de18e056776564cbbedc2fcfafe7e728
Author: Hilko Bengen <bengen@debian.org>
Date:   Fri May 17 19:07:48 2013 +0200

    Fix for changed selinux mountpoint
    
    http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=707217

commit 2310ef7144969dea1896467c35c9f8cdd4e78f66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 18:23:52 2013 +0100

    Version 1.21.40.

commit 51ae4a62bbc7bccd9880f3813379cc617691d5fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 18:12:36 2013 +0100

    release notes: Don't document new internal APIs.

commit 288f4c01f915699d84ca68680a7ecd2a0f144b06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 18:12:07 2013 +0100

    appliance: Use 'rm -f' on files which might have been moved so might not exist.
    
    This partially reverts commit fae4a2cfb99bab26f3bd60f52e4a586e39f54f49.

commit 548d0811b4705ef51e594fa48c71431862e70d9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 17:13:16 2013 +0100

    Update gnulib to latest version.

commit 69f2d254d8342b3020e9f1a835de2fc51d9c713f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 17:11:23 2013 +0100

    docs: Add notes about how various check-* targets are implemented.

commit 3a19480da29b3dc6862f2525757e72a633995156
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 14:17:54 2013 +0100

    Update translations from Transifex.

commit a8c2a7d092365566b3660e28bcc254a67389c178
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 14:12:49 2013 +0100

    Update ROADMAP for 1.24.
    
    That will be the next stable release after 1.22.

commit 91db65c276ecab3d9af45256564f77d8782a04f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 14:11:23 2013 +0100

    release notes: Update list of bugs.

commit ffba6e4b4b240289a356a2e11180055b3d50e96e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 13:37:55 2013 +0100

    sysprep: Be prepared for CentOS etc. 7 which will act the same way as RHEL 7.

commit 1bdc2b5a2e879de63adc1f03bb888bb63dac828d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 13:37:03 2013 +0100

    sysprep: Update /etc/machine-info on Fedora 18+, RHEL 7+ (RHBZ#890027).

commit a875ef2a130ef3baf35d0deb89679e6b4300bf2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 13:36:29 2013 +0100

    sysprep: Refactor code, introducing a function to replace a line in a file.

commit 50a40cd7f7c9e949476077ae7cb0129223afe82a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 21 13:26:49 2013 +0100

    Update API support.

commit e2454a5fb3e6dd3e71d1d6076fa5068d77c04251
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 20 22:20:44 2013 +0100

    guestfs-recipes: Two more recipes from my blog.

commit 5b91d73b98bbfd655898a53d387e08967a95087f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 20 21:46:49 2013 +0100

    examples: If user does 'mount-local --help' don't create a disk image called '--help'.

commit c25e7c52d483b0b4cd26146bbaff8a693be4c2c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 20 21:42:52 2013 +0100

    fuse: Reimplement umount-local using guestunmount.
    
    Instead of repeating the same code calling fusermount -u, retrying, etc.

commit 04b53de51a6d5a5caf716fb9daa0458f62649bdd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 20 15:43:49 2013 +0100

    gluster: Normal port number (assuming 1 brick) is 24007.

commit 389411fb473b162c2b420cf4c46ddee8bdf87fca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 20 15:42:56 2013 +0100

    gluster: Note that client needs to run as root.

commit 98ee302285a9eb23447153210fe46152cdafefcc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 20 15:27:57 2013 +0100

    gluster: Force exportname to begin with a '/' character.

commit 41a2ea2484f600c2f09079bcb5037096b738bff9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 20 15:27:36 2013 +0100

    gluster: Don't force gluster port number to be specified.
    
    Gluster can choose its own port number.

commit 3c29d255ca2e9030fd49ecfde28da96690cc288e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 20 15:13:09 2013 +0100

    launch: libvirt: Allow port to be optional.
    
    Actually if you don't specify the port, currently libvirt gives
    an error:
    
      libguestfs: error: could not create appliance through libvirt: XML
      error: missing port for host [code=27 domain=20]
    
    However I think that is a bug in libvirt:
    
      https://bugzilla.redhat.com/show_bug.cgi?id=965142

commit 582acc68c7c65736db59663b97bb79dc18744c69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 20 09:00:16 2013 +0100

    appliance: Don't use 'rm -f' on files which ought to exist.

commit d01c52c630807187d07d5ea9b713165ed6a1f117
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sun May 19 18:01:10 2013 +0200

    fish/test-events.sh: ignore "trace get_path" line
    
    The test would fail when LIBGUESTFS_PATH was not set.

commit 5c742d3624b7b77ac0b1013c33b6e4d39aa6d8c4
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri May 17 22:28:18 2013 +0200

    ./run: Turn error message about missing LIBGUESTFS_PATH into warning; output to STDERR
    
    The previous behavior caused the build to abort when trying to build
    the sysprep documentation -- without much of a hint of what went
    wrong.

commit c016a4917be21ed56a15d47190511e96d5db57bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 19 16:40:19 2013 +0100

    README: Clarify that building from git needs './autogen.sh'.

commit c46dd49d3278cc1d8632d279441100c3b61aab8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 18 07:43:43 2013 +0100

    daemon: Don't install man page for guestfsd(8) if --disable-install-daemon.

commit be5616d1d385a87592783905d72b1b7b70f229f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 17 11:54:07 2013 +0100

    php: Work around buggy PHP returning array as long.
    
    Because OStringList is an optarg, we must specify "a!"  to
    zend_parse_parameters.
    
    However zend_parse_parameters still returns this as a *long* rather
    than a NULL (or empty array) so positively check that it has returned
    an array.

commit e468efc6f16409bc6aed84097968160e06203d6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 17 11:53:45 2013 +0100

    php: Fix comment in run-php-tests.sh.
    
    This updates commit cd40cf713991569e51b42742177e57f3dca148bc.

commit 979f51a8e015a3b7153a0660f32542959bf2344a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 17 11:13:07 2013 +0100

    Update release notes.

commit 93ad7010b538485d420c3da8d18f61b712fc6e5e
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu May 16 16:21:42 2013 +0100

    Fix compiler warning when libselinux is not present
    
    static function selinux_warning() isn't used if HAVE_LIBSELINUX isn't
    defined, which results in a warning.

commit e8625847760b65cf2c104302402691b5312e514c
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu May 16 22:13:50 2013 +0200

    Use pkg-config for Python
    
    At least libpython2.7-dev and libpython3.3-dev on current
    Debian/unstable ship with pkg-config files. As with the pkg-config
    check for Lua, we check for versioned and an unversioned .pc files.

commit a4a4ca2b2f358be12d88300c297164e7c6209410
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 16 11:11:39 2013 +0100

    appliance: Run lvmetad if it exists.
    
    This daemon is used by newer LVM to interface with udev events.

commit 838f9a8c5e57005da5e6047737e7cedd921f2ac2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 15 13:00:09 2013 +0100

    Version 1.21.39.

commit a3c094f22f9cd2d763e1b8c39709be2175ac5c2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 13 15:50:49 2013 +0100

    drives: Fix rules for quoting files that contain ':'.
    
    The test was backwards.
    
    This fixes commit a95214b1985e694946e3426120a6fdc13a3f081f.

commit b3e9d927b6d4d4423fb2dade98b4942cc3dcb103
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 13 08:40:23 2013 +0100

    faq: Update documentation for Debian Squeeze (thanks Hilko Bengen).

commit b7e84a3745ca63dd0e8a21bafab13d6c8de159ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 11 20:14:26 2013 +0100

    http: Fix typo in documentation.
    
    This fixes commit 83f74f5c564c51a1324b12e5edc4b50356d49dc6.

commit 54bc531a1c6d3aecc8b8de96c182096e2316b6a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 11 18:18:12 2013 +0100

    Add support for qemu's curl driver (ie. FTP, FTPS, HTTP, HTTPS, TFTP).

commit af7ff8787f3b77648db69fcebbd3037d15eaeb15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 11 18:07:24 2013 +0100

    iscsi: Document that one server must be passed, and that username may be passed.
    
    This fixes commit 8b271101a1724bab926c65c77436d8128bf1c2df.

commit 0370f95299cb39b900ce272fe59e91759f8e42ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 11 18:04:25 2013 +0100

    drives: Fix typo in error message.
    
    This fixes commit 0a065c45748ec5efe86f4d02f4864a58ed7dae36.

commit 86207d393188538a46bddad3d8f2895367ecf3ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 11 15:51:51 2013 +0100

    Version 1.21.38.

commit f30ff8075d11a2533bf966bc906a9b5943aed38e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 11 15:53:59 2013 +0100

    build: Add 'make maintainer-tag' rule for tagging HEAD with current version.

commit d909769ef1ef038ac5cd38db89796b19e18f7577
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 11 15:51:12 2013 +0100

    tests/regressions: Remove bogus comment in test.
    
    This updates commits a95214b1985e694946e3426120a6fdc13a3f081f.

commit 7e8df9e69bf174a5e8fbe56c27f0632db2394467
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 11 13:36:43 2013 +0100

    drives: Remove check for ':' in filename (RHBZ#811649).
    
    Modern qemu can now handle this properly.  ':' is only special if what
    precedes it looks like a transport, so:
    
      qemu-system-x86_64 -drive foo:bar     .. fails
      qemu-system-x86_64 -drive ./foo:bar   .. works
    
    Thus by adding ./ in front of relative paths that contain ':' we can
    work around this.
    
    In addition, this broke iscsi:// URIs because iSCSI target names
    routinely contain ':' characters.

commit e26c6f360b895df6123ffb93eea847fb58c6f553
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 11 13:33:36 2013 +0100

    drives: ceph/gluster/iscsi/sheepdog/ssh: Force the disk name to begin with a '/'.
    
    This avoids confusion when using URIs in guestfish, since the path
    will always start with a '/', and we don't otherwise know if we should
    remove it or not.  By forcing the '/' to always be there, we deal with
    this problem in the API instead.

commit 9fef3251a114ead13aa1dc3329a35fee8601642a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 11 13:23:48 2013 +0100

    drives: Use libxml2 to construct safely quoted URIs for qemu.

commit 67329aacea86a376cff3a2aa04ea40b883b203b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 10 21:38:14 2013 +0100

    Add support for iSCSI.

commit b22833bfa2c30695f9e4a9e3af01925b5cbb5f3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 10 14:23:08 2013 +0100

    src/inspect-fs.c: Don't segfault if internal_parse_mountable returns NULL (RHBZ#961812).

commit b11f7bb6961c73fc4f3757c197a0a169da623d62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 9 17:44:44 2013 +0100

    ./run: Don't set LIBGUESTFS_PATH if --disable-appliance.
    
    Thanks Dave Vasilevsky for spotting this problem.

commit dfb24eb7e121596b476e841612414aaa642c1f8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 9 15:35:46 2013 +0100

    recipes: Add link to script for converting Windows DVD to bootable USB key.

commit d3f1bb01b79e77ea34092d06e0b89f6cc006b809
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 9 15:35:08 2013 +0100

    New API: cp-r
    
    This runs 'cp -rP' and is useful for copying when the target
    doesn't support file owners or permissions (ie. FAT).

commit 7b88b592c9e1e62e147b647a4ba6735463e65a44
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 9 10:22:44 2013 +0100

    Version 1.21.37.

commit fe770413e0c0679b1dff677609d8eb89bbc6990e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 9 08:52:40 2013 +0100

    fish/options.c: Whitespace changes.

commit db5133b8a660123671cdf06c4290b800a4551462
Author: Dave Vasilevsky <dave@vasilevsky.ca>
Date:   Wed May 8 21:16:51 2013 -0400

    fuse: Document the fstype parameter

commit d5a1edf3482afdf6019d4cec89d41a2df228d4c3
Author: Dave Vasilevsky <dave@vasilevsky.ca>
Date:   Wed May 8 21:02:21 2013 -0400

    fuse: Allow specifying the fstype of a mount

commit b7e9a9306661b057440306767f21d9610d4b161a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 8 11:50:31 2013 +0100

    rbd: Miscellaneous stylistic changes, no functional change.

commit 8bc8cd09522e1d87bf6d47267771145aa92e5695
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 8 11:50:09 2013 +0100

    Use size_t for loop iterators.

commit 21f705e2ad5e3a7c14a8692b6aab649768537cb9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 8 11:44:36 2013 +0100

    src/libvirt-domain.c: Cast constant strings to avoid warning about signedness.

commit 8fa33ceacdc5a684d99f2c6b75c7238cb7d2a202
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 8 11:37:13 2013 +0100

    src/drives.c: 'auth' string is const.
    
    This fixes commit f3e01b69e04a0e8321e9d54ca39a4d7ea762f80d.

commit 35bc77e90be552f54c986414bdb7c43c1164d63c
Author: Mike Kelly <pioto@pioto.org>
Date:   Tue May 7 10:50:12 2013 -0400

    rbd: Support using a custom secret

commit 63d7d7b3185d3668bfe83a5704f0f337c546cbc3
Author: Mike Kelly <pioto@pioto.org>
Date:   Tue May 7 10:50:11 2013 -0400

    libvirt: extract usernames for network disks

commit ae36b39c2924601c8fc00dbe171cd4b040c9f86b
Author: Mike Kelly <pioto@pioto.org>
Date:   Tue May 7 10:50:10 2013 -0400

    rbd: support usernames, for cephx authentication

commit 017b6ea896ea2ce2a3f09a08b1509a14871eeec9
Author: Mike Kelly <pioto@pioto.org>
Date:   Tue May 7 10:50:09 2013 -0400

    libvirt: initial support for networked disks

commit c8edec705d828fd0a618feeb8813a9806d9c8b9f
Author: Mike Kelly <pioto@pioto.org>
Date:   Tue May 7 10:50:08 2013 -0400

    rbd: send mon_host for rbd drives
    
    This is how the servers are passed to kvm.

commit 2636172e9ebd9ff50c2fc852686ab8f18a62649b
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Wed May 1 23:15:48 2013 +0200

    Fix rpcgen call for separated builds.

commit e087868f94e8daad05dc1702da12de5584483a1e
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Wed May 1 23:14:38 2013 +0200

    perl: Fix install target for separated builds.

commit 4eba62f42bda25d821986787a3f27e9a77538958
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 2 14:28:00 2013 +0100

    Version 1.21.36.

commit b064b11ccc49028c389b60fd8f09e0359c7f3ae0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 2 13:18:12 2013 +0100

    debian: Add OCaml .depend files to DISTCLEANFILES.
    
    Otherwise debuild complains that these files have been created after
    it does a 'make distclean'.

commit e89f0b45e3b1ca7aa3e15c2268bf477d5345bf14
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 1 09:44:47 2013 +0100

    tests/c-api: Various code refactorings.
    
    - Don't use fixed names for the disks.  This will allow us to
      parallelize this test.
    
    - Add a new "GETKEY:<key>" String parameter which can retrieve keys
      from the handle.  The temporary disk names are stored as keys.
    
    - Don't test the close callback.  However this uses the close callback
      mechanism to delete the temporary disks, and in any case close
      callbacks are well tested by the language binding tests.
    
    - The generated code now produces a static array of tests (instead of
      a 'perform_tests' function), making it possible to parallelize.

commit 2be9cc940f1fd471ffde41bcfa52f508b94317c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 1 09:34:39 2013 +0100

    tests/c-api: Remove global guestfs handle.
    
    This will allow us to parallelize these tests.

commit a2d72c74dd796e77e0a4a7938663050b0b2215df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 1 09:33:51 2013 +0100

    tests/c-api: Warn about deprecated functions in main program.
    
    And replace deprecated guestfs_set_close_callback with
    non-deprecated guestfs_set_event_callback.

commit 8e3c8d320a87356c50814e4d0f93d8120e807b7d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 1 09:09:55 2013 +0100

    tests/c-api: Factor out common init_* into separate functions.

commit 0aa9cfedff9fe5bb584394c1413a2b53de44d4b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 1 08:36:16 2013 +0100

    java: Standardize Java test numbering.

commit c58d9248028167a16e34514583d2fec5449f3588
Author: Mike Kelly <pioto@pioto.org>
Date:   Tue Apr 30 13:49:10 2013 -0400

    ssh: fix setting the username part
    
    Right now, we'd always be setting a NULL username.

commit 63df920ef2cc06a94c283c98400c9e201bf8cefd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 17:41:05 2013 +0100

    ruby: Standardize test names and numbering.

commit 02d4867045b48e8793f6e9f190466316f4149cb9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 17:34:22 2013 +0100

    python: Standardize test numbering.

commit e3c67c2b3278aba3476ebf2fab2427ed31702fc5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 15:42:31 2013 +0100

    perl: Make the 030-create-flags test same as canonical OCaml version.

commit 7a2486759960147230baa6ee8517f133292d6ace
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 15:41:08 2013 +0100

    ocaml: Set close-on-exit flag to true in this test so handle is cleaned up.
    
    Otherwise the valgrind test fails since the handle resources
    are leaked.

commit 4d54bd137eecd401b6b352c2564243e52ef3c0dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 15:08:58 2013 +0100

    Version 1.21.35.

commit 2158fe2fc479f99944d546946af2d758eb7d2491
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 13:25:16 2013 +0100

    erlang: Make separated builds work correctly.
    
    Set ERL_LIBS and also create a phony 'ebin' directory for the
    guestfs.beam (library) so that the tests run against the local copy
    not the installed version, and so that separated builds work.

commit 7b50408755fdabbacb812e119e193b0f7a35b3c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 13:25:01 2013 +0100

    erlang: Add a CLEANFILES rule.

commit c58c58ad50778d6d9ffcda4d836370ca9edf21a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 12:48:44 2013 +0100

    python: Fix for separated builds.
    
    Ensure that ./run sets PYTHONPATH to include the Python source
    directory (location of guestfs.py).

commit 41d7c089f3dc58891ec31bfd7ab1b0d1fbef63b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 12:22:54 2013 +0100

    perl: Fix build and test to work with separated builds.
    
    This is inspired largely by Hilko Bengen's equivalent
    hivex patch here:
    
    https://github.com/libguestfs/hivex/commit/887466794a40f57b84ce32524e1a650d6674c7e6

commit ce7185e8e79f54a5698b34a381bac5d66c04e20c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 12:20:53 2013 +0100

    perl: run-bindtests: Don't set PERL5LIB.
    
    This environment variable should already be set properly
    by 'run', there is no need to set it from this test script.

commit 474bf1358f286e0ca9426a00d9cff4f68cc9b173
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 30 12:49:32 2013 +0100

    ./run: Set s= (srcdir).  Use absolute paths.

commit 0588a21725e2f6989f9de38556386614fcf4fee0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 29 19:25:14 2013 +0100

    tests/mountable: Fix incorrect use of inspect-os API (RHBZ#957380).

commit b42ec510368b1dfb5ce8a163f51d9639e70706f1
Author: Mike Kelly <pioto@pioto.org>
Date:   Mon Apr 29 12:57:14 2013 -0400

    Make a 1G test image instead, avoiding a size bug
    
    mkfs_btrfs: /dev/vda2: device /dev/vda2 is too small (must be at least
    256 MB) at .../libguestfs/tests/guests/guest-aux/make-fedora-img.pl line
    140.

commit 50e18a4feca5b7d4d274d5ee32766014cc3de005
Author: Mike Kelly <pioto@pioto.org>
Date:   Mon Apr 29 12:57:13 2013 -0400

    Refactor image partition sizing

commit 9bcc267623e80c9b9c399396676983618f49e174
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 29 16:41:06 2013 +0100

    Version 1.21.34.

commit 013443d866994fde53d7b4deb0bb330ca86a66d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 29 16:08:47 2013 +0100

    perl: Almost standardize the Perl tests.
    
    This needs more work, but brings them mostly up to the same
    standard form as the OCaml tests and the test documentation.

commit fcc492e495c5e098f17d023f5fdcc6b245089830
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 26 16:49:58 2013 +0100

    ocaml: Standardize the test sequence for all bindings; implement this for OCaml.
    
    The idea behind this change is to have a consistent set of
    tests across all bindings, while at the same time saving time.
    For background see:
    
    https://www.redhat.com/archives/libguestfs/2013-April/thread.html#00069

commit cf85095c5c51199c72b6294be66d9c90ad0312ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 29 15:22:34 2013 +0100

    tests: Add a regression test for RHBZ#957772.

commit 23414ee8dc5df5bf997f8f732c880c77cb764164
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 29 15:23:27 2013 +0100

    daemon: Properly quote arguments for tar-out, base64-out commands (RHBZ#957772).
    
    This fixes commit c78ec7e085e99bfddd0509dece72bf6a8d0188ce
    which was an attempt to fix RHBZ#908322.

commit 1ca56bd6bbd3d89801e442ad7c90ae940931de7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 20:08:18 2013 +0100

    ./run: ruby: Set $RAKE and fix Ruby tests.
    
    This wasn't set which caused Ruby tests to silently not run
    without any indication.

commit ba7cfb0cb8a9904483436222e2deef622028c08f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 20:10:26 2013 +0100

    ruby: Fix segfault in regression test.
    
    This was revealed by the regression test for RHBZ#664558.
    Unfortunately because Ruby tests had been silently disabled,
    this regression test was never run.

commit 21e42ee2196ba6df723de5d2152e2e72c99f67bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 20:09:28 2013 +0100

    ruby: Fix optargs test.

commit f6f0d82b45e4b286482237c318d77f19c161e108
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 14:59:19 2013 +0100

    Version 1.21.33.

commit 44b726217080ddb06586818b38691ce0db7e3e21
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 13:34:24 2013 +0100

    tools: The programs are located in the source directory.

commit f9377b00bdc3546a025aa9d1523be5848f8ab595
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 13:34:06 2013 +0100

    python: Test programs are located in the source directory.

commit fb18ddd5ea2623590b9d208b002a54d149eb6e8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 13:33:46 2013 +0100

    fish: Add $srcdir in several places where test files exist in the source directory.

commit 4c0def13235c9fb570d04fa386277f5493b32ae0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 13:33:24 2013 +0100

    tests/rsync: This test only copies generated files.

commit d10ed1d5cfa1614359d84153e7d2c568e693df5a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 13:33:00 2013 +0100

    tests: Add $srcdir in several places for test files located in source directory.

commit f805a8fc273d39329d0339ef59eedf2ecca6fcaa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 13:26:35 2013 +0100

    tests/xml: Get XML data file from source directory.

commit 605a5c0846f41f3a0107ca555a9847e2bf101014
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 13:24:23 2013 +0100

    tests/btrfs: Get data files from source directory.

commit e85aeeeb1b7ddd62afdb72875a859b896ff49d61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 13:20:48 2013 +0100

    tests/selinux: Pick up run-test.pl script from source directory.

commit 2b272f9be6abdd6827765901328ff4202e489d05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 12:44:17 2013 +0100

    tests/guests: Various fixes for separated builds.
    
    This now correctly builds all the phony guests when
    builddir != srcdir.

commit 2210aea0b35ccca66b901b39a6e2f685abfdf2d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 12:36:55 2013 +0100

    tests/guests: Don't include fake Windows binary hive files in git.
    
    This means that people compiling from git will be required to have the
    'hivexregedit' command (from hivex).

commit 5c9928ecb947b19f13aa302f2a6e81e73315f536
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 12:33:31 2013 +0100

    tests/guests: Ensure hard to generate files are cleaned by 'make distclean'.
    
    This allows us to switch from non-separated to separated builds
    without breaking (the user must do 'make distclean' between the
    switch).

commit fff1357d713367d0f5f5f230a8b39361923aff2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 12:20:53 2013 +0100

    perl: Fix 'make check' to find bindtests.pl in source directory.
    
    Despite this change, separated builds are still broken, apparently
    because ExtUtils::MakeMaker doesn't support this sort of
    configuration, or else we're using it wrong.

commit b575ccac43c0a89d8d5aff537c76fa7543b6706d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 12:02:16 2013 +0100

    tests/c-api: Allow FileIn paths to be prefixed by "$srcdir".
    
    Since tests involving FileIn will often wish to read from local files,
    it makes sense that they would want to open files in $srcdir.
    
    Therefore allow such paths to be prefixed by "$srcdir" which is
    substituted at run time by the same named environment variable (set by
    automake).
    
    This fixes separated builds in tests/c-api directory.

commit bda5e8f000e9df221d0a7e837349586d2fad2371
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 10:40:18 2013 +0100

    Remove many uses of $(builddir).
    
    "$(builddir)" is always "."
    
    Therefore most uses of $(builddir) are suspect and should be
    removed or replaced with "."

commit ff95421f0dcfc790b303da75545ee2570add3d75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 10:39:30 2013 +0100

    appliance: Fix rule for building supermin.d/init.img.
    
    Use a temporary directory instead of copy hack.

commit ca1aa2e70d7be8abb0903654a0dbfe65eb96b55f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 10:33:40 2013 +0100

    tests/data: Add a comment noting a bug in the Makefile.
    
    abssymlink is an intentionally dangling symlink, but this confuses
    make which thinks it has to rebuild the rule every time.

commit 7b531cdd38cf0752360626218a5b54cea38ebde8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 10:33:16 2013 +0100

    tests/data: Don't prepend build paths with $(builddir).
    
    It's both unnecessary and confuses make.

commit e4873808be707c698d999ea9ebedb856fddc9fd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 25 10:32:42 2013 +0100

    tests/data: Fix initrd when doing separated builds.
    
    Otherwise the initrd contains paths like '../../tests/data/empty'
    which obviously causes the tests to fail.

commit 28846e3033c91f9c92f43bbad9bb01f6065adee2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 20:35:05 2013 +0100

    php: Disallow separated builds.
    
    As it stands, this will just break.  Until it is fixed, give a
    diagnostic message.

commit 91add4bafdca9b2a86373dd7052253d5c7fa4c60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 20:36:15 2013 +0100

    gobject: Fix separated builds.

commit ea9110f64e7c52a07df94d98961f69c747814828
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 20:36:04 2013 +0100

    haskell: Fix separated builds.

commit 5eaf622864f46b170b6693feb8743cc075382c11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 21:44:17 2013 +0100

    java: Allow source directory to be prepended by make.
    
    Fix for separated builds.

commit 0cc8fef1717304b3b5a5434eee90ab35b5a5174f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 20:35:37 2013 +0100

    java: Bindtests.java is generated in the source directory.
    
    Fix for separated builds.

commit 7c14e23e4289ce7f2dfb50a60a45685b77020d8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 20:25:25 2013 +0100

    ocaml: bindtests.ml is generated in the source directory.
    
    This seems to be necessary because separated builds don't recognize
    the *.ml file as being a source file (unlike, for example, *.c files).

commit b73f31e2a367b6ac7a8187e0ece7d7561b3ef808
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 21:43:13 2013 +0100

    generator: Place generator, stamp-generator, build files into builddir.
    
    Previously the generator binary was (deliberately) placed into the
    source directory.  However there was no real reason for this to
    happen.  Always put the build products into the builddir.

commit c81c9f899a77f5c80a930631b692e515c855a8a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 21:09:56 2013 +0100

    generator: Make stamp-generator in the Makefile.
    
    Since stamp-generator is a Makefile thing, make it in the Makefile,
    not in the generator itself.
    
    Also this ensures stamp-generator is created in the builddir, not in
    the source directory (fixing separated builds).

commit 3b7a6682bb7703f999dd07525388a451eb525bda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 20:32:25 2013 +0100

    configure: Make sure that certain build directories exist.
    
    When builddir != srcdir, this ensures that certain build directories
    which might not exist are created by configure.

commit 469753c8b4bf798ec2535d69d2a6f884722ff5df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 20:34:10 2013 +0100

    tests/data: Ensure all generated image files are removed by 'make clean'.
    
    Otherwise the build breaks if you switch from a non-separated build to
    a separated build.

commit a312468f6de1d849e7b4d141d4619a22a3d01689
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 18:42:12 2013 +0100

    Fix 'make distclean'.
    
    Because the generator subdirectory is cleaned first, and other
    directories recurse into the generator directory, 'make distclean'
    would fail (because generator/Makefile would be deleted by that
    point).
    
    Change subdirs-rules.mk so it doesn't fail if generator/Makefile has
    been deleted already.

commit f3ad151d9bbcd7a7746880ff524f8cf373a8de63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 18:41:39 2013 +0100

    subdirs-rules: Remove 'appliance' rule.
    
    It was used in only one place (perl/Makefile.am).
    
    If users want to build just the appliance, then they could do 'make -C
    appliance'.

commit 2704600ab709070be86ddd2b1a5a419b6c0ba9d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 24 15:22:34 2013 +0100

    configure: Create resize/ subdirectory if building in a different builddir.

commit a7bce9cb20996e3d8f3aefc535c5990092e47df0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 23 10:34:57 2013 +0100

    Version 1.21.32.

commit 998ea17e32692610fdc6fe0514346fb259fd487b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 23 10:59:19 2013 +0100

    tests/guests: Add make-guests-all-good.pl to EXTRA_DIST.
    
    This fixes commit 2ae72dcaf89130647f03ff7c3d0900215a91f59a.

commit a3e6b8d309aa7135ce838449b6dde5e88cb68963
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 23 10:37:11 2013 +0100

    release notes: Fix unterminated C<...> sequence in POD.

commit a466e87296f7b4ef087d57a3a0c97fbd0265b3b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 22 16:11:32 2013 +0100

    tests: sysprep: Specify list of operations explicitly.
    
    This commit makes no functional change on its own, but it allows us to
    filter out failing operations on Ubuntu.

commit 2c44e1da7129e28231a8329aae78ca5a0eba814a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 22 13:59:01 2013 +0100

    grub-install: Change test to use /dev/sda instead of /dev/vda.
    
    The previous test for grub-install hard-coded /dev/vda (ie. assuming
    virtio-blk instead of more modern virtio-scsi).
    
    This changes the test to hard-code /dev/sda instead.  However this
    change is still not correct since /dev/sda will be adjusted by block
    device name translation in the call to grub-install, but not what is
    written to /boot/grub/device.map.
    
    Since we no longer support grub-install on Fedora, this won't affect
    things, but Ubuntu still has a 'grub-install' command (although it's
    actually from grub2).

commit c50af64710710bd4324301e0475cce4273a87e96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 19 16:05:48 2013 +0100

    gobject: Link libguestfs-gobject library with GIO.
    
    So that we get the g_cancellable_* symbols.

commit 9abf6e1e914c1621ac20f582bfe507da3ccd2d35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 19 15:52:54 2013 +0100

    gobject: Link libguestfs-gobject library with GOBJECT_LIBS.
    
    There's no such thing as a _LIBS variable in automake, so
    this line was effectively being ignored.

commit f94018c2090d9640b620b8e57bc8fff4b979601c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 19 15:37:40 2013 +0100

    virt-ls: Use string instead of small array.
    
    This works around the following warning:
    
    virt-ls.c: In function 'show_file':
    virt-ls.c:574:1: error: stack protector not protecting function: all local arrays are less than 4 bytes long [-Werror=stack-protector]

commit dbcc4ec389aed859d244764426468c1e65f00c24
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 19 15:29:50 2013 +0100

    examples: Don't ignore return value of chdir.
    
    GCC 4.7.3 whinges about this.

commit 2fa251b9a813a984aae4bdb92efa41922d319d37
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 17 20:06:24 2013 +0100

    tests: guests: Auto-generated guests-all-good.xml.
    
    Only include guests which we successfully created, so for example if
    there's no NTFS support then the Windows guest won't be included.

commit b785e5b001988a56cb8dba3f09bd03e9f270714d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 17 18:00:18 2013 +0100

    tests: guests: Display some information about each phony guest for debugging.
    
    This adds debugging output like this:
    
      fedora-btrfs.img: file size bytes: 536870912
      fedora-btrfs.img: allocated bytes: 12963840
      fedora-btrfs.img: MD5 hash:        7e8eded44fc832b0f88b0dc5eebf490c

commit ca4ac8057e203c938d5040d90ac5fcddf87783d0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 17 17:03:13 2013 +0100

    tests: Mark 'skipped' function with __attribute__((printf)).
    
    With recent GCC, you get this warning:
    
    tests-main.c: In function 'skipped':
    tests-main.c:256:3: error: function might be possible candidate for 'gnu_printf' format attribute [-Werror=suggest-attribute=format]

commit 55d048fcb0543ce47c98ad546f1a4ee9bd53b077
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 17 08:55:28 2013 +0100

    Version 1.21.31.

commit 1c2abd30271f9fc993b12d052660e6d5c672ee86
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 16 20:22:42 2013 +0100

    fish: options: Allow Unix domain sockets to be specified in --add URIs.
    
    You can now use a URI such as:
    
     guestfish -a nbd://?socket=/tmp/sock
    
    (a NBD connection to Unix domain socket /tmp/sock).

commit e4e6a6c42fc7487b24fae762851e54bb75feadbb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 16 19:33:54 2013 +0100

    fish: options: Format server name as "tcp:host[:port]".
    
    This is safer, because otherwise a URI could contain some clever
    "unix:..." string as the hostname, tricking qemu into opening a Unix
    domain socket at an uncontrolled location.
    
    This fixes commit 349300af08be9ae9f3d7259e688e2ee5318f2171.

commit 4021eeb4909061b56835236a3e66cc3eeb593ff9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 16 19:36:29 2013 +0100

    df: Move variable decl to top of function.
    
    Since this code is no longer conditional, we don't need to have the
    extra { ... } inside the case statement.
    
    This tidies up commit 2f0a4d7c18e622c48e33edc3f80dbd593c6398bc.

commit 03e7dfb21dae135c8ad2b9e4ee370dda572ca1de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 16 18:41:32 2013 +0100

    Version 1.21.30.

commit c1031aa9a012abab07475a1392560f5beb05d1f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 16 16:39:48 2013 +0100

    Require libxml2.
    
    libxml2 is very commonly available on Linux distros and has also been
    ported (and is widely available) on Mac OS X and Windows.  Therefore
    simply require libxml2, and remove a lot of conditional code.

commit e6296a4cf5941763fd9d98d963614518ddc4a475
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 16 13:57:38 2013 +0100

    fish: Add -a URI (add remote storage) to options.
    
    Add a remote drive by doing:
    
     guestfish -a ssh://example.com/path/to/disk.img
    
    There are several different protocols supported, as explained in the
    man page.
    
    This affects all virt-* tools that use the common guestfish options
    parsing code.

commit 5914ba0a25b48440f9fde25416e9c4c646698a29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 16 13:57:01 2013 +0100

    fish: options: Whitespace change.

commit 4fb2e2fbe7ed7b38ad3556fa12ca4a31b7c9e10f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 5 13:01:19 2013 +0100

    Add support for SSH (Secure Shell) block device.

commit 9691bcb222ccfd6083235ed03ad34aa624e0dace
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 15 09:51:24 2013 +0100

    FAQ: Add a quick summary to the debugging section of the FAQ.

commit 93ac7807b5994a15933adddb1a1d0d506b052ca9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 13 10:48:08 2013 +0100

    Version 1.21.29.

commit 70299026eca122d47ca40963ec37b77c5af0b4a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 22:16:25 2013 +0100

    tests: Split C API tests into regular C file + generated tests file.

commit ecb29a6997732d14d6dc6996aecf74988f2a354b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 22:00:01 2013 +0100

    tests: Replace TestOutputHashtable with TestResult and C test.

commit bb5767e136ed28fc98b1162c77d6bd2730b572d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 18:21:56 2013 +0100

    tests: Replace TestOutputBuffer with TestResult and C test.

commit 64e02b84fd16df2a6f6e00018917b05f6320b2cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 18:11:43 2013 +0100

    tests: Replace TestOutputFileMD5 with TestResult and C test.

commit fb9e83b5a7f54e211d5d5984e98622e4923c8ecb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 17:35:06 2013 +0100

    tests: Remove TestOutputLength (not used by any tests).

commit b34636aec7a0f1caa2be349f8a14570467f75497
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 17:19:22 2013 +0100

    tests: Replace TestOutput/TestOutputDevice with TestResult{String,Device}.

commit d7852f101e419188754dd06cf6e8109a8ccccca3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 16:17:08 2013 +0100

    tests: Replace TestOutputList{,OfDevices} with TestResult.
    
    This adds helper C functions 'is_string_list' and 'is_device_list'
    allowing these tests to be carried out in generic C code instead of as
    specialized tests.

commit b277230b2c8f620d5da607a3d8047e23feb956f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 15:26:22 2013 +0100

    tests: Replace TestOutputStruct with TestResult.

commit 63f5331ea658a9c4c628fcc2a646dad96127e1ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 14:34:51 2013 +0100

    tests: Replace TestOutputInt{,Op} with TestResult.

commit 549c2128b264d5224c796ef898e4b9e41f5150c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 14:13:39 2013 +0100

    tests: Replace TestOutputTrue/False with TestResultTrue/False.

commit 8017b5d5f5471abb882bf8c5fa24a8d084f82917
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 13:27:08 2013 +0100

    tests: More flexible re-implementation of C API tests.
    
    Instead of using the various 'TestOutput', 'TestOutputList' etc
    macros, it makes better sense to let the tests contain fragments of C
    code to perform the checks.
    
    Several new macros are added:
    
    - 'TestResult': This macro takes a C expression which is evaluated to
    test the result of commands.  For example to compare if a string
    result has some value:
    
       TestResult (* command sequence *), "STREQ (ret, \"abcd\")"
    
    The variable "ret" contains the result from the last command in the
    sequence.  But also, variables "ret1", "ret2", etc contain the results
    from the last but one command, the command before that, and so forth,
    allowing much more flexible tests to be written.
    
    - 'TestResultTrue', 'TestResultFalse': Wrappers that test the last
    command for true/false.

commit 55007316b926f8a717a248334f029fea771416f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 10:10:55 2013 +0100

    tests: 'If' and 'Unless' conditions never used, so remove them.

commit b7d978c69503f9b37c873d38f89753c375643e84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 12 10:13:19 2013 +0100

    is_lv: Does not need to depend on lvm2.
    
    It only uses 'stat', not any lvm binaries.

commit 69c87ca3df5cd94b460970529ed1eb4e078a1485
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 11 17:58:28 2013 +0100

    valgrind suppressions: Suppress libmagic leaks.

commit 9c0b44795b1b40a0ab69e75c61bfcf6d05128c1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 11 23:21:17 2013 +0100

    debian: packagelist: Add mtools.

commit 6e3723d90308e07e36d01c3c5f585ea47b3ae94d
Author: Olaf Hering <olaf@aepfle.de>
Date:   Thu Apr 11 20:41:44 2013 +0200

    add --with-supermin-extra-options configure option
    
    Useful to pass --use-installed and other options to supermin.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit d3e15f0959ce8f04c478631a00155d7da4e6a40e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 11 14:41:24 2013 +0100

    Update translations from Transifex.

commit 526ff3fe9a343956f41206304c6695725a21215d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 11 14:26:06 2013 +0100

    Update gnulib to latest.

commit 0315c8752814af843bf83b21b741b0206c633141
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 11 13:30:22 2013 +0100

    Remove use of gnulib progname module.
    
    It's simpler to use the glibc 'program_invocation_short_name(3)'
    feature, and fall back to a generic solution.  Also remove risky
    assignments to argv[0].

commit 694887f18918e1e3bbb97b38b9e48f25168ec7e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 11 12:19:00 2013 +0100

    New APIs: set-program, get-program.
    
    These set or get the program name in the handle.  Most programs
    will never need to call this, since we set this, if possible,
    using the glibc 'program_invocation_short_name(3)' feature.

commit 4d097423c342b1a3385fe6a960009acd60dc0dea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 10 11:57:49 2013 +0100

    fish: Add help for prepared disk images to the man page.
    
    Also the long description for each prepared disk image can now contain
    Perl POD markup.

commit ab497bab91ce15d01d5537a71343685c5ca8c02c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 10 10:01:17 2013 +0100

    inspection: Don't fail if libosinfo database is not found (RHBZ#948324).

commit b39d9220d49d182376c3acaaf7e4aa207b7180be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 9 23:25:53 2013 +0100

    fish: welcome message: guestfish can edit disk images.

commit 49a6740961381c008738796478e405f1dbc7107e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 9 23:15:24 2013 +0100

    "guestfish" now means the "guest filesystem shell".
    
    Remove the word "interactive" which implies that guestfish can only
    (or often) be used interactively.

commit ae21d4b92412dbe385500795aa598ff7b39899b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 9 18:45:15 2013 +0100

    Version 1.21.28.

commit 678461f1a348c5cf2afd093d31988c34d7bef2d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 9 17:30:09 2013 +0100

    examples: Update debug-logging.c example.
    
    This updates commit e3546ad2ce2c0d953e3be2b072bacd48972450af.

commit de3b45360c51569a3c13b2edf83ea51453d34240
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 8 20:10:07 2013 +0100

    examples: Add example program showing enabling debugging and capturing log messages.

commit 246bd9692bf73f00bccdcd7cfbb15b9416356f41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 5 10:33:58 2013 +0100

    Update release notes for future 1.22 release.

commit 1043ea32864d1c510831143f77bd141654f165d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 5 10:33:25 2013 +0100

    pod: Fix "wide character in print" warnings by declaring encoding correctly.

commit d8f4f512380203d6c562a58fb7689f0585b4ef32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 22:14:25 2013 +0100

    Fix typo in extlinux documentation.
    
    This fixes commit dee1dd64c3cd5e67393dec679040eb02e81c84b0.

commit d797a7ea0b91a90bfc9960be698101938039be4c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 21:04:32 2013 +0100

    Version 1.21.27.

commit aecfea260966fbaeb0a4bb4034d95f731aea2913
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 16:06:43 2013 +0100

    New APIs: Add support for syslinux and extlinux (bootloaders).
    
    This also adds tests of SYSLINUX and EXTLINUX which create bootable
    guests.

commit d3569e75dee78865ff9268c9deb997501e4f889d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 18:21:01 2013 +0100

    Don't delete iconv locale data from the appliance.
    
    - /usr/lib{,64}/gconv/*:
    
    This is the iconv data, required for APIs like iconv_open to work.  In
    particular, the mtools 'mcopy' program fails completely if it cannot
    use iconv.  'mcopy' is used by SYSLINUX to copy files to the disk.
    
    The error you would have seen is:
    
      Error converting to codepage 850 Invalid argument
      Cannot initialize 'S:'
      Bad target s:/ldlinux.sys
    
    - /usr/bin/localedef and /usr/sbin/build-locale-archive:
    
    These are not really needed, but both are simply small binaries so we
    might as well not delete them.

commit 01b4dd1ff74d642d25c22a4ce2e1122928b015a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 14:15:44 2013 +0100

    daemon/copy: Ensure errno is preserved along error paths.

commit 58c6b3bf349b670c8db9f02eace442eb20f9a916
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 13:45:42 2013 +0100

    Add 'sparse' option to copy-{device,file}-to-{device,file} calls.
    
    Setting the 'sparse' optional boolean causes writes to be omitted if
    the block to be written contains all zero bytes.
    
    This should help with sparse backing files (eg. raw, qcow2, dm-thin, etc).
    
    Also, modify virt-resize to use this option by default when copying
    devices.  The savings in virt-resize can be quite startling, eg
    'du -sh' (ie. true size) of a resized disk image:
    
    8.1G      /tmp/f15x32-resized.img    # before this change
    3.2G      /tmp/f15x32-resized.img    # after this change

commit 268b819ad510907176efff4bd83579d676e8af51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 4 11:49:27 2013 +0100

    php: Fix segfault when function has an OStringList optional argument.
    
    How this PHP/Zend stuff is supposed to work is not documented, but at
    least with these changes it no longer segfaults.

commit 2185e3df95c7c501862be470c8121862247d8dde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 3 18:58:43 2013 +0100

    python: Let RHashtable be returned as a Python dict.
    
    The initial proposal was suggested by Matt Booth and discussed on the
    mailing list here:
    
    https://www.redhat.com/archives/libguestfs/2013-April/msg00007.html

commit 59d57f18b230334b501304203630d52686a6eee1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 3 12:33:24 2013 +0100

    Better error messages for FUSE and other things not supported.
    
    The bare message "FUSE not supported" wasn't actionable.

commit a4a31b5d557be94a5ced836fbb24f66e8c58c586
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 2 15:53:37 2013 +0100

    FAQ: In Fedora >= 19, the RPM detects if it can access the network when building.

commit 600e8aaac2d66d915346fe361c85721f98df7967
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 2 15:25:48 2013 +0100

    Version 1.21.26.

commit b273bb5d53b2819be2a2fad4f715ae395da72c66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 2 12:28:27 2013 +0100

    perl: Remove Sys::Guestfs::Lib.
    
    See announcement on the mailing list for more details about this change:
    
    https://www.redhat.com/archives/libguestfs/2013-April/msg00001.html

commit b66acb8fa446335e310103dd0a468a57d4af47f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 2 13:11:33 2013 +0100

    perl: Remove use of Sys::Guestfs::Lib::open_guest function.
    
    This obsolete function does all sorts of libvirt/XML things, which can
    now be replaced by using ordinary API calls; especially $g->add_domain.

commit 38f35a91f67a6283ec8651377916b3f865521e77
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 2 13:05:30 2013 +0100

    tests/data: Update README and comments about initrd binary files.
    
    These are used for testing the C, not Perl, file_architecture API.

commit f38c3e8f4d43cd69264940b85e449694883e4c85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 2 12:27:34 2013 +0100

    New API: feature-available.
    
    This API is an easier to use version of the existing guestfs_available,
    because the new API returns true/false instead of throwing an error
    when a feature from the list is not available.
    
    In truth we've had this implementation internally in the library
    and several tools and in Sys::Guestfs::Lib for a long time.  This
    change just turns it into a publicly consumable API.

commit 977a15d725754dc05f6a422c8c519246e997027c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 2 10:14:51 2013 +0100

    virt-ls, virt-edit: Remove references to Sys::Guestfs::Lib and other irrelevant Perl libraries.

commit 2cd058ed546e919e271810cbe9a610e0f9b5c60c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 1 20:29:17 2013 +0100

    java: Make test cases depend on jar file.
    
    This fixes parallel builds.  The error you would have seen was:
    
      error: error reading libguestfs-1.21.25.jar; zip file is empty

commit 8ce91ee70fda7b6b0baa68a52ac4ef08bec8aefc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 1 20:28:16 2013 +0100

    java: 'make clean' should remove whole api/ directory.
    
    This directory (containing HTML documentation) can be removed
    completely when making clean.  CLEANFILES cannot recursively remove a
    directory, so use a clean-local rule instead.

commit 936c740ee29fb29de9e326cc40a3c4813bb5b206
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 1 11:57:22 2013 +0100

    build: Change various check rules so they implicitly act like 'make -k'.
    
    Rules such as 'make check-valgrind' are implemented using a for-loop.
    They would always exit after the first error, even if 'make -k' was
    used at the top-level.  Since 'make -k'-style behaviour is generally
    more useful, change these for-loops so they run all the tests, and
    report errors at the end.

commit a0e4163372223913117684c486805198feb669e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 1 13:31:16 2013 +0100

    make clean: Remove *~ (editor backup) files.

commit ed189fb942f1ba0f68518be99fe7569984aae77b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 1 11:40:35 2013 +0100

    make clean: Clean contents of tmp directory.

commit 1d3ee609c29b00b7ded02fd53cd9a05a6391b41b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 1 11:35:26 2013 +0100

    valgrind: Write separate log files in tmp/valgrind-<DATE>-<PID>.log
    
    Current code wrote a single valgrind.log in the top-level directory.
    This was overwritten with each valgrinded program, which wasn't much
    use.  The new version writes multiple separate valgrind-*.log files
    containing the date and PID (so each is unique).
    
    It would nice if valgrind could delete log files that don't contain
    errors, but this doesn't appear to be possible.

commit fe0c6fcec41c1f12f4c8aa9e3ec6c41081050aa1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 31 21:58:46 2013 +0100

    "attach method" is from now on known as "backend".
    
    This large, but mainly mechanical commit, renames "attach method"
    everywhere to "backend".
    
    Backwards compatibility of the API (guestfs_{set,get}_attach_method)
    and environment (LIBGUESTFS_ATTACH_METHOD) is maintained, but in new
    code use guestfs_{set,get}_backend and LIBGUESTFS_BACKEND instead.
    
    The default backend (launching qemu directly) is now called 'direct'
    instead of 'appliance', although you can still use 'appliance' as a
    synonym.

commit cb5bca1afe8c7e0d14d73c2740b2945a066cc831
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 31 22:54:23 2013 +0100

    build: Clarify output of 'make help'.

commit ecaa41d3954b4e3d635b164e51f02c1e4c40b9de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 30 22:56:06 2013 +0000

    Version 1.21.25.

commit fec84a64eebc7363212f0bc09513f0d18c99ad81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 30 19:44:39 2013 +0000

    docs: Remove obsolete sections from libguestfs gotchas.
    
    These refer to old behaviour in long-unsupported versions
    of libguestfs.

commit 9e27db21c17a9b38e08a3a32fa9e96184caf42f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 30 19:43:52 2013 +0000

    docs: Refresh API overview section.

commit 443a95a33a73caa38fc36f06e5f59d3af16b79e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 30 19:28:29 2013 +0000

    docs: Alternate ways to list filesystems through the API.

commit b79c0c7cb4a9f656834cbc3f9505d707ee372e3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 30 19:02:35 2013 +0000

    FAQ: Update distro support section.

commit 8642ab460261f46a2d9211ee5df469d6de31b88c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 30 18:16:51 2013 +0000

    debian: Allow test-virt-alignment-scan-guests.sh test to be skipped.

commit d08f670f6705b9615c514d382928210654f2f91c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 30 16:26:25 2013 +0000

    tests/guests: Add 'guests-all-good.xml{.in}' libvirt test guest set.
    
    This differs from 'guests.xml' in that there are no guests with
    missing disks, etc., so we can use this to test virt-alignment-scan
    accurately.

commit 055f7bc8f321fbe6245af9dc2b908840a6cc9e88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 30 12:52:12 2013 +0000

    parallel: Propagate errors from worker threads and exit with error code.
    
    In virt-df and virt-alignment-scan, ensure that errors that happen in
    worker threads are propagated all the way up and result in
    exit(EXIT_FAILURE).
    
    Note that this makes the align/test-virt-alignment-scan-guests.sh test
    fail (for a genuine reason).  This is fixed in the following commit.
    
    This updates commit 8b90f55dc733e358a0892d8e6e5c67fe2cc4e891.

commit e04a189325678c482f2d6fbc71307d6316326c63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 29 21:49:12 2013 +0000

    Version 1.21.24.

commit 60c804f0c3371dceb6a4dfdf158b438674e28fd6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 29 22:02:22 2013 +0000

    java: Make bindtests depend on jar file so parallel builds work.
    
    This fixes commit c36ced5e21348f5357fc70b402664c9a5d827b06.

commit 02baef6ad63c2013b70eebabafdc89410bcc6aaa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 29 21:27:56 2013 +0000

    virt-alignment-scan: Don't call exit(3) from this multi-threaded program.
    
    For more information see:
    https://bugzilla.redhat.com/show_bug.cgi?id=790837#c2

commit d6d9cd4dcbc409cb7e7408ad43a95fb7f86f4f1b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 29 20:04:11 2013 +0000

    daemon: file: Remove extraneous space after output of 'file' command (RHBZ#928995).

commit 568f373a9a10fa127dabf438241379b8771a4d47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 23:37:31 2013 +0000

    daemon: parse_btrfsvol: Perform device name translation before trying to stat the device.
    
    If using (eg) virtio-blk, the canonical name won't work unless device
    name translation is done first.
    
    This fixes commit 47b929b7893b3a76ff22760d245cb80720ae6345..

commit 261600ddb81f331c485e70fac6fb73ad0f26caa5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 23:28:10 2013 +0000

    daemon: parse_btrfsvol: Move variable decls to top, whitespace fixes.
    
    This fixes commit 47b929b7893b3a76ff22760d245cb80720ae6345.

commit c285393d93e58ceb07496d5e1f115f4dcf6705cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 23:26:15 2013 +0000

    daemon: Fix parse_btrfsvol to use STRPREFIX instead of bogus strncmp.
    
    This fixes commit 47b929b7893b3a76ff22760d245cb80720ae6345.

commit 32e2140a6c25895bbd2dbde84830a7fc2b315ca4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 20:24:25 2013 +0000

    java: Format CLEANFILES rule.

commit f99d17084e335be92fa05ee6383ea0c5323ff6a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 20:20:09 2013 +0000

    java: Enable parallel builds.
    
    This reverts commit 89404ec0ba9781b55cb3a87689bcc519e7d73ea2.

commit f1f9cb6c4e91f2bcf150b8a412b1923ca8438619
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 20:15:51 2013 +0000

    ocaml tools: Enable parallel builds.
    
    In particular, building virt-sysprep is slow because there are so many
    modules.  Enable parallel builds.  If it breaks, we should fix it, not
    work around it.

commit 577f41fba5258b9355876723e85f994673bc4bd1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 20:13:36 2013 +0000

    ocaml: Fix and enable parallel builds.
    
    We only have to serialize the two calls to ocamlmklib, since both will
    try to create a file called 'libmlguestfs.a'.  Apart from that,
    parallel builds here should be fine.

commit 142436c0db3ad25a8e7e18414db5aeafdd2ecff3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 20:12:47 2013 +0000

    ocaml: Break circular dependency of mlguestfs.cma{,x} <-> guestfs.cm{o,x}

commit 476eb44e5909a052622a99752e973c58cc9f5935
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 17:13:34 2013 +0000

    Use new-style demand-loaded bash-completion scripts.

commit af3d2013d714417b5534b1ff3f65ea646cc8a3c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 15:18:43 2013 +0000

    Version 1.21.23.

commit e0d3258ca1df800bcc7e18a384fd2d32e9ab53a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 11:40:49 2013 +0000

    bash completion: Extend this script to work with other virt tools.

commit 60316dceb5b60c793cf2f3a37cf95ba0387baef0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 13:07:22 2013 +0000

    Add --long-options option to most tools.
    
    For example:
    
    $ guestfish --long-options
    --add
    --cmd-help
    --connect
    --csh
    --domain
    --echo-keys
    [etc.]
    
    The idea of this is to make it easier to write a bash completion
    script that accurately expands --<TAB> options for each command.

commit 57ebcdbd43e640f6274c72a80a0ee116da01dbe8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 10:57:48 2013 +0000

    fish: Better tab completion for guestfish.

commit 0f453c0bdd978c31bc71dd586ec6abff77439b45
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 28 13:40:38 2013 +0000

    OCaml tools: Use Common_gettext and Common_utils modules.
    
    Share these modules across all three tools virt-resize, virt-sparsify
    and virt-sysprep.
    
    This is mostly code motion.

commit 3cef16edf70e7eee3e30e9aa41b65425234a8a17
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 23 18:57:39 2013 +0000

    osinfo: Fix declaration of guestfs___osinfo_map to work when libxml2 is not installed.

commit c006de124993ddf57718c439c69319ebdd4f97fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 19 12:01:24 2013 +0000

    Add support for: Gluster, Ceph (rbd), Sheepdog.
    
    These are not tested at all, and so probably won't work.  However the
    code and infrastructure is in place so we can fix bugs easily as they
    arise.

commit f8c1810b9fb5d81047d6323a03a1ca0a50ea4fcf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 19 12:06:48 2013 +0000

    build: Add 'make check-valgrind-with-appliance'.

commit 427e99f5c18a687c18dda7663136c2e44f578c1b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 19 12:06:24 2013 +0000

    build: Small rearrangement of Makefile.am check-slow rule.

commit 073afda2350e18fa22ba6297309f452abbf32783
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 19 12:03:16 2013 +0000

    build: Fix 'make extra-tests' to call 'check-valgrind' instead of rule that doesn't exist.

commit 0d42d37882aac225ceb8de7573fd1fa7dd2722a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 19 11:59:57 2013 +0000

    build: Turn off warning about overlength-strings.
    
    ISO apparently specified a limit of 4096 bytes/characters for strings.
    The description of the guestfish command 'add-drive' is now longer
    than this limit, causing this warning.
    
    Turn off this warning, since GCC has no problems with these strings.

commit db945bf56d6a73781b3dbca5c5d9b2f4ec2512ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 22:35:43 2013 +0000

    nbd: Update and clarify the documentation for NBD.

commit 66c924dc398572b0d7d8bed4e5e9a1536826659b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 22:35:24 2013 +0000

    drives: Make parse_servers return an int (number of servers).
    
    This is just a code refactoring.

commit 9b258ebccd7be8b15aca1c61a40a34a8bce3ec12
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 19:46:24 2013 +0000

    Version 1.21.22.

commit 05d269f0dc5ea448efa323c24f06ee6ad1d995b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 17:30:13 2013 +0000

    nbd: Allow 'unix' transport & socket to be specified.
    
    This allows the server string to contain "unix:/path/to/socket",
    thus using a Unix domain socket to connect to the NBD server.

commit 5721275b1b5efb2b835388b7cb0f2f547e07a908
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 16:42:24 2013 +0000

    tests: nbd: Ensure qemu-nbd subprocess is always killed.
    
    Even if the test fails/dies for some other reason.

commit 35c4671615ccf98bd4bb5cf2d7e04529fd8b6591
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 16:35:02 2013 +0000

    drives: Factor out common code for making a file= qemu parameter.

commit ecca07115cba6d2275ba70572ac5ce51d30d1447
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 15:48:02 2013 +0000

    drives: Allow multiple servers to be passed to add_drives.
    
    This changes the existing (non-published-in-stable) API for
    add_drives{_opt} so that instead of having separate 'server' and
    'port' parameters, now we have a single 'server' parameter which is a
    list of strings.
    
    This is so we will be able to cope with protocols such as Ceph which
    allows multiple servers, or Sheepdog which can use an implicit local
    server (ie. zero servers specified).
    
    NBD still requires exactly one server.

commit 975513b2c9a213459f4154e69695949843c5b148
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 15:47:34 2013 +0000

    inspection: Remove unused #includes.

commit 1ce32941f04587ca9356e75804c8aac7d91f9dac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 14:58:50 2013 +0000

    drives: Add a common guestfs___free_drive_source function.
    
    This refactors the code to introduce a common function.

commit bc674479f9f383fc27ca7e902bf37a112f01680d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 14:58:36 2013 +0000

    drives: Whitespace change.

commit 1c103f4ef2032db51f04464e9821a9d8fc6a4f76
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 12:04:24 2013 +0000

    drives: Change internal struct drive_source.
    
    This is just code refactoring.

commit 3376e8ef20dc6fb3a302ddc31ccd8441bbc11534
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 18 09:55:36 2013 +0000

    nbd: Note that readonly connections are not supported by the appliance attach-method.
    
    This documents the problem and links to the upstream bug.

commit 208ecb1402efbf828482d0874882bedd78b47dc2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 16 20:18:50 2013 +0000

    lib: Remove -Wswitch-default.
    
    This warning is actively dangerous.  Because it forces you to use a
    'default:' case in every switch statement, it means you can no longer
    detect missing cases in enums.

commit 48cd94b8788dee30c3bd716526acca0889f68f9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 16 20:22:26 2013 +0000

    lib: Add missing cases in switch statements.
    
    These were being hidden by misguided use of the dangerous
    -Wswitch-default flag.

commit 6be77123700d0a359ba4eb4f5a49ed01bd1d5db3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 15 22:41:01 2013 +0000

    Version 1.21.21.

commit 6cee79c01c5ea3ae892862f8820214980182542d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 15 22:40:06 2013 +0000

    appliance: Make sure cachedir has mode 0755 (RHBZ#921292).
    
    See https://bugzilla.redhat.com/show_bug.cgi?id=921292#c4

commit aa514c596a3a04df02d5d60c6c0cc1e6ddacee0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 15 22:39:45 2013 +0000

    appliance: Use ignore_value() macro instead of casting return to (void).

commit dfbbff1bc4ebafc7e87619bd9f67de1aabe855b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 15 14:43:50 2013 +0000

    drives: add_drive was only called from one place, so inline it.
    
    This is just code motion.

commit 28a2953de4411245a77d3731266c0b740aed1f6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 14 23:09:56 2013 +0000

    lib: Add direct support for the NBD (Network Block Device) protocol.
    
    You can now add remote NBD drives using:
    
     ><fs> add-drive "" format:raw protocol:nbd server:localhost
    
    (Note that you also need to add port:NNNN if the server is running on
    a non-standard port).
    
    The corresponding qemu-nbd service can be started by doing:
    
     qemu-nbd disk.img -t
    
    This commit also adds a test.

commit 75f2e6c92d0e0dcef473ccc24ec3e1b489554dc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 14 22:34:56 2013 +0000

    drives: Make drv->readonly flag into a bool.

commit ebca719169006771fb2e426a10fa91f787472292
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 14 22:15:35 2013 +0000

    drives: Refactor code to separate 'struct drive' creation from adding drives.

commit db0bb690528d23f34ea1ff994de56e84b156850f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 14 19:11:31 2013 +0000

    launch: Move code concerned with adding drives to 'src/drives.c'.
    
    Apart from adding a few comments, this is entirely code motion.

commit eab6af5a44c7d2e9401f401996282f92d09c5388
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 14 13:50:49 2013 +0000

    Add ./configure --with-extra-packages="..." option.
    
    This adds extra packages to the appliance.  It's useful for adding
    debugging packages.

commit dd519bd472555079776c62906b56bc03bad6bfc2
Author: Hilko Bengen <bengen@debian.org>
Date:   Wed Mar 13 21:13:04 2013 +0100

    Mount /run as tmpfs inside appliance (workaround for febootstrap's /init)

commit 7494649a4911ea54583f996ab2090079211c6a3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 14 12:47:40 2013 +0000

    erlang: Use $(ERLANG_LIB_DIR) to get Erlang libdir.
    
    Instead of previous custom hack which didn't work properly on Debian.
    
    Thanks: Hilko Bengen.

commit 773ae782407c698d2f2b361ca343f3a4f366161d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 14 12:20:52 2013 +0000

    README: Discourage general users from doing 'make install'.
    
    It causes plenty of problems with people have multiple parallel
    versions of libguestfs installed, and there's no benefit because you
    can easily run libguestfs and tools from the build directory.

commit 012c6b8683a9135ecb217407b0637e4f4ebf2b04
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 14 12:15:23 2013 +0000

    ruby: Support 'make INSTALLDIRS=vendor install' for Ruby as well as Perl.
    
    As with Perl, you can now set INSTALLDIRS to control where Ruby places
    its files (ie. in the site dir, which is the default, or in the vendor
    dir).
    
    The difference in file layout between 'make install' and
    'make INSTALLDIRS=vendor install' is shown below (for Fedora 18).
    
    --- /tmp/site   2013-03-14 12:14:35.740015694 +0000
    +++ /tmp/vendor 2013-03-14 12:14:13.668093944 +0000
    @@ -119,21 +119,20 @@
     ./usr/lib64/ocaml/guestfs/mlguestfs.cmxa
     ./usr/lib64/ocaml/stublibs/dllmlguestfs.so
     ./usr/lib64/ocaml/stublibs/dllmlguestfs.so.owner
    -./usr/lib64/perl5/auto/Sys/Guestfs/Guestfs.bs
    -./usr/lib64/perl5/auto/Sys/Guestfs/Guestfs.so
    -./usr/lib64/perl5/auto/Sys/Guestfs/.packlist
     ./usr/lib64/perl5/perllocal.pod
    -./usr/lib64/perl5/Sys/bindtests.pl
    -./usr/lib64/perl5/Sys/Guestfs/Lib.pm
    -./usr/lib64/perl5/Sys/Guestfs.pm
    +./usr/lib64/perl5/vendor_perl/auto/Sys/Guestfs/Guestfs.bs
    +./usr/lib64/perl5/vendor_perl/auto/Sys/Guestfs/Guestfs.so
    +./usr/lib64/perl5/vendor_perl/auto/Sys/Guestfs/.packlist
    +./usr/lib64/perl5/vendor_perl/Sys/bindtests.pl
    +./usr/lib64/perl5/vendor_perl/Sys/Guestfs/Lib.pm
    +./usr/lib64/perl5/vendor_perl/Sys/Guestfs.pm
     ./usr/lib64/php/modules/guestfs_php.so
     ./usr/lib64/pkgconfig/libguestfs-gobject-1.0.pc
     ./usr/lib64/pkgconfig/libguestfs.pc
     ./usr/lib64/python2.7/site-packages/guestfs.py
     ./usr/lib64/python2.7/site-packages/libguestfsmod.la
     ./usr/lib64/python2.7/site-packages/libguestfsmod.so
    -./usr/local/lib64/ruby/site_ruby/_guestfs.so
    -./usr/local/share/ruby/site_ruby/guestfs.rb
    +./usr/lib64/ruby/vendor_ruby/_guestfs.so
     ./usr/sbin/libguestfs-make-fixed-appliance
     ./usr/share/doc/libguestfs/example-debian-netinst-cd.xml
     ./usr/share/doc/libguestfs/example-debian.xml
    @@ -406,3 +405,4 @@
     ./usr/share/man/uk/man3/guestfs-perl.3
     ./usr/share/man/uk/man3/guestfs-python.3
     ./usr/share/man/uk/man3/guestfs-ruby.3
    +./usr/share/ruby/vendor_ruby/guestfs.rb
    
    For prompting me to fix this, thanks: Hilko Bengen.

commit 6a05f3369978f281c7538ef082db31e94574142f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 14 10:47:00 2013 +0000

    launch: Print attach-method, tmpdir, umask, euid when launching.
    
    These are only printed when debugging is enabled, but should help
    debugging hard-to-pin-down permissions problems.

commit e8fa74f41c147ac24fd20caf29ad8c4d7354223c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 14 08:56:29 2013 +0000

    tests: Make it easier to grep failures out of the log file.

commit 13a41531a887d922386bd437b3840c8215e0a58a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 13 18:45:30 2013 +0000

    Version 1.21.20.

commit 7a734f014977d78a9241bfd38e780b0754b10ad0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 13 16:59:23 2013 +0000

    utils: Fix error messages for external commands that fail (RHBZ#921040).
    
    This adds a common utility function (guestfs___exit_status_to_string)
    and a common error function (guestfs___external_command_failed), and
    uses them all over the library and tools when converting exit status
    in error messages etc.

commit 990babd74c2d916fece661d59fd508b8a29884fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 13 16:41:29 2013 +0000

    lib: Move common errors to src/errors.c.
    
    This is just code motion.

commit e3452f1407e59034ebf2d36bfd0cae97645e3703
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 13 17:19:17 2013 +0000

    rescue: Remove dead code.
    
    This pty code was defended by #if 0 ... #endif and was dead code.

commit eabdae1b865b416c1f3d98167c4780ef3920347b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 13 10:57:36 2013 +0000

    Ignore case when generating AUTHORS file.

commit 7e826d24a8b086bade79edd56ced10699479e6f4
Author: infernix <infernix@infernix.net>
Date:   Tue Mar 12 17:37:48 2013 +0000

    launch: appliance: Add custom parameters last.
    
    This allows custom parameters to modify parameters added by
    libguestfs, eg. by doing:
    
      -set drive.hd0.file=rbd:foo/bar
    
    [infernix adds the comment below:]
    
    This works for recent versions of QEMU. The way to use this is:
    
    guestfish
    ><fs> add-drive /dev/null
    ><fs> config -set drive.hd0.file=rbd:pool/volume
    ><fs> run
    
    This will probably work for more types (sheepdog, iscsi et al), but
    with the caveat that the libguestfs layers are bypassed so you'll
    *always* end up directly accessing the disk in rw mode.

commit d7a58c59019aaeb496dd294f51e93866fdb1340f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 12 13:19:26 2013 +0000

    docs: Update documentation on attach-methods.
    
    Add better instructions for getting the default attach-method.
    
    Update libguestfs-test-tool(1) to show how to enable and disable
    libvirt.

commit d5f3542d266edf62b35cf6ede4b5797fcd861fab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 12 12:35:17 2013 +0000

    php: Pass all libvirt environment variables down to PHP test scripts.
    
    Including LIBVIRTD_* and VIRTLOCKD_*.
    
    This updates commit cd40cf713991569e51b42742177e57f3dca148bc.

commit 0c0c62353f6cf116b3673afd6fdd04ca0f873eac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 23:03:38 2013 +0000

    Version 1.21.19.

commit 088650260662ef7fe72842fc2f7f7220146a16fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 18:33:17 2013 +0000

    qemu-img info: Use --output json and YAJL (JSON parser) to safely parse output (RHBZ#920225).
    
    The old parser is still used if either YAJL is not available or
    qemu-img info doesn't support the --output json option.

commit d96355d379144bd5add3e6db94f1f6721db72c3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 16:27:13 2013 +0000

    qemu-img info: Prefix parsing functions as old_parser_*.
    
    Prefix functions in this file with old_parser_... to make it clear
    this is the old / slightly unsafe human output parser, which is
    shortly to be replaced by a safer JSON parser.
    
    This is just code motion.

commit e3542a26be86faff6ffb9cf0e52aa88b7003fc66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 16:04:17 2013 +0000

    php: Fix tests.
    
    - Use ./run script to run the tests.
    - Set environment variables correctly, including $PATH.
    - Test the locally built, not installed, copy of libguestfs.

commit ae44abc7bc4bbfae621e452351f9861cc6ce0be6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 14:29:13 2013 +0000

    php: Revise README-PHP documentation.

commit daf09edc712aa61678a050c05d98f09257d94e4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 14:28:40 2013 +0000

    docs: Note that $PATH affects libguestfs.
    
    If $PATH is not set, libguestfs and/or libvirt tend to break.

commit 01a11806b2d58545929677734ec661ceb39bcbab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 14:27:25 2013 +0000

    launch: libvirt: Unset $PATH can cause libvirt launch to fail.
    
    Note this fact in the error message that is printed in this situation.

commit 6c5e2c4eac19c2238be8bf532d25068529eb5a12
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 14:05:33 2013 +0000

    launch: libvirt: Print proper dotted libvirt version.

commit eaa397bba6398c6e68a2425a3b95cb8d9b52253e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 13:44:50 2013 +0000

    php: Print libguestfs error string if test fails.

commit 3910aea3bf2f29d94e8e515bddf30353c8c0a50e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 13:44:33 2013 +0000

    php: Fix test, /dev/null format must be "raw".

commit 9a8583515ea855495a102048d4db725023e4b4fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 12:34:22 2013 +0000

    lib: Give values for each state in 'enum state'.
    
    The values of CONFIG, LAUNCHING and READY and (kind of) exposed
    through the API so shouldn't change.
    
    Use a bad sentinel for NO_HANDLE since that indicates a serious error.

commit 6648d2b19d6e2a975f60f3f98147149dc5824b42
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 12:24:03 2013 +0000

    lib: Add comment for libguestfs handle.

commit a6d4ed7352651ee161041f5ee7ffa1b7421e8e2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 11 11:03:55 2013 +0000

    RHEL 5: tests/xml: Define O_CLOEXEC in LD_PRELOAD library.

commit 7d20edf8395aefd93ba7e5c8d1a33aab80675e61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 10 20:08:06 2013 +0000

    RHEL 5: tests: Use gnulib.
    
    Gnulib defines O_CLOEXEC which is missing on RHEL 5.

commit 25e74e0ad73953ff88021e436577707cf45e289f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 9 19:25:33 2013 +0000

    RHEL 5: Replacement for 'Unix.isatty stdout' for old OCaml versions.
    
    Unix.isatty missing on RHEL 5-era OCaml 3.09.3.

commit 8680e94ce72b3c3e991c53d3d017e6395b7fd559
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 9 18:36:09 2013 +0000

    RHEL 5: gnulib: Use module mkstemps.
    
    RHEL 5 glibc doesn't have this function.

commit 662ace4277a4fa26d901bfe1fa93ed6b70a4e985
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 8 20:16:04 2013 +0000

    RHEL 5: inspect: Add macro for be32toh if one is not defined in the header files.

commit 06f0ab19a3a88e70981963c633715d8f2b5758df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 8 17:03:37 2013 +0000

    Add suppression for memory leak in libmagic.

commit 73e9a77516f4ff458656a92e6f947b4194ba3959
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 8 14:02:19 2013 +0000

    filearch: Use a more logical way to construct the cpio command.

commit bdb8378aeb0e6f3c7dd0d98c53c422a4b1b487f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 8 13:50:42 2013 +0000

    filearch: Don't print errno if cpio command fails, print command status instead.
    
    errno is meaningless here.

commit 844afc53aca9b1cf2259890192efdfefa42f8e80
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 8 13:16:37 2013 +0000

    generator: Small fix for OCaml 3.12.1.
    
    OCaml 3.12.1 (unlike 4.00.1) doesn't let you use printf formatters
    in this way:
    
      printf (if foo then "&%s" else "%s") str

commit 504b50cc183b9d9028f49dc1c7739800e5ebd0ca
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Mar 7 19:59:26 2013 +0100

    Move Ruby-related checks from autoconf to extconf.rb; add extra check for rb_alloc_func_t
    
    Ruby ships its own config.h which may or may not define the same
    relevant constants as our autoconf-generated config.h. Instead of
    trying to specify the exact path to the wanted header file we may just
    as well simply use Ruby's autoconf-inspired checks and macros.

commit 3ecb546a92b8258d9d1dc2791248cc6864919867
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 7 23:29:21 2013 +0000

    df/parallel.c: Fix if libvirt is not available at compile time.

commit 59bf8008edf45479683a8a609b6c4e5650314c2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 7 21:53:16 2013 +0000

    Version 1.21.18.

commit e0e5d00f623871fd921da22d5b8d8c070f5989ff
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Mar 7 22:15:23 2013 +0100

    out-of-tree build: Fix link creation

commit dcc4806220f702306b400673249647772744e9cc
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Mar 7 22:15:22 2013 +0100

    Still build the libguestfs-specific parts when --disable-appliance is passed to configure

commit 5d1564c5c78421d2f4f2abe3c6702e8f1552a014
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Mar 7 19:59:28 2013 +0100

    out-of-tree build: Fix localized manpages

commit 6a8eba0a18ee057f2892b5380d9e40648e748904
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Mar 7 19:59:25 2013 +0100

    out-of-tree build: don't distribute extconf.rb.in template, use generated exconf.rb
    
    Apparently, the file will only be autogenerated in $(builddir) if it
    is not already present in $(srcdir).

commit 27439d702a15fc652e048885cacbf3a168cba507
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 7 18:21:06 2013 +0000

    protocol: Handle log messages from connection layer centrally.
    
    Previously described as a "gross hack and massive layering violation".

commit 80242222628be2c19633cd641ab53429610a0f11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 7 14:55:40 2013 +0000

    protocol: Abstract out socket operations from protocol code.
    
    This creates an abstract layer below the protocol code which handles
    the socket operations.  This will make it easier to introduce libvirt
    virSocketPtr operations in future.
    
    In the handle, g->conn contains the connection to the appliance.
    g->conn is NULL when we're not connected.
    
    poll(2) is used instead of select(2).
    
    All error messages about launch failing or the appliance unexpectedly
    dying are handled by two common error message functions, and these
    contain a better explanation of what to do.

commit a373c0ae3cbebe533ca003a2f4d964715fae6ffa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 7 16:28:08 2013 +0000

    protocol: Remove message_summary code.
    
    Produces lots of output, and not very helpful.

commit 452f0aa49cb12f5ad1dcae56803e8e7e8036100d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 7 11:40:44 2013 +0000

    launch: unix: Set g->daemon_sock = -1 after closing it.
    
    This ensures we don't accidentally use the closed fd.

commit 56446588c66c2c571ef5ec07114fa353da13ec35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 7 11:39:44 2013 +0000

    lib: Rename g->fd to console_sock and g->sock to daemon_sock.
    
    This just renames the fields in the handle to more descriptive names.
    There is no functional change.

commit c55b80f2dbdb010dd5c1339e3a61fc0fafed28a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 7 11:12:04 2013 +0000

    launch: appliance: Set FD_CLOEXEC flag on console socket.
    
    The earlier (pipe-based) code never set this flag, but that was a bug,
    potentially allowing the file descriptor to be leaked to subprocesses.
    
    Set the FD_CLOEXEC flag, but also ensure it is cleared in the child
    process just before qemu is exec'd (otherwise qemu would not have a
    console).

commit 570ddad0001b6ecd8475c5849a68001800130e8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 7 09:50:36 2013 +0000

    launch: appliance: Use socketpair instead of pipe for qemu stdin/stdout.
    
    The libvirt backend already uses a Unix socket for the appliance
    console, and so for the libvirt backend the fields g->fd[0] == g->fd[1].
    
    Change the appliance backend to use a socketpair, so we need just a
    single file descriptor for qemu stdin/stdout (ie. appliance console).
    
    Consequently we can remove the array int fd[2] in the handle and
    replace it with a single file descriptor.

commit 38e7cf6fc5217c13e05a3918b06cf7d21fb0e2fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 6 21:13:14 2013 +0000

    proto: send_to_daemon is not an exported function.
    
    This function is only used inside src/proto.c, so rename
    it from guestfs___send_to_daemon to just send_to_daemon.

commit 559ce16329ddb87b455cc0aa7b7452453faff52c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 6 14:30:32 2013 +0000

    valgrind: Add suppression for memory leak found in libselinux.

commit b6a5bfe671c8340c6359297a427055a1eb43b7b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 6 11:18:14 2013 +0000

    debug: Add command to generate lots of debug messages.

commit 959731b150611b7805822414fa947b7e403e4109
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 5 17:03:21 2013 +0000

    launch: libvirt: When debugging, print permissions of appliance and sockets.
    
    When debugging is enabled, this prints out the permissions (ie.
    ls -laZ) of the appliance and sockets directories.  This should be
    helpful for debugging RHBZ#913774.

commit acfd91c50e7411339a06407af90340dd18e466b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 5 16:46:53 2013 +0000

    launch: libvirt: Rename 'is_root' as 'current_proc_is_root', and documentation.

commit a013854d8d329386bde1df9c72bb5b7685da9049
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 5 16:44:41 2013 +0000

    launch: libvirt: When root, set socket permissions to 0660 (vs 0775).
    
    Since qemu connects to both, there was no point at all in having these
    sockets be readable by other, nor executable by anyone.
    
    The sockets should now end up as:
    
      srw-rw---- root.qemu

commit b9be9f76dcdffc61c82aca86da4d3604f484d59b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 5 15:26:41 2013 +0000

    fuse: tests: Set FD_CLOEXEC flag on file descriptor.
    
    This is not required here, but it helps if the test code matches what
    the documentations says you should do.

commit 9d57d7e4ab6fa47762b46ec8081d53cad58dd677
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 5 14:06:09 2013 +0000

    Version 1.21.17.

commit bc209fa3f12ee126606dbb0b8ecf68d8f5f26b49
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 5 14:40:18 2013 +0000

    guestmount: Add --no-fork flag.
    
    This prevent guestmount from daemonizing.

commit 7de6e4cc88769c4477be65aa477e7ecc876d8121
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 5 14:05:35 2013 +0000

    Add guestunmount.1.html to the website.
    
    This fixes commit 3e9e40aee322789e7f81422f4cfd42915b36eb4c.

commit 3e2704f92f607592d893ee2327ce6a606f11c92a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 4 18:47:05 2013 +0000

    fuse: Add guestunmount program to handle unmounting (RHBZ#916780).

commit fa331483df2e4d6d3015173894657f17beeb0563
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 4 15:26:07 2013 +0000

    fuse: guestfs_umount_local is not thread-safe.
    
    Despite what the documentation may have said, it certainly was not
    safe to call guestfs_umount_local from another thread.
    
    guestfs_umount_local could generate events, call the error handler, or
    access other fields in the handle, with no locking at all.
    
    We should aim to make guestfs_umount_local thread-safe in future.
    
    See also:
    https://bugzilla.redhat.com/show_bug.cgi?id=917706

commit fade69a46d98f1ff2dec3518ea425de8d1067ff8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 4 13:28:15 2013 +0000

    generator: Generate guestfs_user_cancel.
    
    This function is now generated, so bindings in various languages
    are made automatically.
    
    Note that the function previously returned void, but now it returns
    int (although always 0).  We don't believe that this is an ABI break
    since existing programs will continue to work.

commit 4760b6f4a987c21af72ce233d7b7d5d0582916ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 4 13:22:05 2013 +0000

    generator: Add 'wrapper' flag to control when wrapper is generated.
    
    Non-daemon functions normally have a wrapper function called
    eg. guestfs_name.  The "real" (ie. hand-written) function is called
    eg. guestfs__name.  The wrapper deals with checking parameters and
    doing trace messages.
    
    This commit allows the wrapper function to be omitted.  The reason is
    so that we can handle a few functions that have to be thread-safe
    (currently just: guestfs_user_cancel).  The wrapper is not thread safe
    because it can call events and/or the error handler.

commit 3523888c60c0b3529274977a27bd5b63a5cec0fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 4 13:16:00 2013 +0000

    generator: Typo in comment: "Checking" -> "Check".

commit 189a55941128f3734ad55cf6c7bba17192e61222
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 4 09:55:33 2013 +0000

    threads: Note that even innocent-looking functions need a mutex.
    
    RWMJ was caught out by this one ...

commit 892cf1938ae6fc50990f77c2f16c15b2ff323da6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 4 09:53:10 2013 +0000

    trace: Put trace buffer on the stack instead of in the handle.
    
    This makes more sense, and makes the code slightly closer to being
    thread safe (although it's still NOT thread safe).

commit f6aa83d56748f3ad8f5d2eade223f875348c9c0e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 1 16:25:41 2013 +0000

    FAQ: Add question about running fsck on live filesystems.

commit 461fc06984a9ab058c560329c22daca685ceb8ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 1 15:55:18 2013 +0000

    Version 1.21.16.

commit 4de99480ddbc049af0939f6c8e20796bdf580337
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 1 14:44:51 2013 +0000

    lib: Check calls to xmlXPathEvalExpression for nodesetval == NULL.
    
    libxml2 xmlXPathEvalExpression can return an unusual nodeset:
    
      $1 = {type = XPATH_NODESET, nodesetval = 0x0, boolval = 0, floatval = 0,
        stringval = 0x0, user = 0x0, index = 0, user2 = 0x0, index2 = 0}
    
    Note that the nodeset is non-NULL, but the nodesetval is NULL.
    
    Check every call site and fix those that don't deal with this
    correctly.

commit b00b258cfcfcde8ce2f65f221f67215c0eb06a61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 27 22:27:23 2013 +0000

    add-domain: Move 'connect_live' function.
    
    This is just code motion.

commit 1e9e21e0533a772da4e7d75fedacb7f2af16ba46
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 27 22:24:16 2013 +0000

    add-domain: Pass SELinux label from guest to appliance (RHBZ#912499).
    
    When adding a domain (ie. guestfs_add_domain), read the SELinux
    <label/> and <imagelabel/> from the guest and use them for the
    appliance.  The appliance is statically labelled the same as the
    guest, so it is able to read its disks.
    
    However tell libvirt not to try relabelling the disks, to prevent
    libvirt from disturbing the existing labels on the disks (in
    particular when the libvirt connection is closed, we don't want
    libvirt to try to restore some other label on the disks).
    
    Updated with feedback from Matthew Booth.

commit 59e15595b0191c48962046911e3cb98c9d4355ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 27 22:18:15 2013 +0000

    launch: libvirt: Allow the SELinux label to be set on qcow2 overlay files.
    
    When a disk is opened readonly, the libvirt attach-method privately
    creates a qcow2 overlay on top.
    
    This commit lets that overlay get an SELinux label, and sets it to the
    imagelabel specified by guestfs_internal_set_libvirt_selinux_label.
    
    The above only applies to the libvirt attach-method.

commit 689d576e0c8a3a74edd2fab09f059153f08aa86a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 28 15:37:07 2013 +0000

    New internal API: internal_set_libvirt_selinux_norelabel_disks.
    
    If set, this causes <seclabel model=selinux relabel=no> to be added to
    the disk element in the libvirt XML.
    
    It has no effect *except* on the libvirt attach method when SELinux
    and sVirt is being used.

commit 9a883c5a54ca92491bc9a139958b8e97d511e61b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 27 18:41:12 2013 +0000

    New internal API: internal_set_libvirt_selinux_label
    
    This internal API sets two SELinux labels in the handle (the process
    label and the image label -- they are closely related).
    
    If using the libvirt attach-method with SELinux and sVirt, then this
    will cause the following XML to be added to the appliance definition:
    
    <seclabel type=static model=selinux relabel=yes>
      <label>[LABEL HERE]</label>
      <imagelabel>[IMAGELABEL HERE]</imagelabel>
    </seclabel>
    
    It is ignored by other attach-methods.

commit 261afa12a7dba669e467e2cfc9ce99aaba499988
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 27 22:23:34 2013 +0000

    add-domain: Refactor domain XML parsing code.
    
    This is just code motion.

commit ea3fd0907bf949f0332709f6869662277916d03d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 28 14:54:24 2013 +0000

    test-tool: Give an error if there are extra arguments on the command line.

commit 86ba6eb0df71b77f90cf2ad575d162b16b087636
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 27 18:36:22 2013 +0000

    launch: libvirt: Refactor SELinux warning code.
    
    This is just code motion.

commit bfe3497d261186bfb7a7e1b0a113d57436aa5181
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 28 13:34:42 2013 +0000

    parallel: Don't access the global handle from multiple threads.
    
    libguestfs handles are not thread safe, and it's not safe even to read
    settings from the handle from multiple threads (eg. guestfs_get_trace).
    Stop doing this in the parallel library.  This caused fairly
    reproducible segfaults when you enabled '-x' and/or '-v'.
    
    This fixes commit 34e77af1bf42a132589901164f29bd992b37589e.

commit 951edb6191b82d1c5ccc86375b7608cb06b18090
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 27 14:07:25 2013 +0000

    libutils: Don't include "guestfs-internal.h".
    
    This mini-library shouldn't access library-internal stuff.  It should
    only use the "guestfs-internal-frontend.h" header.

commit 8bde92821a689a83cc820facdb9552642c6b4bda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 27 11:07:16 2013 +0000

    lib: Move 'for_each_disk' function back into libvirt-domain.c.
    
    This function is no longer called from anywhere outside the library,
    or even outside libvirt-domain.c.
    
    This is just code motion, except for the size_t changes which are
    required in order to avoid signed overflow optimization error:
    
      assuming signed overflow does not occur when simplifying conditional
      to constant [-Werror=strict-overflow]

commit 8f0e997742d043b2a0fcfa8c5f264cfc771d03d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 22:11:40 2013 +0000

    generator: Line up GUESTFS_EVENT_ALL.

commit 1f39512d8b075012f9fa7c2493ec44d0def9971a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 22:08:53 2013 +0000

    generator: Remove "deprecated macros for internal functions".
    
    No need for these since these are internal functions that only code
    under our control should have been calling.

commit 159f98d979b1a6982a2cbe9698058989d6148411
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 17:48:56 2013 +0000

    Version 1.21.15.

commit 6d2dfe77722b0adb76cfe5a9fb28819487664fdd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 17:24:42 2013 +0000

    lib: Fix memory leak in guestfs_list_filesystems.
    
    This fixes commit 6e7f052ef40fc799605f13e21e1dc4928d274f41.

commit 3d79a7f7ec1b259356a099f72c952f3be9a4b75b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 17:00:50 2013 +0000

    tests: Add tests of guests to virt-df and virt-alignment-scan.

commit 8838e3d312d3e36309e104aa0d962c5eaaee07e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 16:47:38 2013 +0000

    tests: guests: Add blank disks plus libvirt test:// XML.
    
    You can now run virt-df and virt-alignment-scan on all of the test
    guests by doing:
    
    ./run ./df/virt-df -c test:///path/to/tests/guests/guests.xml
    ./run ./align/virt-alignment-scan -c test:///path/to/tests/guests/guests.xml
    
    which is kinda cool.

commit cb829ce9990cc01093852fa354a54bb726942c11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 14:50:44 2013 +0000

    lib: Turn guestfs___for_each_disk back into an internal library function.
    
    Since the refactoring of virt-df and virt-alignment-scan, those
    tools no longer use this function.

commit 61ea658f8d58fbf9e69beefc6f7b9c0303003b52
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 14:35:19 2013 +0000

    Partial rewrite of virt-alignment-scan to use parallel threads.
    
    See previous commit (virt-df equivalent change) for the rationale.

commit 496ef536f8f10592fc6d5bf78d78328236048706
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 25 18:46:40 2013 +0000

    Partial rewrite of virt-df to use parallel threads instead of single appliance.
    
    Previously when you asked virt-df to show stats for all your libvirt
    guests, it used a single appliance and tried to attach as many disks
    as possible to it, even disks from different guests.
    
    However this has been problematic: Not only is the code to do this
    horrendously complex, but it's also insecure, and it doesn't interact
    well with sVirt labels (see RHBZ#912499 comment 7).
    
    In the meantime we discovered that running parallel appliances gives
    you most of the performance of using a single appliance, but with a
    lot less complexity and better guest isolation (see the documentation
    in commit 680450f3b4f8c2da7a0b1d8f0bd8c2232efc4054).
    
    Therefore this is a partial rewrite of virt-df so that in this case it
    now uses parallel appliances.
    
    Notes:
    
    The '--one-per-guest' option is now the default and only way to do
    things; this option now does nothing.
    
    By default, the amount of parallelism to use is controlled by the
    amount of free memory seen when virt-df starts up (subject to some
    minima and maxima).  The user can control this through new command
    line option '-P'.

commit 99b5d26a5bf35e4de41383c081dfb404420dc4c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 13:13:59 2013 +0000

    lib: Export guestfs___add_libvirt_dom for use by virt-df and virt-alignment-scan.
    
    See the comment in guestfs-internal-frontend.h in this commit.

commit 3c363fd05eda8cb59a9bf99d66d5e8c07bcadeed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 10:02:18 2013 +0000

    tools: Introduce a mini-library for estimating max threads based on free memory.
    
    This mini-library runs the 'free -m' command and greps the output to
    estimate the max. number of libguestfs appliances we could run in
    parallel in the remaining free memory.

commit c7c60306d2b0511ea9eb58deb6dc2b03f188784b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 16:59:57 2013 +0000

    df: Always have TESTS= line even if appliance is disabled.

commit c48ab540682b250d679ccddcda9913bc327bb71e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 16:57:54 2013 +0000

    virt-alignment-scan: Set LANG=C in test.

commit f9da57a625e79480d07ed6f14cbc8b554e55da15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 26 10:05:23 2013 +0000

    lib: Add a global MIN macro to guestfs-internal-all.h.

commit 1ec904cfa3faff4738119379843900fd2468e18e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 25 17:39:11 2013 +0000

    Version 1.21.14.

commit 6bb8b8c124811ca0f4556f648782dbcfc87e80b2
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Feb 18 22:43:41 2013 +0100

    out-of-tree build: fix test-tool
    
    (Not entirely sure whether using Gnulib to replace standard functions
    is a good idea at all.)
    
    link with libgnu:
      CCLD   libguestfs-test-tool
    libguestfs_test_tool-test-tool.o: In function `main':
    /home/bengen/src/deb/pkg-libvirt/libguestfs/debian/build-default/test-tool/../../../test-tool/test-tool.c:103: undefined reference to `rpl_getopt_long'
    /home/bengen/src/deb/pkg-libvirt/libguestfs/debian/build-default/test-tool/../../../test-tool/test-tool.c:113: undefined reference to `rpl_optarg'
    /home/bengen/src/deb/pkg-libvirt/libguestfs/debian/build-default/test-tool/../../../test-tool/test-tool.c:125: undefined reference to `rpl_optarg'
    /home/bengen/src/deb/pkg-libvirt/libguestfs/debian/build-default/test-tool/../../../test-tool/test-tool.c:126: undefined reference to `rpl_optarg'
    /home/bengen/src/deb/pkg-libvirt/libguestfs/debian/build-default/test-tool/../../../test-tool/test-tool.c:109: undefined reference to `rpl_optarg'
    libguestfs_test_tool-test-tool.o: In function `set_qemu':
    /home/bengen/src/deb/pkg-libvirt/libguestfs/debian/build-default/test-tool/../../../test-tool/test-tool.c:382: undefined reference to `rpl_perror'
    /home/bengen/src/deb/pkg-libvirt/libguestfs/debian/build-default/test-tool/../../../test-tool/test-tool.c:366: undefined reference to `rpl_perror'
    libguestfs_test_tool-test-tool.o: In function `make_files':
    /home/bengen/src/deb/pkg-libvirt/libguestfs/debian/build-default/test-tool/../../../test-tool/test-tool.c:416: undefined reference to `rpl_perror'
    /home/bengen/src/deb/pkg-libvirt/libguestfs/debian/build-default/test-tool/../../../test-tool/test-tool.c:428: undefined reference to `rpl_perror'

commit d9c0a99391a76f790f62068bcb8bf37d1ba0c521
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Feb 18 22:43:40 2013 +0100

    out-of-tree build: fix daemon
    
      CC     guestfsd-9p.o
    In file included from ../../../daemon/9p.c:32:0:
    ../../../daemon/daemon.h:33:34: fatal error: guestfs-internal-all.h: No such file or directory

commit 131210fe6f68e39e1caefd6b6d9bc918113fb71b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 23 22:35:48 2013 +0000

    docs: Update guestfs-performance with parallel scaling numbers and test script.

commit 97e0a2005db2bcc9fa371184530483c42fd3c512
Author: Olaf Hering <olaf@aepfle.de>
Date:   Mon Feb 25 10:56:47 2013 +0100

    lib: avoid pragma usage in inspect-fs-windows
    
    pragma GCC diagnostic is a gcc 4.6+ feature, compilation fails with
    older compilers:
    
    inspect-fs-windows.c: In function 'map_registry_disk_blob':
    inspect-fs-windows.c:502: error: #pragma GCC diagnostic not allowed inside functions
    inspect-fs-windows.c:503: error: #pragma GCC diagnostic not allowed inside functions
    inspect-fs-windows.c:505: error: #pragma GCC diagnostic not allowed inside functions
    make[3]: *** [libguestfs_la-inspect-fs-windows.lo] Error 1
    
    Use memcpy instead of pragma to fix compile error.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit a3a8ac7e4e0789ff183aa3eabc9602773da51408
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 23 20:55:59 2013 +0000

    recipes: Add example converting from one format/filesystem to another.

commit f40c09c96e50873e89de56b6160093c628b5c475
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 23 20:32:33 2013 +0000

    daemon: protocol: Fix memory leak when receiving FileIn file (RHBZ#914934).
    
    This fixes commit 950951c67de61da27dceca8ffb2079031c13e43b.

commit 8e2ecb03666d5474ae9e645c5eab43a49939ecec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 23 19:59:04 2013 +0000

    tests: Add a regression test for RHBZ#914931.
    
    This involves adding a new test API which crashes the appliance in the
    middle of a simulated upload, then a test which uses that API to test
    for the libguestfs (library-side) crash.

commit f44ca4acfb39ecced2e2b012dc58d3897f83df0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 23 19:24:49 2013 +0000

    protocol: Don't segfault if appliance crashes during FileIn upload (RHBZ#914931).
    
    Instead of the segfault you now get a more informative error:
    
    *stdin*:0: libguestfs: error: connection to daemon was closed unexpectedly.
    This usually means the libguestfs appliance crashed.  Please enable
    debugging (LIBGUESTFS_DEBUG=1) and rerun the command, then look at the
    debug messages output prior to this error.
    libguestfs: error: /dev/stdout: write: Broken pipe
    libguestfs: error: file receive cancelled by daemon

commit b14de87db545d53d5b74fb9eae22addd82e96a5f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 23 08:18:27 2013 +0000

    run: Refer to README and correct documentation for linking to script.
    
    Any link works, even a hard link.

commit 69a5a87ac8cb7c4f31c8f01389eb17f97edf1ba3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 23 08:14:35 2013 +0000

    run: Relicense as LGPLv2+.
    
    To allow reuse in other projects and because of the equivalent change
    made by Eric Blake to the libvirt 'run' script.

commit abd938431bf45d31dd1982a3f9c13450c89dee5c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 23:20:45 2013 +0000

    Update API support.

commit 2fadc50070023f032f7d0468622c25ee8a1c9f43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 21:25:44 2013 +0000

    Version 1.21.13.

commit 453e066e82deb930d296eec82c4c1e1826577224
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 20:03:47 2013 +0000

    Use guestfs___count_strings instead of custom versions in various places.

commit ad291ae003eafffcaadf926999aed891a16c91a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 20:00:04 2013 +0000

    python: Use guestfs___free_string_list instead of custom version.

commit d936dcf760ff015156c8e7340b85b25badee36e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 19:45:44 2013 +0000

    ocaml: Use guestfs___free_string_list instead of custom-coded one.
    
    It should be possible to add the guestfs___free_string_list to
    dllmlguestfs.so, but I cannot work out exactly how to do this.  As a
    result we end up using src/utils.c directly.

commit 0e9d43be73a5ae5728e0d9370c1a9ca324f9c116
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 19:55:04 2013 +0000

    ocaml: Missing #include <config.h> in generated file.

commit 92b814b99c66a5a8526b7dc9c8193b0df57e37d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 19:45:25 2013 +0000

    lua: Use guestfs___free_string_list instead of custom-coded version.

commit 89cee642602e2ee0b32575781bf19980987ee7c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 19:24:35 2013 +0000

    fish: Use guestfs___{free_string_list,count_strings} utility functions.
    
    Instead of custom-coded versions.

commit 690e2b530fab191047322856f76d67fd416656a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 19:24:21 2013 +0000

    libutils: Add guestfs___count_strings utility function to common library.

commit f80259620e99e550e865a245be20527c74307ea3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 19:11:05 2013 +0000

    erlang: Use guestfs___free_string_list from libutils, instead of custom version.

commit 4237359e7fe87049cf19bf005532a378ee56b0a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 17:06:46 2013 +0000

    lib: Create libutils convenience library.
    
    The libutils convenience library is a place for code shared between
    the main library, language bindings and virt tools.  Note that the
    code is statically linked into both the library, each binding and each
    tool, but this is an improvement because (a) the source is shared and
    (b) libguestfs.so can export fewer private functions.
    
    Currently it contains the cleanup functions, and the functions
    guestfs___free_string_list function and guestfs___for_each_disk.
    
    guestfs___for_each_disk has changed so that it no longer
    unconditionally sets the error in the guestfs handle.  Instead callers
    can control error handling.

commit b337cd01807ad5a29fad7aa7f5fd9b161ee47a28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 17:08:53 2013 +0000

    lib: Rename guestfs_error_errno as guestfs___error_errno, etc.
    
    These are internal functions.  Very old versions of libguestfs used to
    export them, but they haven't been (and shouldn't be) exported for a
    long time.
    
    Also remove the unused guestfs_error function.

commit 1678a048b63c2f4e453e6c259a236cb7b854829c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 16:05:11 2013 +0000

    build: Remove long and mostly irrelevant comment about libtool versioning.

commit 2c0421c4fdabec994efe787bd8a9138497946ad8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 16:03:14 2013 +0000

    build: Rearrange src/Makefile.am into a more logical order.
    
    This is just code motion.

commit e3f7e34a2dd7a5cb66407d11953c5fe917391bd0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 14:03:24 2013 +0000

    tests: Add valgrind suppression for libvirt 1.0.2 memory leak.
    
    Leak reported as RHBZ#913145.

commit abbea5e5258cf40f743128bba94727c66e929333
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 14:19:09 2013 +0000

    tests: Add valgrind suppression variant for new manifestation of an old libvirt memory leak.

commit 91c0caee68e91e6dc0abda9ce056f9c42960a709
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 13:50:43 2013 +0000

    lib: Use CLEANUP_* macros to simplify XPath query code.

commit 0966f1aa1adc44638acb4c422dd6a772929c987b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 11:28:50 2013 +0000

    rescue: Improve error messages in the test script.

commit 83bfe979306a9e8dbf9478f442ad3aae04d26bc3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 10:30:44 2013 +0000

    faq: Add section for developers, including how to send patches and propose features.

commit 67ebed046b407213356222c6697bd5357e2af716
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 20 10:00:21 2013 +0000

    docs: Rewrite security section (thanks Dan Berrange).

commit 588a67b5abed6eb824c26d916ec54a639e9c241f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 19 17:35:48 2013 +0000

    Version 1.21.12.

commit a8c399c0c4032dc35e8072db6d18abb222bc95d0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 19 15:37:18 2013 +0000

    build: Only add 'serial-tests' for automake >= 1.12 (thanks Hilko Bengen).
    
    Earlier versions of automake complain if they get a configuration
    parameter which they don't understand.  The error is:
    
    configure.ac:27: error: option 'serial-tests' not recognized
    
    Use some m4 hackery to work around this.

commit 9cf7495aadd0ecda09d63586c194b0a9eac1524b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 18 16:28:14 2013 +0000

    handle: Define DEFAULT_MEMSIZE, MIN_MEMSIZE constants.
    
    This is just code motion.

commit 9f10bac9488a426293c10f75ac14195d841904f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 19 12:59:23 2013 +0000

    ruby: Add binding for guestfs_event_to_string.

commit 0d5bd29a9836c54dbd5e934e5db41749d3eef7e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 19 12:45:37 2013 +0000

    python: Add binding for guestfs_event_to_string.

commit f5e75e1185424082151549ced7e0162923ef6ee8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 19 12:45:22 2013 +0000

    perl: Add binding for guestfs_event_to_string.

commit 97a8f85991f0dc35597f48ee769fc79b4b9aa8d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 19 11:48:02 2013 +0000

    java: Use guestfs_event_to_string instead of generated code.

commit 27bceaf93a5958e874831a6d3c754369221997c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 19 11:32:59 2013 +0000

    fish: Use guestfs_event_to_string instead of guestfish-specific generated functions.

commit f6faf91864b1e93e9499c3c5a0f5dce10ccc7213
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 18 22:55:21 2013 +0000

    ocaml: Add binding for Guestfs.event_to_string and use it in events test.

commit d90c7459fef1ac3223cff923f18b0a75fa3e5b89
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 18 22:01:04 2013 +0000

    New C only API: guestfs_event_to_string.

commit 6b31e1a7d381036007419d48e5bb9c0ec60e5b6e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 18 14:02:21 2013 +0000

    handle: Translatable string in guestfs_parse_environment.

commit 7187f5847e9e77f40b54d7f0737db0b1a4e3068b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 18 13:02:59 2013 +0000

    generator: Whitespace changes.

commit 2e51ee9a77dba0d475bf53f29237cb14700f7aec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 15 14:41:56 2013 +0000

    lib: Fix memory leak when the 'lpj' setting is read from dmesg.
    
    It was failing to clean up and close the 'struct command' buffer,
    because commit 94d90f03e2bbb595890b01e2a10b63e00e976691 added an
    incomplete patch to use CLEANUP_CMD_CLOSE.
    
    This fixes commit 94d90f03e2bbb595890b01e2a10b63e00e976691.

commit 127f0a67cda48299de85307f44402ef1d14df5f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 15 14:25:25 2013 +0000

    java: Print a better error message when JVM version is too old.
    
    This fixes commit 87d1f7714f8e1b0f595bad3b7932592f0f85d54b.

commit d1a90bd2da2325b7066ad563d32b4cd150eb7ac3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 15 12:57:19 2013 +0000

    java: Note that JVM >= 1.6 is now required.

commit 4e780b29a16edcc775c8f0d2f65af6754dfc1625
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 14 22:15:25 2013 +0000

    appliance: Use a glibc trick to try to display a stack trace if a program in the appliance segfaults.

commit eecd0c651f44aea846980706064737e44de68d96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 14 15:38:40 2013 +0000

    Version 1.21.11.

commit 55a189d879ca4979e197000133934615f4a69907
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 14 16:33:01 2013 +0000

    tests: mountable: Add test-mountable-inspect.sh to EXTRA_DIST.
    
    This fixes commit 7d976657e6f02ca0b61858f668ae792a70327309.

commit 1f091ff588806833cfa371cd0a15afbd4a2a29c4
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Feb 13 10:38:59 2013 +0000

    Fix API doc errors

commit 88946a4be5272a4a77b2a679b2b7d4130b0a93c6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Feb 13 10:30:51 2013 +0000

    gobject: Fix doc generation of L<guestfs(3)/CVE-2010-3851>

commit ec4ee5d238783bab395bcc6746a4b5163964f42b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 12 17:09:44 2013 +0000

    daemon: Fix RESOLVE_MOUNTABLE, internal_parse_mountable.
    
    - The mountable->volume field was not being initialized on the
      device path.
    
    - XDR string fields cannot be NULL.
    
    This fixes commit 7d976657e6f02ca0b61858f668ae792a70327309.

commit fd1e458582abead2771c09ee68084e65a12712e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 12 17:02:33 2013 +0000

    tests: mountable: Print error message if guestfs_create fails.

commit bc7ef7bc3ab25e690f961b2e081ecf0b6188fb4c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 12 17:01:44 2013 +0000

    tests: Add Fedora btrfs phony guest to target list.
    
    This fixes commit 754e8194382a9ed265c7fa172e438049e4eb8389.

commit e1fe23a447bcd9b3eacb0e9ca599784b2a43753d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 12 17:00:10 2013 +0000

    tests: Reorder the tests so test guest is created before it's used by mountable test.
    
    This fixes commit 7d976657e6f02ca0b61858f668ae792a70327309.

commit f5cd6a9fc615f0cb9c7b6aa4667d96cd435f21f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 12 15:18:17 2013 +0000

    examples: Ensure each example program is documented.

commit 1577bf9b50155dd8a49da2aa7bba71e41a6305a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 12 15:02:43 2013 +0000

    examples: Rename example programs, replacing '_' with '-'.

commit e41f1d62dc2f533025d727a5639b0827409a2f25
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Feb 7 15:49:51 2013 +0000

    mountable: Test inspection of fedora image

commit 96fb9c6eded9feac294d61bc2f7731bcb4078be4
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Feb 7 14:06:13 2013 +0000

    inspect: Update inspect_os to use mountables
    
    This fixes inspection of guests which use btrfs subvolumes.

commit 16f81d041399038e754fe5f871f41deb4ef32f94
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Feb 6 10:32:35 2013 +0000

    New internal API: internal_parse_mountable

commit ef91b4461585c7f6c04f509fae085b35088d8ad8
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Feb 12 14:45:19 2013 +0000

    build: Minor cleanup in daemon/Makefile.am

commit 68a4343bee0f6bf4bf15929fb86dc57cad56802a
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Feb 7 15:36:01 2013 +0000

    btrfs: Make a stub Fedora btrfs guest for inspection testing

commit dfe0f562c7033df22e3987314f0cb9351a547473
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jan 25 16:13:19 2013 +0000

    mountable: Make list-filesystems return btrfsvols

commit 2bc907c3caf301f0fbc7b15d2272b0295e96d87f
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jan 25 14:49:35 2013 +0000

    btrfs: Update btrfs_subvolume_list to take Mountable_or_Path
    
    btrfs_subvolume_list can now take either the path of a mounted btrfs
    filesystem, or a mountable describing the location of a btrfs
    filesystem, or one of its volumes. In the latter case, the filesystem
    will be automatically mounted outside of /sysroot before running the
    btrfs tool, and unmounted afterwards.

commit 8d8c15ce369bc04a976b1e77cfbf29bf3f16babe
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jan 25 14:30:40 2013 +0000

    mount: Add mount_vfs_nochroot
    
    This internal function allows mounting a mountable outside /sysroot.

commit d0bd615881225aa10f326e76124b1b190be59632
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 12 11:56:42 2013 +0000

    faq: Add common questions about virt-resize/virt-sparsify in place support.

commit 1d0aff4d91d076668d4f0105fc7c397402b8a737
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 12 11:56:16 2013 +0000

    faq: Fix some small typos in section on virt-sparsify.

commit 2c1de52d1c8b3499a9ff7114fc0ba00d4064c336
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 12 11:55:45 2013 +0000

    faq: Update RHEL information.

commit f4baf6561c518fc262031d2e259e9de3f95d7d85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 12 10:55:26 2013 +0000

    test-tool: Point to SELinux documentation for further information.

commit c361f70a2d02ec7e3070181b195eecaacfe75bd4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 21:44:39 2013 +0000

    examples: Add all the C examples to the guestfs-examples(3) man page.

commit 936b09f4dd62b120e782220652163dfd8834d670
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 21:36:27 2013 +0000

    build: Separate out *_CPPFLAGS from *_CFLAGS.
    
    This is pretty pointless.

commit c84fa57cfa38b4676f54a030bb4c30d542f96e34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 21:22:25 2013 +0000

    test-tool: Get rid of the "=== Test starts here ===" banner.
    
    It confuses things, because that is not always the start
    of the output.

commit cca7a8822afdbee694eababfc058c245ac4b3a5d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 21:21:01 2013 +0000

    test-tool: Display SELinux status in output of libguestfs-test-tool.

commit 8d65dd8ed58edb781355fc54aaacb3eba428baa9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 19:38:55 2013 +0000

    Version 1.21.10.

commit a18a564d5a1ce57b47ed3b2fa1d082ae5708e35e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 17:35:11 2013 +0000

    tests: Add a regression test for stack overflow in events (RHBZ#909624).
    
    Note this is a check-slow test since generating 1,000,000 progress
    events take a few minutes.

commit c73e31d1976a3c7068afb76cb2fad010d10edabf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 17:55:59 2013 +0000

    proto: Fix stack overflow when there are many progress events (RHBZ#909624).
    
    Thanks: Eric Blake.

commit 0ed324143db8f8a43b53f45ab949dc116785593e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 17:28:10 2013 +0000

    daemon: Allow rate to be specified in 'debug progress'.
    
    There are now two forms of the 'debug progress' command:
    
    (1) debug progress <n> (the original form) generates ordinary
    rate-limited progress messages for <n> seconds.
    
    (2) debug progress <n> <rate> generates progress messages every <rate>
    microseconds for <n> seconds.
    
    The second form omit the usual rate-limiting, and so wouldn't
    be generated like this from an ordinary API call.  However this
    is useful for testing events (see RHBZ#909624).

commit 13c7f65172d8fa670bc22cccbfe098cbe3d554a3
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jan 25 14:48:05 2013 +0000

    mountable: Implement Mountable_or_Path
    
    A Mountable_or_Path argument is passed as a mountable_t. A new type is
    added to mountable_t to handle already mounted paths.

commit 395e2a9a6f77eae9cb4a5d818c45166d9060568a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 15:49:12 2013 +0000

    lib: Add format attribute for GCC 4.8 in two places.

commit f2957c53e5a13db19a45798f0f97907ea24fbbd3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 15:48:49 2013 +0000

    daemon: Force disable -Wsuggest-attribute=format warning around asprintf_nowarn, for GCC 4.8.

commit ab752d0d12af2e2556870c0b5ffc89adfcf997c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 15:59:28 2013 +0000

    lib: Define GUESTFS_GCC_VERSION in the internal header.
    
    Note that you have to use this as follows:
    
    #if defined(__GNUC__) && GUESTFS_GCC_VERSION >= x0y0z /* gcc >= x.y.z */
    
    since GUESTFS_GCC_VERSION is not defined unless it's GCC.

commit 832a8ec44863d2187cd53606ff4caf2bf62cd278
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jan 24 15:21:14 2013 +0000

    generator: Create Mountable_or_Path, initially identical to Dev_or_Path

commit e745c7d09da549810887eecd496c340ce4155079
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jan 24 10:10:13 2013 +0000

    mountable: Implement Mountable support for all apis which take it
    
    A Mountable is passed from the library to the daemon as a string. The daemon
    stub parses it into a mountable_t, which it passes to the implementation.
    
    Update all implementations which now take a mountable_t.

commit 69be5a131ad1f572d02b43fd26ee39572f6f44d2
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jan 24 09:25:31 2013 +0000

    generator: Convert relevant arguments from Device to Mountable
    
    This change updates the api style of all apis which should take Mountable
    descriptions rather than block devices. It also updates the documentation
    accordingly, but doesn't implement any functional changes.

commit 83e85e8f042fd7d6b3749b1278e770c15b87f7c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 14:13:59 2013 +0000

    test-tool: Document how to change SELinux settings.

commit 44151bc255f8c336ba0e66b383431ad3b0684477
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 14:05:26 2013 +0000

    test-tool: Document how to run with alternate libvirt.

commit 150787aef4f9800e9a56a31f458f30312dc9e1f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 13:41:40 2013 +0000

    test-tool: exec qemu in the wrapper script.
    
    This ensures that libvirt can control qemu directly, eg. being able to
    send it signals.

commit 57cb5074b7f1a9c5d8342a90718b677a8b0204dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 13:20:37 2013 +0000

    test-tool: On i386, upstream qemu program is now called 'qemu-system-i386'.
    
    For a while, the upstream qemu i386 emulator has been called
    'qemu-system-i386' (instead of just 'qemu').  Fix test-tool so it
    calls the right program.

commit cd1800b622dc091f5593f8cb1ffa13430a58671d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 13:18:26 2013 +0000

    test-tool: Don't call guestfs_set_qemu before guestfs handle is initialized (RHBZ#909836).
    
    Because of evolution of the code, if the user used the --qemu or
    --qemudir options, libguestfs-test-tool would segfault because
    guestfs_set_qemu was being called before the guestfs handle was
    opened.
    
    Change the code so this doesn't happen, and also remove the global 'g'
    variable to make the code a bit more robust.
    
    Bug found by Amit Shah.

commit 7fd25d9946fb873cb51bfbd110b661842a9e6d08
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 12:07:30 2013 +0000

    daemon: link: Remove use of PATH_MAX.
    
    Replace readlink calls with gnulib areadlink function.

commit 6b26bff34e07dd5289b17323d5b0de83286a503a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 11:59:35 2013 +0000

    daemon: xattr: Remove use of PATH_MAX.

commit c869e7c15900eaf1800bf0eb0ceff3800e5a255e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 11:52:40 2013 +0000

    daemon: realpath: Remove use of both PATH_MAX and NAME_MAX.

commit ecadd758f5dc26e0cfa158b3d7623893d3e97f04
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 11:37:59 2013 +0000

    daemon: initrd: Remove use of PATH_MAX and other cleanups.
    
    - Move variables to the top.
    - Rearrange comments to make more sense.

commit d2528b413570121627ef9ce7e9fa581397d89641
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 08:43:01 2013 +0000

    daemon: find0: Remove use of PATH_MAX.

commit a28a01aee1a6b7fb1492ff6ef7703a3fc6eaa3f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 11 12:43:48 2013 +0000

    getline: Rename &n parameter as &allocsize.
    
    The second parameter passed into getline(3) is the size of the
    allocated buffer, *NOT* the length of the returned line.  This can be
    confusing, so rename this parameter as 'allocsize' consistently
    throughout the code.
    
    This is just code motion.

commit 57d6cb4620a16c9ddf34ccee277b5a3a6b5e14ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 9 22:38:24 2013 +0000

    docs: Improve reasons for using libguestfs-make-fixed-appliance.
    
    Thanks: Richard Harman.

commit 346c782230777de3e6099ed54d76b64027075144
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 9 21:17:41 2013 +0000

    launch: libvirt: Make it clear that setsockcreatecon debug message is just a warning.
    
    This was disturbing to some users, but other users saw the warning
    when it was really something they should pay attention to.  Make it
    clear that it's a warning, unless people are really using SELinux +
    sVirt.
    
    Thanks: Richard Harman.

commit 7402a9dc68e157884b8b12e3c717a616e19cfd04
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 9 21:02:11 2013 +0000

    Version 1.21.9.

commit 777db20ae5377887df437fa81d20e142a78e4939
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 9 20:52:40 2013 +0000

    rescue: Count the mountable filesystems when displaying the 'suggest' message.

commit 2c447dc7c82af48cd23df3b2b1907859d41d61e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 9 17:34:53 2013 +0000

    tools: Use CLEANUP_* macros in several C tools.

commit e6280d2bc27eb7c21bbf1036bcb09a883bc76c38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 9 17:48:30 2013 +0000

    generator: Export libxml2 CLEANUP_* macros unconditionally.
    
    These call abort() if libxml2 is not actually installed, but that
    should never happen inside the library or tools.

commit 25374f6e581c6554e59b8ba7ce00ae84f926c578
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 8 18:10:44 2013 +0000

    lib: Define CLEANUP_CMD_CLOSE macro and use it throughout the library.

commit 87941ff961ab77abf19a6a940a87e27f16390af9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 8 14:14:06 2013 +0000

    tools, tests: Use "guestfs-internal-frontend.h" header.
    
    Instead of redefining STREQ, etc.

commit 92c796e87c4b9bbfe4cf4d6388877eb6361ea327
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 8 14:10:41 2013 +0000

    lib: Use CLEANUP_FREE_<struct>, CLEANUP_FREE_<struct>_LIST macros in a few places in the library.

commit a1f08692648962dbccf5d1f115a91985f25d7c91
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 8 13:39:47 2013 +0000

    lib: Add CLEANUP_FREE_<struct>, CLEANUP_FREE_<struct>_LIST macros for API structs.
    
    For example:
    
     {
       CLEANUP_FREE_STAT struct guestfs_stat *stat = guestfs_stat (g, "/foo");
    
       // stat is freed automatically when we leave the scope.
     }
    
    The new header file "guestfs-internal-frontend-cleanups.h"
    includes definitions for these.  It should not be included
    directly.

commit f44a6eb11e341d97a767a4c62e7cb09848b71b68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 8 13:53:33 2013 +0000

    lib: Allow guestfs_free_* functions to be safely called with a NULL pointer.
    
    This is so they work just like 'free'.

commit e5352762330a8e1d6aecd504220b64515bad2b42
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 8 16:00:27 2013 +0000

    lib: Remove explicit defines of _BSD_SOURCE.
    
    An equivalent is defined already in <config.h>.

commit 40b07f7d53316d4b661d939525365db88ea9e098
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 8 13:38:37 2013 +0000

    generator: Add #ifndef defense around guestfs-internal-actions.h file.

commit de9d90a640bb94399c9a13136d2aa87985bb916a
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 23 13:46:33 2013 +0000

    generator: Add new Mountable argument type
    
    This type is initially identical to Device.

commit 878fbd7a98d7b0c8185760b803d2586ce9ff5b15
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Feb 8 14:53:05 2013 +0000

    inspect: Fix improperly ignored error in check_filesystem

commit a90d6e53ea0cf16ade20c52afe19ef5a2ba4b389
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Feb 7 11:22:46 2013 +0000

    inspect: Don't re-implement list_filesystems in inspect_os

commit 36e14850da8a6fa1d236574b79258225082e2c0e
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Feb 7 11:04:38 2013 +0000

    Fix bogus partition number passed to guestfs___check_for_filesystem_on
    
    Partition number was being passed to guestfs___check_for_filesystem_on
    based on an index in list_partition. However, this ignores the
    possibility of multiple block devices.
    
    This change makes guestfs___check_for_filesystem_on examine the
    passed-in device directly to determine if it is a whole device, or
    what its partition number is.

commit 07da91132af8291762bfe535fac9e16b5cf56afe
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Feb 7 10:39:00 2013 +0000

    New API: is_whole_device

commit 32ee05f6e44ddffbce99c4fa30c64e95bf907b10
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Feb 7 14:18:02 2013 +0000

    btrfs: Fix btrfs_subvolume_list on F18 (RHBZ#903620).
    
    The output of btrfs subvolume list has changed in F18 to include generation,
    which breaks the parsing in btrfs_subvolume_list. This change replaces sscanf
    with a more robust regular expression. The new regular expression should also
    handle the addition of future unexpected columns.

commit ce64e03d858bebb2e63f1d4de61d05d246ca171e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 6 14:27:39 2013 +0000

    daemon: Check parameter of base64-out and tar-out before running external command (RHBZ#908322).
    
    For base64-out, check the filename parameter exists and is not a
    directory.
    
    For tar-out, check the dir parameter exists and is a directory.

commit e0ad2fba0f05a04eb69d15aa70f0a8d2950730f6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Feb 4 14:11:57 2013 +0000

    generator: Add visibility to action struct
    
    The visibility field in action replaces in_fish, in_docs and internal.
    The defined types are:
    
    VPublic:
      A public API. This is exported and documented in all language
      bindings, and in guestfish.
    
    VStateTest:
      A public API which queries the library state machine. It is exported
      and documented in all language bindings, but not guestfish.
    
    VBindTest:
      An internal API used only for testing language bindings. It is
      guarded by GUESTFS_PRIVATE in the C api, but exported by all other
      language bindings as it is required for testing. If language
      bindings offer any way to guard use of these apis, that mechanism
      should be used. It is not documented anywhere.
    
    VDebug:
      A debugging API. It is exported by all language bindings, and in
      guestfish, but is not documented anywhere.
    
    VInternal:
      An internal-only API. It is guarded by GUESTFS_PRIVATE in the C api,
      and not exported at all in any other language binding. It is not
      documented anywhere.

commit 7f7d70de3b9baa6ba7b4d00816564c97562f91de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 6 13:27:26 2013 +0000

    daemon: download: Add extra check that download file is not a directory (RHBZ#908321).

commit e6fcc07fa1f9656834c492f6254b3282deb1adb5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 6 13:14:07 2013 +0000

    daemon: Add more information to certain calls to perror.
    
    Replace selected calls to 'perror (filename)' with:
    
      fprintf (stderr, "syscall: %s: %m\n", filename);
    
    so that more information is available about precisely which syscall
    failed.
    
    Note this is *not* reply_with_perror.  These messages are only printed
    in verbose output, for the benefit of debugging.

commit f1581160390ff22728ab350502076a9eccf5c74b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 6 12:59:00 2013 +0000

    9p: Missing call to reply_with_perror.

commit 0be4b07e53177c2fb3cb10c63227b77585b4b3e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 5 20:27:25 2013 +0000

    Version 1.21.8.

commit c5e921736a642189c801080a9327406a36712c27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 5 15:31:05 2013 +0000

    Use 'supermin' and 'supermin-helper' in preference to febootstrap.
    
    Febootstrap has been renamed upstream to 'supermin':
    https://www.redhat.com/archives/libguestfs/2013-February/msg00004.html
    
    This commit changes libguestfs so it can use either program to build
    the supermin appliance.

commit f8d50f5b477bcc0a13efb719c6115268b06b4d9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 4 19:43:25 2013 +0000

    daemon: Call wipefs before mkfs to work around pathological behaviour in btrfs.
    
    See: RHBZ#907554, http://www.spinics.net/lists/linux-btrfs/msg21197.html

commit 78723201cd410afd9299566f619e281fe4efe6f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 4 21:47:52 2013 +0000

    FAQ: Update section on sVirt.

commit fcecaa7f348189c8a0890949b99fcf883aa3ab62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 4 13:12:28 2013 +0000

    build: Add src/guestfs-internal-{all,frontend}.h to EXTRA_DIST.
    
    This fixes commit ec3b75e5ffd1abea1400f6609ae9c61eab0dfa71.

commit 4942974460d2cabd79f88e4f545bc7ab94b575da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 4 13:03:25 2013 +0000

    Version 1.21.7.

commit be6998ebb8a17b2e244bfd86e491a618bb659593
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 4 11:49:52 2013 +0000

    fish: Be stricter about boolean values.
    
    Previously I noticed that bfan used this command without any error:
    
    ><fs> hivex-open /WINDOWS/system32/config/software write:ture
                                                       ^^^^^^^^^^
    
    This was because the code allowed any string to be evaluated as a
    boolean.
    
    The new code is stricter.  It allows the following strings only case
    insensitive (everything else is an error):
    
      1
      true
      t
      yes
      y
      on
    
      0
      false
      f
      no
      n
      off

commit 0cecf973bfce1b29f901eac26a4af47dcaaa26c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 4 12:17:31 2013 +0000

    ruby: Include "guestfs-internal-frontend.h" in extension.
    
    Also undefine '_' symbol defined by Ruby's internal headers.
    
    This fixes commit ec3b75e5ffd1abea1400f6609ae9c61eab0dfa71.

commit e0182f4c683c60c767cd540fc73d3aaff4240124
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 4 11:49:04 2013 +0000

    perl: Include "guestfs-internal-frontend.h" in XS file.
    
    Also undefine '_' symbol defined by Perl's internal headers.
    
    This fixes commit ec3b75e5ffd1abea1400f6609ae9c61eab0dfa71.

commit ed146e36848762bc65fb4ff2c7b1bc1a82f8b3f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 2 15:24:23 2013 +0000

    README: Format the list of requirements better.

commit 27df15a6114802594174f47d20aa3913cb7efa65
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Feb 2 13:56:19 2013 +0000

    Update copyright dates for 2013.

commit ebc19e267a45cac9d547c2810e739a4e57ec7df1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 1 16:18:42 2013 +0000

    fish: Use CLEANUP_* macros in a lot of places.

commit 63239dd73b1b2330ddcb2a7af2e8977a1187ef73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 1 15:54:13 2013 +0000

    fish: Use CLEANUP_FREE in parse_config.

commit 8513e45898cf8455dda657661ffdb1ba127b1429
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 1 14:39:54 2013 +0000

    Remove TMP_TEMPLATE_ON_STACK macro.

commit f021b8267db764fe43258c94d772867da4574614
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 1 14:16:51 2013 +0000

    Remove all occurrences of the bad_cast (lowercase) function.
    
    Not to be confused with the libxml2 macro 'BAD_CAST' which converts
    from 'signed char *' to 'unsigned char *'.
    
    The 'bad_cast' function was defined and used all over the place as a
    replacement for a '(char *)' cast.  I think it is better to make these
    casts explicit, instead of hiding them in an obscure function.

commit bdd6ca339d799a7aa7f385d3ed6200faf5d3322d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 1 13:43:38 2013 +0000

    Rearrange internal header files.
    
    This commit rearranges the internal header files.
    
    "src/guestfs-internal.h" is just for the library, as before.
    
    "src/guestfs-internal-frontend.h" is for use by all library, bindings,
    tools C code, but NOT the daemon.
    
    "src/guestfs-internal-all.h" is for use by all C code including the
    daemon.
    
    This is just code motion, but it has some important consequences:
    
    (1) We can use the CLEANUP_* macros in bindings and tools code.
    
    (2) We can get rid of TMP_TEMPLATE_ON_STACK.
    
    (3) We will (in future) be able to stop bindings and tools code from
    using the safe_* allocation functions (which are NOT safe to use
    outside the library alone).

commit 91471695c8fbaf31f87271c1350a36fd60f41113
Author: Cole Robinson <crobinso@redhat.com>
Date:   Wed Jan 30 15:05:13 2013 -0500

    tests: Handle changing QEMUDIR
    
    qemu-wrapper isn't regenerated if QEMUDIR is changed, so just
    delete it and force regeneration.
    
    Additionally we can drop the silent binary check, since
    check-with-upstream-qemu-1 already does a similar test with --version
    that will actually report an error to the user.

commit eb582a366822ce6c061fae67b0afe4315108b321
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 30 16:48:43 2013 +0000

    Make internal-only functions and structures private
    
    Certain functions are intended to be internal only, but we currently
    export them anyway. This change moves them into a separate section of
    guestfs.h protected by a GUESTFS_PRIVATE variable. This change also
    enables private structs, but doesn't implement any.
    
    This change only affects the C api. Language bindings aren't affected,
    but probably should be in the future.

commit 4ad55eb2ee58d141f5339c018b146cadf9fb502d
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 30 10:34:55 2013 +0000

    build: Fix haskell dependencies and parallel build
    
    Without this change all the tests in the haskell bindings are rebuilt
    every time. The primary motivation for this change is to fix this.
    
    The fix for the above also allows parallel builds to be re-enabled.

commit 01c23c255b275077724893ef5527b233d1f32b98
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Jan 29 15:23:46 2013 +0000

    build: Add common rule for sources shared between daemon and library

commit 00d1c9f52776ddba4ffdd896e616a9aef8ebfd2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 29 10:19:12 2013 +0000

    daemon: hivex: Rewrite filename param of hivex_commit to include sysroot (RHBZ#905341).

commit 93d1bea55647efcab99919b8e808c5476603e798
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 28 18:42:05 2013 +0000

    Version 1.21.6.

commit 4515f2f3a91d976dba7c33d7129346217c84914f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 28 15:06:07 2013 +0000

    daemon: Use the new CLEANUP_* macros to simplify code.

commit 59375e29bc985a810ab74530e9b65a587bec9318
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 28 15:05:23 2013 +0000

    daemon: Add CLEANUP_* macros which automatically free memory when leaving scope.
    
    cf commit 98b64650c852ccc9a8eef8b9691052faeb4873c8

commit d80596424e5f2315de363d2c36a6c4335720835a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 28 15:04:11 2013 +0000

    daemon: Allow free_strings (NULL) and free_stringslen (NULL, ..).
    
    Equivalent to free (NULL).

commit d3652b535163415e26cd2d27739c8f94dd2cb382
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 28 14:16:17 2013 +0000

    lib: Further use of CLEANUP_* macros.

commit 6ef81e59dff9dbb6812b8a01cf41dd04b00aa4c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 25 15:54:40 2013 +0000

    launch: libvirt: Use CLEANUP_* macros.
    
    Also implement macros for cleaning up libxml2 objects.

commit 29fae16b88a2ebcfa4f7d7fc94ad378bbff28d3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 24 17:07:38 2013 +0000

    inspect: Use CLEANUP_* macros in inspection code.

commit 205050f91cabfb9a15d5d3353044ccfb1e96547c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 24 16:19:37 2013 +0000

    lib: Add CLEANUP_* macros which automatically free things when leaving scope.
    
    Use the macro like this to create temporary variables which are
    automatically cleaned up when the scope is exited:
    
      {
        CLEANUP_FREE char *foo = safe_strdup (bar);
        ...
        // no need to call free (foo)!
      }
    
    The following code is also valid.  The initialization of foo as 'NULL'
    prevents any chance of free being called on an uninitialized pointer.
    It may not be required in all cases.
    
      {
        CLEANUP_FREE char *foo = NULL;
        ...
        foo = safe_malloc (100);
        ...
        // no need to call free (foo)!
      }
    
    This is also valid:
    
      {
        CLEANUP_FREE char *foo = ..., *bar = ...;
        ...
        // no need to call free (foo) or free (bar)!
      }
    
    The CLEANUP_FREE_STRING_LIST macro calls guestfs___free_string_list
    on its argument.  The argument may be NULL.
    
    The CLEANUP_HASH_FREE macro calls hash_free on its argument.  The
    argument may be NULL.
    
    Important implementation note:
    ------------------------------
    
    On GCC and LLVM, this is implemented using __attribute__((cleanup(...))).
    
    There is no known way to implement this macro on other C compilers, so
    this construct will cause a resource leak.
    
    Important note about close/fclose:
    ----------------------------------
    
    We did NOT implement 'CLEANUP_CLOSE' or 'CLEANUP_FCLOSE' macros.  The
    reason is that I am not convinced that these can be used safely.  It
    would be OK to use these to collect file handles along failure paths,
    but you would still want a regular call to 'close'/'fclose' since you
    must test for errors, and so you end up having to do:
    
      if (close (fd) == -1) {
        // failure case
        // avoid double-close in cleanup handler:
        fd = -1;
        ...
      }
      // avoid double-close in cleanup handler:
      fd = -1;
      ...

commit 13ec9500151e43e480b3f99618b0a4ef1bc427ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 25 12:39:28 2013 +0000

    Allow guestfs___free_string_list (NULL).
    
    Equivalent to free (NULL).

commit 6802d76bc2c677dcf3d005c5c9a28333be81708e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 28 13:08:56 2013 +0000

    perl, python, ruby: Add definition of EVENT_ALL in these languages.

commit b0ee48f0215047f44509cda12d1d89c8ab332661
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 28 13:05:13 2013 +0000

    generator: Define all_events_bitmask.
    
    In the C bindings, use this more accurate mask instead of 'all bits
    set'.
    
    In the Java bindings, use this instead of open coding.

commit 36afabe552bc8273ace56c9ea5782a180e7ad9c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 28 13:08:35 2013 +0000

    header: Minor whitespace fix.

commit 1cd44b459241bb2bfa69e1394ca65fcde95c31e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 28 13:06:11 2013 +0000

    header: Deprecate LIBGUESTFS_HAVE_* in favour of GUESTFS_HAVE_*.

commit 130782c25f948d8615618797cbc5e37c3e34c7e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 26 18:27:33 2013 +0000

    header: Link to guestfs-examples(3) man page from header file.

commit 21a8940f75cd7b1d15916bae5b6af24f4378a962
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jan 24 14:58:15 2013 +0000

    Update vim line length to 70
    
    Apparently this makes it the same as emacs or something.

commit 06f110972ec8b95f750b26d0e64c1bf88221510b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 24 13:09:16 2013 +0000

    python: Inherit from 'object' base class.
    
    This fixes the following Debian bug:
    http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=698771
    
    For an overview, see this question and the links from there:
    http://stackoverflow.com/questions/4015417/python-class-inherits-object

commit 39038602d9d21968cd97d1b0e63857d29d405cf8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 22 14:43:37 2013 +0000

    launch: libvirt: Add 'is_root' flag to the params struct.
    
    This is just code motion, but it allows us to read this flag inside
    the 'construct_libvirt_xml_seclabel' function in future (as a possible
    way to fix RHBZ#890291).

commit 846233df6557c80784808847a942baa8e99ce3e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 22 13:50:57 2013 +0000

    libvirt: Add debugging when opening libvirt handle.
    
    When debugging is enabled, this produces output like below.  This is
    useful when diagnosing what URI libguestfs is using.
    
    libguestfs: opening libvirt handle: URI = NULL, auth = virConnectAuthPtrDefault, flags = 0
    libguestfs: successfully opened libvirt handle: conn = 0xb05580

commit 66461ddc491bcf7aacd3f599612b456cd8b107ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 22 13:45:11 2013 +0000

    launch: libvirt: Refactor seclabel code.
    
    This is just code motion.

commit 50e5d531eb97e9e8f59d5882a1b19b379b2efd32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 21 22:16:07 2013 +0000

    Version 1.21.5.

commit 3a2672cdf04b9e61d3ee38f14bd9a5846a41c11f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 21 16:59:23 2013 +0000

    fuse: Use guestfs_rename to implement rename(2) syscall (RHBZ#895910).

commit f3463af99ee7f9848802196dcbbd5faa3909b2b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 21 16:58:54 2013 +0000

    New API: rename: Rename file within the same filesystem (RHBZ#895910).

commit 5b96f26875416139aaee90687bb2743126c60e29
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jan 21 15:57:23 2013 +0000

    docs: Fix cut/paste error in pread_device

commit 2d493c888ce9d644194030e29d1174f0b40a55f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 21 14:30:32 2013 +0000

    fuse: If guestfs_last_errno returns 0, don't return no error to FUSE layer.
    
    guestfs_last_errno (g) == 0 doesn't mean "no error".  It means the
    errno was not captured.  In this case we have to substitute some sort
    of errno, so choose EINVAL arbitrarily.

commit b713e884c7cc827781b23a79bcced795ad3bda53
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 21 13:41:23 2013 +0000

    daemon: Change ln, ln-f (hard-link) APIs to use link(2) instead of external ln (RHBZ#895905).
    
    The reasons to do this are twofold:
    
    (a) It's probably a tiny bit faster.
    
    (b) It lets us capture the real errno if the link(2) syscall fails.
    
    The errno is also passed through guestmount, fixing RHBZ#895905:
    
    + guestmount -a test1.img -m /dev/sda1:/ -m /dev/sda2:/boot /tmp/mnt
    + touch /tmp/mnt/foo
    + cd /tmp/mnt
    + ln foo boot/foo
    ln: failed to create hard link ‘boot/foo’ => ‘foo’: Invalid cross-device link

commit 529d1c2c1d634ead854e6be35e751ea8ffbacbb1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 21 11:14:14 2013 +0000

    Fix checksums-out command (RHBZ#895904).
    
    This was broken by the earlier
    commit 0306c98d319d189281af3c15101c8d343e400f13.
    
    This commit also adds a regression test.

commit b8d82bcba6261e003065f725df47383513af8ae5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 21 08:15:54 2013 +0000

    tests: virt-make-fs: Allow btrfs to be skipped.

commit ea228bbb51b9666d62c6c6733f474689de4c51e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 18 17:23:43 2013 +0000

    tests/qemu: Don't require LVM for these tests.

commit ef3b70f4b0fa86b7de7be36c548f8aa37b507e23
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 18 08:18:24 2013 +0000

    Version 1.21.4.

commit b820851df6b9903acc850b379ba9848066976d99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 18 07:11:13 2013 +0000

    daemon: lvm: Fix various paths relative to new lvm_system_dir.
    
    This fixes commit 9fd41abd40c3ffc10985e862dc34c868360a1b22.

commit edd3fa6fc2447b9d4a820611829500bc573fd33a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 18 07:12:23 2013 +0000

    tests: Don't construct the guests in parallel.
    
    In automake 1.13, check_DATA is now built in parallel, resulting in it
    trying to build 4 or 5 guests in parallel.

commit 5c4bf454c9b8b01984811141e4a50aaecef66346
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Jan 17 23:59:22 2013 +0100

    Fix packagelist for current Debian-based systems

commit 569060d9e58fde6b2eb666105d18092d15b31433
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Jan 17 23:59:21 2013 +0100

    inspector: Fix tests for out-of-tree builds

commit 9800b9f13e340c676b21205062b4b27a25830fbc
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Jan 17 23:59:20 2013 +0100

    erlang: fix bindtests for out-of-tree build

commit 17f82203abf4933a7a1c4b6a1bcc3af496eda614
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 18 06:42:13 2013 +0000

    appliance: Add libcap to the appliance (thanks Skippy VonDrake).

commit 281631d7178ba300082fd37f7ebf92475d3ea469
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 17 18:21:20 2013 +0000

    automake: Force serial-tests.
    
    automake 1.13 started to use stupid parallel tests by default,
    breaking everything.

commit 0a44df527b8ec603b03c840b98603d889fa23a96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 17 18:10:14 2013 +0000

    FAQ: Document "Could not allocate dynamic translator buffer" and how to fix it.

commit bb005ce41ba3e46a7a5bd1e8fceb57d5173a0e88
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jan 4 12:54:18 2013 +0000

    gobject: Add pkg-config for gobject bindings

commit 666f1b6af2ba25aeecd93a602c04cc502c4d32b4
Author: Olaf Hering <olaf@aepfle.de>
Date:   Wed Jan 2 16:13:06 2013 +0100

    daemon: copy entire lvm directory
    
    cp will fail if /etc/lvm is an empty directory. Copy the entire
    directory and adjust environment variable.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>
    
    RWMJ:
     - Fixed a couple of whitespace issues.

commit 67b3a0b2729e812e4fd2b1696dce28d4716d76d8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 17 09:43:59 2013 +0000

    Version 1.21.3.

commit 4b57395b2357287367cedecaf5daf0f6ee1d5681
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 16 14:28:10 2013 +0000

    ruby: Use updated package names, but allow fallback to the old names (RHBZ#894545).
    
    Thanks Dominic Cleal.

commit 7928c52591d2bba40e41bd1d179634cc08ad3cc1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 16 11:30:07 2013 +0000

    daemon: Suppress two false positives from Coverity.
    
    Using // coverity[...] or /* coverity[...] */ comments in the source
    it is possible to suppress specific Coverity errors.  The suppressed
    error should occur in the line following the comment.
    
    In this case I have suppressed two false positives from Coverity:
    
    (a) We deliberately assign to a NULL pointer in order to cause a
    segfault, for testing how the library reacts when this happens.
    Coverity flags this, but it is not an error in this case.
    
    (b) Coverity does not model global variables (a known shortcoming).
    Therefore the code 'errno = posix_memalign (...)' cannot be modelled
    by Coverity, even though the code is correct.  Coverity raises a false
    positive about this.
    
    (Thanks Kamil Dudka, Coverity)

commit a255613db9d914a9d20bbd7587d3ab35f98877ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 10 06:25:30 2013 +0900

    podwrapper: Refresh podwrapper man page.
    
    This also adds a rule so you can do:
    
     make podwrapper.1
    
    if you want to read the documentation as a man page.

commit 65a30ee5413b0401ec12a3c6bb3ca240ad6f543c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 4 05:07:16 2013 +0900

    java: Implement the event API.

commit e74e72768a81208f73bf2d9e63f268a75d8bed21
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 8 11:29:31 2013 +0900

    java: Use defined constants for flags in call to guestfs_create_flags.

commit dbcd7525875fc9a0c9f595e2de2b5a01b8d06e7f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 7 23:41:46 2013 +0900

    java: Change synopsis in man page to show use of add_drive.

commit c10bd5008356baf307409c1d0a2e127e3398c6c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 7 06:46:09 2013 +0900

    java: Tidy up javadoc.

commit c5d3a2cbd7f191bf000e5665addd942a15acd431
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 9 12:28:23 2013 +0900

    Refresh README file.

commit e506d130a261c6413e18d17e7c5009a38e0863aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 4 12:33:48 2013 +0900

    Update copyright dates for 2013.
    
    On generated files in git and README.

commit 31f7bd7cc83cdca10a3e97b24382d071be6694af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 29 14:28:47 2012 +0000

    haskell: Use unused bogus data types.

commit 2cfd9e3e09819a38e44803616b771889e1d7ccbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 29 13:57:24 2012 +0000

    haskell: Typo in man page, lists -> list.

commit 059849a80ef210bcf1a1824b4bfd2c9bc53a8655
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 29 13:38:13 2012 +0000

    haskell: Implement 'head' and 'tail' by hiding the Prelude functions.

commit c4c787ec6702c5d46b1ad267f1563032d215797f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 29 13:35:07 2012 +0000

    haskell: Use 'import Guestfs as G' in test code.
    
    The code is equivalent but shorter.

commit 9bfad62bde6c7035690e3b7bbece7a6a9f7dea88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 29 12:48:23 2012 +0000

    haskell: Document current state of Haskell bindings.

commit f9acc14353812d8fb740a5e0187bd1734642b158
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 29 13:13:17 2012 +0000

    haskell: Fix RHashtable in the generator.

commit a96029b7b845c2d4e1c266b06f9ebd018a93788a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 29 13:12:52 2012 +0000

    haskell: Use .NOTPARALLEL in this directory.

commit dae49d4d4ff147abfed62163f77b605a583a3c6b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 28 21:34:28 2012 +0000

    haskell: Fix RStringList in generator.

commit bc31eca5d8c1df3b957274c13e998810dc9d9030
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 28 20:44:36 2012 +0000

    haskell: Add tests of config functions.

commit 12240732f2bda83b0d07c16936eda698935cefc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 28 20:19:20 2012 +0000

    haskell: Allow non-appliance tests to run when !ENABLE_APPLIANCE.

commit 917db83d766386774f594be5f81dc9919c41dd63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 28 20:17:31 2012 +0000

    haskell: Renumber tests according to Perl scheme.

commit 3af207a92b3b933bd1d6322466e555849a83c0c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 28 20:11:23 2012 +0000

    haskell: Enable RString, RConstString in generator.

commit b6f782b2de46d2859a5f11f6b50cdda48c88101b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 28 19:59:31 2012 +0000

    haskell: Enable RBool in generator.

commit 208750b0386d63b015166f4c20bf4c6fc62889b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 28 19:55:01 2012 +0000

    haskell: Replace deprecated INCLUDE directive.
    
    The INCLUDE directive is obsolete.  You must now put the name of the
    include file before the C function name.

commit ab879c7f5a14272c39d20b3e0a17e5b32dbd88c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 27 20:02:31 2012 +0000

    arm: Recomment vexpress-a15 instead of vexpress-a9.
    
    Neither works (because of lack of PCI) but A15 emulation is probably
    better than A9 emulation.

commit d81a91bf4ad6692992092ea344d8b7bfe7a7ca36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 27 20:01:15 2012 +0000

    launch: appliance: Fix parsing of QEMU_OPTIONS.
    
    If there was no quoting character, the options could run off the end
    of the string and into whatever string which happened to be following
    in memory.
    
    This bug was revealed when libguestfs was compiled on arm.

commit b67ddde9a9bd5c67de7129b5460a38d642a3c25d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 27 19:36:33 2012 +0000

    launch: appliance: Small refactoring of virtio-scsi detection code.
    
    This is just code motion.

commit 9ceabdd82ee3788a2ecb25aeae17ef570e52d12b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 27 18:52:31 2012 +0000

    Fix whitespace in configure.ac.
    
    Standardize on 4 spaces for indentation in configure.ac file.
    This is just a change of whitespace.

commit 31bb64b2d0bd9a9e6c01e0dc3f951dcdf209bd7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 27 18:05:40 2012 +0000

    arm: Prevent -Wcast-align warnings.
    
    See link below for a general description of the problem:
    
    https://github.com/libguestfs/hivex/commit/f8b62e4cd2f65cd712164c59094e81f2958aa000

commit 062d32f6475769706471348cf0265ae3cf41902a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 27 15:56:51 2012 +0000

    arm: Only use -device sga if qemu supports this device.
    
    qemu-system-arm does not have the sgabios device.

commit 486439b941408391c574254314f370dffe7962ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 27 15:27:16 2012 +0000

    lib: Remove useless cast.
    
    'strings' is declared as char **, so the return type of
    this expression will already be char *.  The cast is both
    useless and potentially hides errors.

commit 1836f3c465698116a1cf92a7c9a4dc118b6c8e0f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 24 09:48:41 2012 +0000

    build: Fix ./configure --with-febootstrap-yum-config option.
    
    This fixes commit bfddae7ceefa4a419ff56848122a46c71c4d6a3c.
    
    Also tested that all variants actually work.

commit 4f0458d3ca5d2b1f1f160c3d7c042a5a843af63d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 22 22:42:29 2012 +0000

    Version 1.21.2.

commit 7d8822d22b302c2d1451fb1a08a5e037dcc4abcd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 22 17:26:44 2012 +0000

    build: Change --with-febootstrap-yum-config to --with-febootstrap-packager-config
    
    For the rationale behind this renaming, see:
    https://github.com/libguestfs/febootstrap/commit/b8cbe191d0f03af1f6a42a07795995b16d5a8c24
    
    You can still, for the time being, use
    ./configure --with-febootstrap-yum-config
    but it's preferred to switch to the new option.  The new option is
    identical, just renamed.
    
    Qe still pass the deprecated --yum-config option to febootstrap
    itself, since both old and new febootstrap support this.

commit 7aa5bef32be4a670bc0d19bbe797bb274ae134e2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 20 15:33:12 2012 +0000

    inspection: Set fs->device field on swap devices.
    
    For some reason the fs->device field was not set for swap devices.
    
    Apparently this did not matter before (this bug has existed since at
    least libguestfs 1.16), but in commit 6ee80b8dac we started to depend
    on the fs->device field being non-NULL.  This resulted in segfaults
    when inspecting any guest which had a swap device, eg:
    
     #0  __strcmp_sse42 () at ../sysdeps/x86_64/multiarch/strcmp-sse42.S:164
     #1  0x00007ffff7d740cb in parent_device_already_probed (g=0x703a70,
                            partition=0x6f79b0 "/dev/vda4") at inspect.c:156
     #2  0x00007ffff7d73e00 in guestfs__inspect_os (g=0x703a70) at inspect.c:83
     #3  0x00007ffff7cee11d in guestfs_inspect_os (g=0x703a70) at actions-1.c:397
    
    This commit sets fs->device to the device name.
    
    (Thanks Matthew Booth for first noticing this problem.)

commit 10716a98f6b8012ae4ddd7e54831ba55c36f7fac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 20 12:09:49 2012 +0000

    Pass noapic on i686 kernel command line.
    
    qemu 1.2 i686 TCG is buggy and hangs when emulating APIC.
    https://bugzilla.redhat.com/show_bug.cgi?id=857026

commit c36b9c922caf0ceec6679bcf02f7a28c67bf5d28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 18 20:39:46 2012 +0000

    faq: Suggest 'approx' (apt proxy) to speed up Debian builds.
    
    Thanks Hilko Bengen.

commit dc3082e92f1e2e0b677fef2d8799cc5aa4ba4e81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 18 17:29:21 2012 +0000

    tests: Skip windows.img tests if it is zero-sized.
    
    If ntfs-3g is not installed, then tests/guests creates a 'windows.img'
    file which is zero-sized.
    
    This is problematical because other tests which use this image will
    fail at best, or hit RHBZ#847549 (qemu/virtio-scsi bug) at worst.
    
    Change the tests which use windows.img so they skip if 'windows.img'
    has zero size.

commit 549e03c8257eb289df51dbf0ca910740e79d2185
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 18 16:26:17 2012 +0000

    build: Add 'make print-subdirs' rule, useful for selectively running tests.
    
    If you want to selectively run tests, or if the test suite fails half
    way through, use:
    
      make print-subdirs
    
    to print the subdirectories, select the ones you want to run / the
    remaining ones, and do:
    
      make check SUBDIRS="..."

commit bccf0dc747926caf4ed173fed760c3a5ff76c2d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 18 11:51:42 2012 +0000

    daemon: Make gdisk into an optional dependency and optgroup.
    
    Also document that gdisk is a dependency at all.
    
    This fixes commit 956e30effa25eee00fb9e8f5303a6a1fe7409037.

commit 72a8cd4b9dbb351507be9cf8188842a582bb30dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 18 08:55:06 2012 +0000

    lua: tests: If $LUA is not set, set it to 'lua' instead of '/usr/bin/lua'.

commit a8aaa5ccbc21934ca2f419a62a36848f89814b7c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 18 08:53:34 2012 +0000

    lua: Fix misapplied patch.
    
    This fixes commit 5b70120293f3702f290fba5023a7016fa5ff1beb.

commit 22eef1886e11d8090855cf642557543a370576e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 18 08:43:06 2012 +0000

    ruby: Disable -Wstrict-prototypes warning for Ruby headers.

commit dccddf4a30f5dd2371ee8a9ab1c1ee3b5b1ec337
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 17 22:36:27 2012 +0000

    docs: Properly document attach methods in the guestfs(3) man page.

commit 85cf9ffc60b40cb095776d1315b6311a03060566
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 17 23:01:11 2012 +0000

    lua: Fix Lua configure test on Fedora.
    
    On Debian, the lua pkg-config file is called "lua5.1.pc" (etc)
    whereas on Fedora it's called "lua.pc" for all versions.

commit 71fb6a1b866a89886e846e7fa2e5f42fa62066c5
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Dec 17 22:24:03 2012 +0100

    lua: Use correct binary for tests

commit 0a94db15e023e24329d54094e023f13850228993
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Dec 13 20:44:40 2012 +0100

    lua: Add ifdefs for Lua 5.2 compatibility

commit 1f560cdb8ed2b8fac454af543cbf5612c921d409
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Dec 13 20:44:38 2012 +0100

    lua: Use pkg-config to determine Lua version, parameters

commit 4e8eee4ded1ee938a6bab35e3e92e8b5f1225714
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 17 19:27:12 2012 +0000

    daemon: Use pvcreate --force option (RHBZ#887971).
    
    pvcreate fails if the partition contains a swap space signature.  Use
    more force to stop it from complaining.

commit 651a95d227452fdcb6b80b27a849019035ca6adf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 17 12:25:03 2012 +0000

    Version 1.21.1.

commit 4f764e47928919eb0f4ad72fc66b7f1e611028ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 17 12:37:01 2012 +0000

    list-filesystems: Ignore MBR type 0x42 (Windows dynamic disks) (RHBZ#887520).

commit 87ccdc8dd70a99e50d0b9c99218515019adb60e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 17 12:24:29 2012 +0000

    sparsify: Document that virt-sparsify doesn't work well on multi-disk VMs.
    
    See: http://bugzilla.redhat.com/887826

commit 7c75ea5be2c7910b3060c001cebbafd826463f8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 16 21:28:19 2012 +0000

    launch: libvirt: Improve loop invariant from previous commit.
    
    This fixes commit 11b6293d1bf7a6c0133c609e0e8067b4422dc794.

commit e68b85fd2da5fb7036b8b1b0591c1cff18071df4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 16 20:56:39 2012 +0000

    launch: libvirt: Parse capabilities XML and fail early if qemu/KVM not supported (RHBZ#886915).

commit 9b56d1683eecd144d385e3cf498f514b741adbee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 16 18:35:31 2012 +0000

    daemon: Fold stdout on stderr when running e2fsck.
    
    User Phill Bandelow noted that virt-resize fails with an e2fsck error
    on a host where the system clock had been accidentally set in the
    past.
    
    Unfortunately this was hard to diagnose because guestfsd 'ate' the
    stdout of the e2fsck program.  I have verified by code inspection that
    e2fsck prints messages on stdout.
    
    Thus this changes the daemon to fold stdout and stderr together so we
    get to see all error messages from e2fsck when it fails.

commit b2dcc00bfa374258fc6ccf561c13a6094c6d53d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 15 20:20:15 2012 +0000

    build: Improve 'make help' output description of 'make extra-tests'.

commit 2ee4a0137beea1ee936cd5bcca2e9c4ca0bf3aa9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 15 20:15:12 2012 +0000

    build: Better formatting for 'make help' output.
    
    This is just whitespace changes.

commit eb5fe367ba10c7cf5367e5e737c954ae5754ed50
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 15 20:10:25 2012 +0000

    build: Show 'make -k check' as a possibility in 'make help' output.
    
    Thanks to Cole Robinson for this suggestion.

commit e90b65b85d2a74420002288760807b7b61b2e7f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 15 18:14:05 2012 +0000

    ruby: Enable C compiler warnings.
    
    This has the desirable side effect that the correct CFLAGS get passed
    to the C compiler when building the Ruby extension.

commit be8643cb7f46462860c2d911dedae68dbecd3e23
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 15 18:06:11 2012 +0000

    python: Enable C compiler warnings.

commit c0cc1341e39c001dfdb68181634f19fb3f6d999e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 15 17:19:53 2012 +0000

    Change the handling of private functions, safe_malloc etc.
    
    Rename guestfs_safe_malloc et al to guestfs___safe_malloc etc.
    
    To use the private functions, code now has to define
    -DGUESTFS_PRIVATE_FUNCTIONS=1.  This will make it easier for us in
    future to work out which programs are using these functions and to
    minimize both the number of programs and the functions they are
    calling.
    
    Note that the Perl, Python, OCaml, Ruby and Java bindings use
    guestfs_safe_* calls.  None of the other bindings do.  This is a bug
    (in the bindings using those functions): these functions will call the
    out of memory callback on failure.  This function defaults to abort(),
    and since this happens from a language binding, there is no way to
    change this default.

commit b1a34e484b6c9bb78d00898aea8e4c457de4b777
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 15 17:03:11 2012 +0000

    guestfs.h: Fix use of __attribute__ and GCC < 4.
    
    I guess no one uses GCC 3 any more, because if they did, including
    <guestfs.h> would not work since GUESTFS_DLL_PUBLIC would not have
    been defined.
    
    At the same time, ensure that __attribute__((noreturn)) is only used
    when the compiler is GCC >= 3.1.

commit 8ff2da04c8324623beb3e158dd9cfd73235f3825
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 14 21:54:13 2012 +0000

    inspection: Don't call guestfs_hivex_close if previous guestfs_hivex_open call failed.
    
    (Thanks Skippy VonDrake)

commit a49a283c3926752529ef53449b125c6bf0faef68
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Dec 14 14:01:08 2012 +0000

    daemon: Add sentinel attribute to commandf and commandrf
    
    Causes a compiler warning to be emitted if you omit the trailing NULL argument.

commit 86e2343879cd2948cb948d821bea8989bcdc94f5
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Dec 14 15:53:27 2012 +0000

    Add support for getting and setting GPT partition type GUIDs
    
    New APIs:
      part_set_gpt_type
      part_get_gpt_type

commit ea568927ce529ec2176ce20cc41e8f17d6d1bd66
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Dec 13 15:22:39 2012 +0000

    daemon: Remove redundant fork in commandrvf
    
    Currently the code is doing a redundant fork when passed the
    COMMAND_FLAG_CHROOT_COPY_FILE_TO_STDIN flag. The additional
    sub-process does a chroot() which has no effect because all file
    handles are already open at that point, then simply copies its input
    to its output.
    
    This change simply replaces the above with a dup2 of the passed file
    handle to STDIN of the command process.
    
    RWMJ:
      Don't initialize 'pid' variable.

commit 3384f1af4a3f1d4052132a114272ca2b537e4625
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 13 17:53:36 2012 +0000

    configure: Change minor from .20 to .21 for new development branch.

commit 841cf95170ed84f2b08f8320e3ea820b84ea7742
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Dec 13 15:22:38 2012 +0000

    daemon: NFC Use symbolic names in commandrvf
    
    Improve readability of commandrvf() by replacing bare int values for
    file descriptors with their symbolic names STD{IN,OUT,ERR}_FILENO.
    
    Also add PIPE_READ and PIPE_WRITE for referencing relevant ends of a pipe.

commit 2fcc4c086b7d70a261dbe74dd528c4bc7fd48772
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Dec 13 16:03:32 2012 +0000

    daemon: fix directory outside current root when executing commands
    
    When executing a command, we temporarily chroot, fork and exec the
    command, then chroot back. We intentionally don't chdir in the parent
    process so that we can 'jailbreak' the chroot later. However, this has
    the effect that commands are executed with a current working directory
    which is outside the current root.  This unusual state can cause
    errors in executed commands which don't anticipate it.
    
    This change does a chdir("/") before executing and command. This
    happens inside the fork, so the jailbreak isn't affected in the
    parent.

commit f90197f77d8ce81d7de470231d47cf28352b2d9d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 13 13:20:49 2012 +0000

    Version 1.20.0.

commit 4fa0bd467227d9fd8b170f773fbb40a479724a6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 13 11:47:14 2012 +0000

    proto: Free drives array when qemu subprocess dies abruptly.
    
    Commit ed7fda161e1f3d0beb02a368fcbcf5ed95dcdac1 changed the g->drives
    linked list into an array, and also made a subtle change to the
    (undocumented) semantics of drives in the rare case when qemu is
    relaunched.
    
    Every time we go back to the CONFIG state, we should free the drives
    array.  However there was one place where this was not happening.
    This was caught by the tests of the protocol, but only when using the
    default (appliance) method, not the libvirt method which we were more
    interested in testing in Fedora.
    
    When testing on Debian using the appliance method, we therefore hit
    this bug for the first time.
    
    This relates to or fixes the following commits:
      commit 9df159b34a9e41e6f36c5435869a54396b92a864
      commit 33f49d85c2a82e66f33cedccb2dbd14faa6070dd
      commit ed7fda161e1f3d0beb02a368fcbcf5ed95dcdac1

commit 461e8552e5b2a49b1ceb7c272672fb38deb5805c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 13 11:45:36 2012 +0000

    debian: Allow test-disk-labels test to be skipped.

commit 1c4ee123ebdffebd723144ca82043f05d92739e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 13 10:46:22 2012 +0000

    launch: appliance: Disable virtio-scsi if qemu <= 1.1.
    
    Debian Wheezy (7) ships with old qemu 1.1 which claims to support
    virtio-scsi but in reality it's broken.
    
    Disable virtio-scsi in this case.

commit 3d613eacd9152caddf98a71d9328c26cb3c330d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 13 10:38:45 2012 +0000

    launch: appliance: Parse qemu version.

commit 7e855f9afc12456368dd33199402257a248d5cd3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 13 08:50:12 2012 +0000

    docs: Add website index.html.in to stable release documentation.

commit 6b2de40892badf2931fc6761187d09ee02a0aa66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 12 17:36:26 2012 +0000

    release notes: Update bugs list because one more bug was fixed.

commit 678f92a496f0526d3586cb1dd85389b65566ba00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 22:55:27 2012 +0000

    Update gnulib to latest version for libguestfs 1.20 release.

commit fd2a3ef355da6ae78ce9f12ed8361eb5062a0274
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 22:00:19 2012 +0000

    docs: Add gnulib update to stable release documentation.

commit e091e59ff9927f1461e96096ebac50aeb810c535
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 21:55:58 2012 +0000

    build: Fix 'make help' output.
    
    check-valgrind-local-tests -> check-valgrind-local-guests

commit 5a8c67b71d2b71b8a5773143ffd637d0f84185b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 21:21:16 2012 +0000

    Update API support ready for libguestfs 1.20 release.

commit 91fe4423bb5da2fe83203a1bb7545a5516d254ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 10:40:42 2012 +0000

    launch: libvirt: Label sockets with svirt_socket_t (RHBZ#853393).

commit 8a6ea0f422e6eaf22a644ea3205a448f681cbe63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 17:16:13 2012 +0000

    Update AUTHORS and BUGS files.

commit 81b7d5f905c0f111a8ecc31647f076bbceb7955e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 17:15:49 2012 +0000

    Push and pull latest translations from Transifex.

commit c757831b81764bf522dc1a208be29937af9e11b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 17:02:04 2012 +0000

    Update ROADMAP for libguestfs 1.20 release.

commit 8c42623acc6e81d6d520bc5583eed5fd0e794bf0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 11 16:29:35 2012 +0000

    Update release notes and get ready for the libguestfs 1.20 release.

commit d1ad87760cbbfa188abd77787389a0d683606396
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 6 13:42:36 2012 +0000

    Add support for Windows dynamic disks (libldm / ldmtool) (RHBZ#782167).
    
    New APIs:
    
      list-ldm-volumes
      list-ldm-partitions
      ldmtool-create-all
      ldmtool-remove-all
      ldmtool-scan
      ldmtool-scan-devices
      ldmtool-diskgroup-name
      ldmtool-diskgroup-volumes
      ldmtool-diskgroup-disks
      ldmtool-volume-type
      ldmtool-volume-hint
      ldmtool-volume-partitions

commit eb38de837a42a888b353b825f3d3b1dbda297760
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Dec 11 15:01:12 2012 +0000

    inspect: Remove unused is_mountable field from filesystem struct

commit cb27dba4aec85302007f3eed3615cbc149ffd552
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Dec 11 15:01:11 2012 +0000

    inspect: Remove unused is_swap field from filesystem struct

commit c3856654217e44284a6a8db8ded4f772f05429a3
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Dec 11 15:01:10 2012 +0000

    inspect: Remove unused content field from filesystem struct
    
    RWMJ: Don't remove entire if-clauses.

commit 07e431414122fb287fb6cbd194d957345d9bd577
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 10 19:58:30 2012 +0000

    docs: Copy-edit documentation of the private data area.

commit 93041b94c5273217238463235b2c86eced495332
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 10 17:23:41 2012 +0000

    guestfs-performance: Some copy-editing.

commit 0a5e83b76ac8f94d445b7f0d789eff6cc380cbe4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 10 16:18:39 2012 +0000

    daemon: Generate the code when libraries are statically not available.
    
    Since we as developers rarely test the case where some library is
    statically not available, that side of the code was hardly tested,
    except by unfortunate users in the field who often hit cases where
    functions were missing or misdeclared.  In fact, when making this
    change I noticed several bugs like that.
    
    Change it so that this code is autogenerated, and therefore always
    correct and up to date.
    
    Previous code which looked like this:
    
      int
      optgroup_acl_available (void)
      {
        return 0;
      }
    
      char * __attribute__((noreturn))
      do_acl_get_file (const char *path, const char *acltype)
      {
        abort ();
      }
    
      /* etc */
    
    is replaced by a single line:
    
      OPTGROUP_ACL_NOT_AVAILABLE

commit d465649fbdf1d66793cda55d3abf6efe337123fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 10 16:14:42 2012 +0000

    generator: Change optgroups so second element is a list of functions.
    
    Before this commit it was a list of function names (ie. strings)
    making it hard if you wanted to get back to the original function
    definition.

commit 3e84a008cae539780291b850e72499b7bef4c974
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 10 16:13:15 2012 +0000

    generate: Simplify generate_prototype ~single_line feature.
    
    This is just code refactoring.

commit 743bc26e80ccf95b8838b4d533c11700d8917fb6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 10 15:49:48 2012 +0000

    daemon: Make sure *.h files have guards against double-inclusion.
    
    This is just code cleanup.

commit ccac3e8ced40e20021467061ce20e135904982ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 10 13:07:07 2012 +0000

    erlang: Add more tests.
    
    Since I made lots of changes to the Erlang bindings (prompted by
    Coverity), I wasn't confident that something didn't break because
    there were no real tests before.

commit 1a58aa74f15294de0bbd7f4f7797746c53f86209
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 10 12:41:47 2012 +0000

    ./run: Add Erlang support to run script.

commit 5e6a0e92003b221efea85c7a23790a0efbc33f9f
Author: Cole Robinson <crobinso@redhat.com>
Date:   Sat Dec 8 20:51:07 2012 -0500

    tests: Fix qemu-wrapper.sh generation

commit e049353e920d680524dbda16c4724f7323c5070e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 16:27:46 2012 +0000

    launch: libvirt: Avoid double-close of console socket on error path (found by Coverity).

commit af990ce1525b87e4533dd7b991c54ff58883ab04
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 16:25:09 2012 +0000

    xfs: Remove potential double-free of 'buf' in multiple places (found by Coverity).

commit 3af9d8ec9656c41679f03bc0c6ecbe462ccb4dbd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 16:22:13 2012 +0000

    lua: Add comment about unsolved, hard to fix race (found by Coverity).

commit 6330638779b074c5a2a03f95bae4f03a3f47ca64
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 16:03:27 2012 +0000

    erlang: Avoid unintentional sign extension (found by Coverity).
    
    Comment from Coverity:
    
      libguestfs-1.19.66/erlang/erl-guestfs-proto.c:115: sign_extension:
      Suspicious implicit sign extension: "buf[0]" with type "unsigned char"
      (8 bits, unsigned) is promoted in "(buf[0] << 24) | (buf[1] << 16) |
      (buf[2] << 8) | buf[3]" to type "int" (32 bits, signed), then
      sign-extended to type "unsigned long" (64 bits, unsigned).  If
      "(buf[0] << 24) | (buf[1] << 16) | (buf[2] << 8) | buf[3]" is greater
      than 0x7FFFFFFF, the upper bits of the result will all be 1.

commit 8301eca0c8f57286e085763fa08ed114e0fb0b51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 15:50:05 2012 +0000

    lib: 'tmpfile' is never NULL (found by Coverity).

commit 291e3841d0c7727e80c2b69b7d79917833d10f56
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 15:46:46 2012 +0000

    fish: Close 'sock' in remote control code (found by Coverity).

commit 68993b205513daa7c15cbaa0f3e5ec4fe2b3ff17
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 15:42:26 2012 +0000

    md: Free up 'ret' along error path (found by Coverity).

commit 8eeeaa956fa88f3e2a8a6f79b116ed6563311fb6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 15:38:54 2012 +0000

    lib: Free up the right list if guestfs_internal_lstatlist returns an error (found by Coverity).
    
    We were freeing up a list, but not the right list.

commit 0767e3e8506aa2d257fde80bb9deea7d65a5c43c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 15:32:14 2012 +0000

    fish: Don't leak stdout_saved_fd on error path (found by Coverity).

commit a9a15596d737dac9b01c7319d8bfa5867ef6fe3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 15:27:12 2012 +0000

    lua: Don't leak memory for returned objects (found by Coverity).

commit 3e952abeeff5e72810fd38ec1ba1864cf0459396
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 15:19:32 2012 +0000

    python: Don't leak memory along error paths (found by Coverity).

commit a297a752d1ab1eeb19f063a0bb6bbaf1be681032
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 14:48:49 2012 +0000

    perl: Use safe_malloc instead of malloc (found by Coverity).

commit c5a865be810b21aba912248b1acbb75f907cb446
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 14:46:53 2012 +0000

    php: Return SUCCESS from PHP_MINIT_FUNCTION (found by Coverity).

commit d19e3434838880b84272626b7868928f03469bc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 14:42:58 2012 +0000

    fish: Don't segfault here is 'words' happens to be NULL (found by Coverity).

commit 961258357551997a1f445b3c260c9f5e0e61efd6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 14:38:20 2012 +0000

    lib: Avoid segfault if guestfs_internal_readlinklist returns an error (found by Coverity).

commit c15bf25e2073dac2d5146914a975f69ae92494e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 13:44:57 2012 +0000

    inspect: Remove dead code (found by Coverity).

commit 300965f2799ee8e34e591fc97d8061b36c7a4dda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 13:42:07 2012 +0000

    launch: appliance: Really add dummy appliance slot (found by Coverity).
    
    In the previous code, appliance was unconditionally set to NULL and so
    we never added the dummy appliance slot to g->drives.  This probably
    doesn't matter, since hotplugging doesn't work for the 'appliance'
    attach-method.  Despite that, it's better to get this right.
    
    This fixes commit ed7fda161e1f3d0beb02a368fcbcf5ed95dcdac1.

commit 8c77f9773cffe4e23fda727c632c9627b3ba4494
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 13:36:04 2012 +0000

    daemon: Fix error checking in function (found by Coverity).

commit 2518dc29790d2a69830d2431b3fbaf04845a3281
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 13:30:14 2012 +0000

    fish: copy-out: Fail on some errors when creating output directory (found by Coverity).
    
    However it's not an error if the output directory already exists.

commit 0061b361ee6bdd23e13a3d5a7ddc958e8b54e284
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 13:28:11 2012 +0000

    daemon: Explicitly ignore return value from modprobe command (found by Coverity).

commit a58be73dc4c4526a9a0ed58c68ede46c83c8b80b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 13:25:15 2012 +0000

    fish: Ignore failure of mkdir (noted by Coverity).

commit 4627ff89b277d471214fc9b1b0f8baa684894a4c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 13:15:18 2012 +0000

    tmpdirs: Explicitly ignore return value from guestfs___cmd_run to keep Coverity happy.
    
    We don't care if this command fails.

commit 5eef2e8d5b68ce67fc2e78596e323feeea7ebc29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 13:12:17 2012 +0000

    lib: Explicitly ignore return value from guestfs_parse_environment in guestfs_create (found by Coverity).
    
    The purpose of adding guestfs_create_flags was so that users could
    check for errors from guestfs_parse_environment if they need to.

commit e9c5db1f1ffc31d3e23cf8280043669e3482da75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 8 13:09:29 2012 +0000

    Check for error from some guestfs_set_* calls (found by Coverity).
    
    For some guestfs_set_* calls, add checks for error, when error might
    possibly occur.  eg. It's plausible that guestfs_set_network might
    fail if the attach-method being used doesn't support it (although this
    doesn't happen at the moment).
    
    In other cases, don't check for errors, eg. if the error doesn't
    matter or there's nothing we could plausibly do about it.

commit 3d02bb9bf7ef6b8e2e11e0085e5633d407636aaf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 7 13:29:55 2012 +0000

    virt-rescue: Document a method to capture core dumps from within the rescue environment.

commit f77ba5b554bf042a752dc7c24caf48e3fc88f58e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 7 12:33:18 2012 +0000

    daemon: Fix noreturn error in acl and capabilities code.
    
    This is an improvement over the original fix in
    commit fe4cdb2a477e88cd65d418aa3c3f12cb029f3dde.

commit b26903f893291a36eb54e9839a25255e7ecfe8a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 7 12:32:49 2012 +0000

    configure.ac: Fix comment.
    
    I spent a lot of time looking at how gnulib "manywarnings" works, and
    this comment reflects my improved understanding.

commit 70d07f18e57f6c01fc4a9feeed4d5e0a7da9818c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 7 12:07:10 2012 +0000

    Add NOT_SUPPORTED macro to daemon and library.
    
    This convenience macro returns errno == ENOTSUP.

commit b97fe22ad775ba5c53dba764863e33e4f43d31b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 7 12:05:12 2012 +0000

    appliance: Add (default commented out) section containing debugging tools.

commit df4fb6cc80b26513dea3f19a442cc001da198bf8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 4 15:21:49 2012 +0000

    tests: charset: Fix broken Makefile.am escaping.
    
    This fixes commit 5a2e320ec9390b2146feea6d7b3b8c36a34d0a90.

commit 1e385f961b557cd28ba3937a3d0f110292996b9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 4 11:37:15 2012 +0000

    configure: Add --enable-code-profiling and --enable-code-coverage flags.
    
    These configure flags enable code profiling (with gprof) and code
    coverage (with gcov) respectively.
    
    Although this is a nice idea, it's not currently very useful.
    
    Libtool mangles filenames in such a way that gcov cannot locate its
    datafiles.
    
    Profiling is of dubious utility with libguestfs which is not CPU-bound
    and relies extensively on running external programs (oprofile-like
    system profiling that took into account libguestfs + qemu or
    libguestfs + qemu + the appliance + filesystem tools *would* be
    useful).
    
    Also neither flag will help in capturing data from the appliance.

commit dacf38679cf8609dfc30e676413dd054bf8948c5
Author: Evaggelos Balaskas <ebalaskas@ebalaskas.gr>
Date:   Mon Dec 3 22:15:39 2012 +0000

    packagelist.in for archlinux
    
    latest archlinux has some small changes:
    
    btrfs-progs-unstable --> btrfs-progs
    genisoimage --> cdrkit
    iproute --> iproute2
    module-init-tools --> kmod
    procps --> procps-ng
    udev --> systemd
    util-linux-ng --> util-linux
    
    and could you plz add the below packages
    
    lrzip
    less
    sed
    
    RWMJ: I took this opportunity to make some general cleanups to the file:
    
    - add 'less' and 'sed' for everyone
    - 'module-init-tools' & 'kmod'[1]
    - 'procps' & 'procps-ng'[1]
    - 'util-linux' & 'util-linux-ng'[1]
    - sort the ArchLinux packages into order
    
    [1] Note that febootstrap is supposed to ignore packages it doesn't
    know about.

commit 2622af9eff9ed37a0733a7536e40aeced2aa8148
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 3 18:45:59 2012 +0000

    build: Make 'check-valgrind' fail noisily if valgrind is not installed.
    
    The way the existing configure script worked, @VG@ would be empty, and
    it would run all the way through the check-valgrind rule successfully
    without actually running anything under valgrind.

commit a79036bce32b87268c2e2cef0cf510aecf5dff81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 1 19:01:31 2012 +0000

    docs: Minor copyedits to the release notes.

commit a388de743619c5feff332bb5fade8d5dbce64964
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 1 14:56:25 2012 +0000

    Update release notes.

commit 32dce08d16606b94b84f23351ec1aed125638140
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 1 13:38:58 2012 +0000

    Version 1.19.66.

commit c6fefb9ea0a493159102576a1ffedfbf8c6db85d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 1 13:20:55 2012 +0000

    doc: Document problems with hibernated Windows guests and Windows 8 "fast startup" (RHBZ#882299).

commit adf8f0ce57c89ad1828f8b3c2a5b5a98f4e66646
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 1 11:45:55 2012 +0000

    test-tool: Parse the environment separately.
    
    This lets us report bugs when parsing the environment.

commit 18cd41c2e60e53b10c22745c56215a89dc702157
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 1 11:43:33 2012 +0000

    test-tool: Create the handle later.
    
    Although this leads to a small amount of code duplication with the -V
    option, the overall effect is cleaner.
    
    This is just code motion.

commit 4f17717fa1bb040fb309ee6c1c8342131b9128c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 1 11:33:23 2012 +0000

    tmpdirs: Make relative TMPDIR (etc) absolute, and check it's a directory (RHBZ#882417).
    
    This fixes commit 1efed122c07792f4c66a4083159cfacfb1893212.

commit 20a6746b2c53987c4d49765ca9bd7602eb4d7859
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 1 11:14:57 2012 +0000

    test-tool: Print tmpdir properly.
    
    It was actually printing cachedir.
    
    This fixes commit f9ab256f0e4c1197b505b0249e66e7614644bd0b.

commit 61c0394e3c0dcf6941822b1092691cbd964e2980
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 1 09:27:40 2012 +0000

    inspection: Get icon for Windows 8 (RHBZ#801117).

commit ea4e3d18db0dc841fc0e3ddee4ad04c4093786ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 1 09:09:56 2012 +0000

    contrib: Useful script to extract all logos/icons from a Windows guest.

commit a6f93ebdf6a50cd49a317e71145c2dee746ca261
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 30 23:00:33 2012 +0000

    inspection: Temporary logo for Windows 8.
    
    See the comment from the code:
    
      NB about Windows 8: No location we've found so far contains a
      suitable icon for Win8.  In particular, explorer.exe definitely
      does *not* contain any Windows logo as a resource (I checked).
      Therefore the "basket icon" that this produces is just a stand-in
      until we have a better idea for solving this problem.
    
    and:
    
      https://bugzilla.redhat.com/show_bug.cgi?id=801117

commit 494c08d5e42fe93aaa9045bf74c7a0e19ac94be2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 30 12:32:30 2012 +0000

    inspection, virt-sysprep: Use /etc/hostname on F18+, RHEL7+ (RHBZ#881953, RHBZ#858696).

commit cce63449757b838f70fa10b9a93207d28fef6a5d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 30 09:00:08 2012 +0000

    daemon: Avoid gcc warning about noreturn function in acl & cap code.
    
    acl.c: In function 'do_acl_get_file':
    acl.c:158:1: error: function might be candidate for attribute 'noreturn' [-Werror=suggest-attribute=noreturn]

commit 8c94ebff863fb82f773982cc41bc7e422f6a9312
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 29 19:39:57 2012 +0000

    Version 1.19.65.

commit 507d68168b4e6e72f7de4a80e95d4abdc97aedff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 29 17:24:30 2012 +0000

    inspection: Don't probe partitions when we've probed the whole device (RHBZ#798979).
    
    So we don't get multiple <operatingsystem> entries, particularly for
    install ISOs.

commit 157a5ba8929d4eb604108485925bc07b17f75d49
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 27 17:38:31 2012 +0000

    inspection: Read libosinfo database in order to inspect OS install CD/DVD/ISOs (RHBZ#803650, RHBZ#805417).

commit b34705cfc7e06a786b748b92c0b20d81b44f754f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 29 16:53:55 2012 +0000

    lib: Indent CFLAGS in Makefile.am.
    
    This is just a whitespace change.

commit aad565dc68ef8fb4e338243426b9c1ca70fd628c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 29 16:52:17 2012 +0000

    inspection: Move variable decls to top of function.
    
    This is just code motion.

commit 62465bc5055c7fa4912bfa0ccad0e886ad70a032
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 29 15:23:28 2012 +0000

    inspection: Implement "openbsd" type and distro.

commit 205f5fd74c3c2981c03387317d33eca485fff67c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 29 17:06:37 2012 +0000

    daemon: isoinfo: Fix parsing of bogus dates.
    
    eg:
    
    $ isoinfo --debug -d -i ubuntu-12.04-desktop-amd64.iso
    CD-ROM is in ISO 9660 format
    System id:
    Volume id: Ubuntu 12.04 LTS amd64
    Volume set id:
    Publisher id:
    [...]
    Creation Date:     2012 04 25 16:13:46.00
    Modification Date: 2012 04 25 16:13:46.00
    Expiration Date:                :  :  .
    Effective Date:                 :  :  .
    [...]

commit fb8e37215ef065041326e51d572b8048fa34622f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 29 11:44:50 2012 +0000

    fish: Make type == drv_N field private to guestfish.
    
    The -N option / drv_N type only makes sense when we are compiling
    guestfish, and just serves to complicate non-guestfish code.

commit ce55a8e87b31ab51f806a9161984473323b54679
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 29 11:04:29 2012 +0000

    virt-df: Better output when multiple -a/-d options are specified (RHBZ#880801).
    
    This is very well explained in the bugzilla comments:
    https://bugzilla.redhat.com/show_bug.cgi?id=880801#c1
    
    With this change, the disk name has a one or more plus signs ('+')
    appended to show that there are additional disks:
    
      $ virt-df -a Win7x32TwoDisks-a -a Win7x32TwoDisks-b
      Filesystem                   1K-blocks    Used  Available  Use%
      Win7x32TwoDisks-a+:/dev/sda1    102396   24712      77684   25%
      Win7x32TwoDisks-a+:/dev/sda2  12478460 7403416    5075044   60%
      Win7x32TwoDisks-a+:/dev/sdb1    521212   55728     465484   11%

commit 5917d86bf42d364c822f2e2cf6998d74982b21f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 27 08:48:39 2012 +0000

    Add .mailmap to EXTRA_DIST.

commit bd26946163e2c878a6591390a865c4cd933b7dbe
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue Nov 27 16:40:22 2012 +0800

    Add the .mailmap and change the method to generate AUTHORS
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 5ab561d856f578522d32d7d93dc84d30a145e06d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 26 09:00:16 2012 +0000

    lib: lpj: Refactor code.
    
    Only run one grep command to grep any number of files.

commit 0e064d70680d1de931bc59799ad00eb06fc10f89
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 26 08:58:26 2012 +0000

    lib: lpj: Only return first match in read_all function.
    
    If there where several lpj=.. matches then the earlier matches would
    be leaked.  Only return the first one and don't leak memory.

commit ea42137edd5105ea0a158eaec961c610015b08e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 25 18:11:19 2012 +0000

    lib: Get lpj= from /var/log/boot.msg (thanks Olaf Hering).

commit ab0940d4eceb3268a0888017ff5bcc43331b1d62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 24 15:11:28 2012 +0000

    Version 1.19.64.

commit da11d0da7877f350ec3740357f5f95be2c632156
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 24 14:17:35 2012 +0000

    launch: appliance: Handle non-\0 terminated buffer correctly.
    
    The read_all function is used as a callback for
    
      guestfs___cmd_set_stdout_callback (cmd, read_all, [str],
                                         CMD_STDOUT_FLAG_WHOLE_BUFFER);
    
    As noted in the documentation for CMD_STDOUT_FLAG_WHOLE_BUFFER, the
    buffer returned is not \0-terminated, and so using memdup will create
    an unterminated string, and therefore potentially a memory overrun
    when reading or searching the string.
    
    Use strndup instead so the final string is \0-terminated.

commit 5ee47289f0175e280118e408dc256700ca946b23
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 24 13:50:27 2012 +0000

    appliance: Pass lpj=... on the appliance command line (thanks Marcelo Tosatti).
    
    Try to get the host's loops_per_jiffy value and pass this on the
    command line to the guest.  In theory this should avoid the appliance
    having to recalculate this value in a VM with TCG (which is generally
    error-prone).  This should avoid timing issues.
    
    We only do this when we are certain that the guest will be TCG.
    Currently we only have enough information to do this from the libvirt
    attach-method.  So mostly this will only affect people using Fedora in
    a VM.
    
    The host loops_per_jiffy value is not exported by the kernel.  It is
    only printed by the kernel early during boot, so if boot messages have
    "scrolled off" the kernel ring buffer, it won't be available.  Some
    operating systems save early kernel messages in /var/log/dmesg but (a)
    Fedora 18+ seem to have abandoned this file and (b) on Ubuntu this
    file is unreadable for spurious "security" reasons.
    
    I have submitted a patch to make lpj available through /proc/cpuinfo.

commit fad55bea9cf09656a9e297036ec3e03a94b4a2f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 24 12:51:11 2012 +0000

    launch: libvirt: Refactor parameter passing to construct_libvirt_xml* functions.
    
    This is just code motion.

commit 87ebdbfcf6642cb4ff6aee22501464558d00e18d
Author: Olaf Hering <olaf@aepfle.de>
Date:   Fri Nov 23 20:20:13 2012 +0100

    lua: fix build error due to LUA_GLOBALSINDEX usage
    
    lua 5.2 changed API, LUA_GLOBALSINDEX is no longer available.
    http://www.lua.org/manual/5.2/manual.html#8.3
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit b158ca4f55d4692e8fc661e5ecbb210e82b5c2ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 23 17:33:00 2012 +0000

    Version 1.19.63.

commit 1af33e5c06db30a1e966b7767f7ae28720d73cf8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 23 17:17:57 2012 +0000

    daemon: Ignore lvresize error "New size..matches existing size" (RHBZ#834712).
    
    The lvresize command unnecessarily gives an error if you don't
    change the size of the LV.  Suppress this error.

commit 06ecfbbcc94640ffdf872e36e7e150a572980c32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 23 14:50:54 2012 +0000

    test-tool: Don't print banner when using --help, -V, etc options (RHBZ#879416).

commit 4e1575da509c622b536882f715f8518d14eba01a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 23 12:30:21 2012 +0000

    launch: Refactor duplicate code which constructs the appliance command line.
    
    Move this into a common file.

commit 2080feeaae66eebd6f6d325a36c5f9b2252f0439
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 23 12:12:33 2012 +0000

    lib: Fix memory leak and simplify command code.
    
    Fix the following memory leak found by valgrind:
    
    ==13629== 498 (112 direct, 386 indirect) bytes in 1 blocks are definitely lost in loss record 99 of 110
    ==13629==    at 0x4A06B2F: calloc (vg_replace_malloc.c:593)
    ==13629==    by 0x4CA564E: guestfs_safe_calloc (alloc.c:71)
    ==13629==    by 0x4CA9B02: guestfs___new_command (command.c:143)
    ==13629==    by 0x4CA66E9: guestfs___build_appliance (appliance.c:690)
    ==13629==    by 0x4CBD1B9: launch_libvirt (launch-libvirt.c:188)
    ==13629==    by 0x402E7E: main (virt-filesystems.c:349)
    
    Also adjust the command code in several places to make it simpler.  We
    can almost always call guestfs___cmd_close right after
    guestfs___cmd_run, avoiding any need to close the handle along error
    paths.
    
    Tested by running the test suite under valgrind.

commit 38b788ff9529c70f629d5f3db765a63d5e66403c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 22 14:49:54 2012 +0000

    New APIs: Implement Linux filesystem capabilities.
    
    This adds the following new APIs:
     - cap_get_file
     - cap_set_file

commit 6e4e362da34ab6560192f706c97fb297ef2c17e2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 22 14:49:54 2012 +0000

    New APIs: Implement POSIX ACLs.
    
    This adds the following new APIs:
     - acl_get_file
     - acl_set_file
     - acl_delete_def_file

commit 32e8cef6a661c98919f096b8c1d70d2aea15e0ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 22 09:54:48 2012 +0000

    fish: Fix test-remote-events test.
    
    Because the shell script was missing a space, the final output test
    was failing, although for some reason this didn't cause the whole test
    to fail.
    
    Fixing the missing space also revealed a bug in the test output, which
    is also fixed.

commit 092c7ab53254d896962a02c18f2042912550e5b2
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Nov 21 17:50:58 2012 +0800

    sysprep: remove crash data generated by kexec-tools
    
    Remove the kdump generated kernel crash data.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
     - Added /var/log/dump/* path for SLES (thanks Olaf Hering).
     - Update po/POTFILES-ml.

commit 11740adbdf9f765757cabd1323e303a76577898d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 19:53:18 2012 +0000

    Update API support.

commit c62a0abcbc7807fe36fe93925e718e165c41300f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 19:51:45 2012 +0000

    Update PO files from transifex.

commit 350391785bbfa34d6b73bd3abc750f317c6940a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 18:31:55 2012 +0000

    Version 1.19.62.

commit 52e72118e3e5e233fe62aa10c0bffc1f0d776cf5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 18:40:15 2012 +0000

    ./run: Ensure all paths are built up cumulatively.

commit 38d065a46ff6372b8060c02c553f38c3614fe75c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 18:31:45 2012 +0000

    lua: valgrinding Lua code doesn't work.
    
    See comment.

commit 6afe59bfcf8a524226e13d2a1c300cbae9225262
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 18:31:16 2012 +0000

    valgrind: Ignore init_libguestfs symbol.
    
    It's not relevant, since the memory leak begins in libvirt.

commit 7b5148729bb5778eb56295ae9ac0eab93609a067
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 17:34:23 2012 +0000

    lua: Replace internal lua_guestfs_* functions with guestfs_lua_*.
    
    This is just code motion.  It just ensures there is no possible
    conflict with lua_* symbols.

commit 2db6d0505368914fb2a9b6f67d2f87f32a967b8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 17:32:37 2012 +0000

    lua: Attach __tostring functions exceptions.
    
    This includes a test.

commit e52f5cef7e8584f3dee8107ffe8be2ec373ec93e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 16:42:40 2012 +0000

    lua: Fix whitespace.

commit c5d1e1da52dd278f341576b0f9b9c8c7729e11d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 16:20:12 2012 +0000

    lua: Various fixes to the bindings (thanks Jerome Vuarand).
    
    See http://article.gmane.org/gmane.comp.lang.lua.general/95065
    
    Note that this is incompatible with existing code.  You
    have to do:
    
      local G = require "guestfs"
      local g = G.create ()
    
    ie. give the module your own name ("G" in that example).

commit cf5c60a471b5c604235758cf6da86b2a84f614d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 14:23:35 2012 +0000

    lua: Print the error thrown by callbacks.

commit 799ca66b9d0390b8cc04496290c1a597a787c58c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 14:15:45 2012 +0000

    lua: Add comment (not fix) for incorrect 'g' argument in callbacks.
    
    Thanks Jerome Vuarand.

commit 7cde5034b54dd7402e9e51a144a79d96e7fce947
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 13:56:06 2012 +0000

    lua: Add bindtests.

commit 2fab8e1430748c599c3f5dd40f17ddbd2bf38ce7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 14:11:34 2012 +0000

    lua: Use lua_rawgeti to read elements from lists of strings.
    
    This is faster, but more importantly it avoids the strange error
    'lua: attempt to index a string value' which appears with (some)
    single element lists.

commit ac449e887f6334417cef8516a37cdd1d8e8c66d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 13:55:46 2012 +0000

    lua: Add LuaStyle of commenting to the generator.

commit 861b1657a197786d2515d6e8e37316e54c092050
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 13:39:38 2012 +0000

    lua: Allow regular int to be passed as a 64 bit integer.

commit d48388a682d9b398b2edc58f2727ad313c952b89
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 19 15:43:52 2012 +0000

    daemon: wipefs: Use --force option if available.
    
    See https://bugzilla.redhat.com/show_bug.cgi?id=872831
    and https://bugzilla.redhat.com/show_bug.cgi?id=865961

commit 77af2926b2db4a6ae1908bef83016c8a751d42a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 20 09:10:15 2012 +0000

    lua: Simplify get_event function.
    
    Use luaL_checkoption which is designed for this purpose.

commit a785ea9019f4b3fe8f49b88bbc7c7e144bea5664
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 19 18:19:29 2012 +0000

    lua: Document Guestfs.event_all.

commit 80fed39e6de4fd0fbfe352f5aa05dcc5ba80afb7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 19 18:16:08 2012 +0000

    erlang, lua: Fix links in man pages.

commit 39a4c30f62c14c3b9b07fd0a9347eabb731eafc8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 19 17:13:14 2012 +0000

    lua: Test globals in Guestfs.* namespace.

commit 0acf9365b5c4b2e3d61b35c3e5956545715e1fe3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 19 17:06:21 2012 +0000

    lua: Add global Guestfs.event_all (list of all events).

commit 2d10a9907de52ffa404045461c8e78b0849cab5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 19 14:46:59 2012 +0000

    Version 1.19.61.

commit 7044c7a125f8eaba29082db180e2d671071c719a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 19 13:00:52 2012 +0000

    lua: Various fixes and enhancements:
    
    - add support for events (with test)
    - test progress messages
    - update documentation to describe events
    - refactor handle closing code
    - refactor error code
    - use 'assert' in test code instead of 'if ... then error end'

commit 1de90a9f6a7bf1937c36b784a0c8f2c48ff0d086
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 19 09:39:30 2012 +0000

    perl: Add test of multiple independent handles.

commit 2f86c0f300798053a554a7e7e88ce6409b3441e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 18 19:24:20 2012 +0000

    lua: examples: Boolean true shouldn't have quotes around it.

commit ed5c586e4a65ff87f813673f66afe4d8237ce698
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 18 16:45:44 2012 +0000

    lua: Add another test to prove that the handles are really independent.

commit 9bab169e789e1ba7bb341b64d7d6203c1087ea58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 18 16:45:08 2012 +0000

    lua: Don't use %m since Lua string formatter doesn't understand it.
    
    Use %s + strerror as a replacement.

commit 81898f547f2740904c14aae41e49bb57e3ac1d1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 17 21:17:44 2012 +0000

    lua: Add some missing features.
    
    - Remove default error handler.
    - User cancel.
    - Add the errno to the object which is thrown on error.
    
    Still no events.

commit a10893b1bfd7aa9a5e193be5aac3d03844537406
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 17 20:02:25 2012 +0000

    Version 1.19.60.

commit 288755604b7d85c3f54648b03207baa694680832
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 17 10:10:13 2012 +0000

    Add Lua bindings.
    
    These are relatively complete, although only lightly tested.  Missing:
    
     - events
     - last_errno
     - user_cancel

commit 4e0ead3be9ae34fb00d6e1069cb3f89ba0cb6c15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 17 18:14:05 2012 +0000

    perl: Clean up and update the tests.

commit 4926a0f11a24182991cf8150b58fc437b4f2bd21
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 17 17:55:00 2012 +0000

    perl: Small test of create with flags.

commit af8d7da71271e6687b9f1e35d7a735a3492e8981
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 15 16:37:23 2012 +0000

    sparsify: Better error when user specifies --compress + raw output (RHBZ#852194).

commit c40de23de61ec0509d89c16c398e5ffa38b8cd56
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 15 15:35:25 2012 +0000

    todo: We must implement ACLs and filesystem capabilities for SCAP.
    
    Thanks Steve Grubb.

commit 423a0219d64ac44afa92bcd6e6f715bc65e43de5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 15 10:08:21 2012 +0000

    daemon: Perform device name translation on mke2fs journaldevice (RHBZ#876579).
    
    Also various fixes:
    
     - remove fixed-size buffer
     - change if (err) free (err) -> free (err).

commit 65ebec7c4ba93ef0d147c98a383285219e666316
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 15 09:01:15 2012 +0000

    recipes: Add sections about hexdumping, hexediting sectors.

commit 43ef28eb38f7055015d12bd20fb3914d111e6cec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 14 22:34:06 2012 +0000

    recipes: Add recipe for diffing two guests.

commit d4caf3549b2fe54a3815db5453b72a3a65f1915b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 13 14:42:49 2012 +0000

    Version 1.19.59.

commit 8cd4f0d63b34e744ef388d124c737e8200f7e854
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 13 15:21:42 2012 +0000

    dist: Add miscellaneous files to the tarball.
    
    Lots of these had been omitted over time.

commit 757b7fb7b05e9c9beceb038f944123e9068c529e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 13 15:19:53 2012 +0000

    tests/protocol: Add test-qemudir-launchfail.sh to tarball (but don't run it).
    
    This file was present in git, but missing from the tarball.
    
    Don't actually run the test: it depends on details of how the
    appliance is constructed which would fail for old-style appliances.

commit 126c0b60c97349ccd493bcf159aa6ba89a062f55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 13 15:16:49 2012 +0000

    fish: Add test for remote events.
    
    This test was present in git, but not included in the tarball,
    nor in the tests that guestfish actually runs.
    
    This fixes commit 17182af3a6de8e3e94e0a914416c54f09bb74007.

commit da59b082c1bb277f8eb1e6d8fc00cdb3387d5ee3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 13 14:31:01 2012 +0000

    tests: Add a parallel launch test.
    
    This is designed to reveal libvirt race conditions such as
    bug 875741.
    
    This is a "slow test" so it only runs if you do 'make check-slow'.

commit 4c1ea8fa62f81c333ed375ed8b7766e27069cfd7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 13 13:46:47 2012 +0000

    tests: Add 'make check-slow' rule to recursively run slow/long-running tests.

commit 467ad7a0dbb92462159135e3d72f1eb23325907b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 13 12:53:40 2012 +0000

    Add 'make help' rule.
    
    This gives a short overview of the make targets.

commit 9f963b56b253a14b1c1db12a1a2c39b784fb7b75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 12 17:54:31 2012 +0000

    tests: Replace 'make extra-tests' with individual tests.
    
    'make extra-tests' was a monolithic set of tests that did all sorts of
    things: valgrind, tests over local guests, tests with upstream qemu,
    tests with upstream libvirt, tests with the appliance attach method.
    
    This made it hard to perform individual tests, eg. just valgrind
    testing.  It was also hard to maintain because the tests were not
    located in the same directories as the programs and sometimes
    duplicated tests that were run elsewhere.
    
    This commit splits up 'make extra-tests' into 5 separate targets:
    
     make check-valgrind              # run a subset of tests under valgrind
     make check-valgrind-local-guests # test under valgrind with local guests
     make check-with-appliance        # test with attach-method == appliance
     make check-with-upstream-qemu    # test with an alternate/upstream qemu
     make check-with-upstream-libvirt # test with an alternate/upstream libvirt
    
    (You can also still run 'make extra-tests' which is now simply
    a rule that runs the above 5 targets in order).
    
    This replaces everything that was in the tests/extra directory,
    so that has now gone.

commit a294aa0acbad8c151e7828a9777410a62f5f4ebe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 13 09:01:53 2012 +0000

    extra-tests: Add $(libvirt_ro_uri) substitution to configure.
    
    This is essentially just code motion.

commit 8ac7f833c648df26e28f6f52664410446ccfeaae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 12 18:13:37 2012 +0000

    Define whole valgrind command (as @VG@) in the configure script.
    
    This is mostly just code motion, but it also changes the default
    location where valgrind.log is written to be the top build directory
    (instead of tests/extra/valgrind.log).

commit 6ed4bd3b23ec6d4244fdff43ea49c89cf5722f17
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 12 20:10:55 2012 +0000

    align: Add a test for virt-alignment-scan.

commit 2c013b08ec6ab12481bae5b7e53eb9c3f3777499
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 12 18:46:13 2012 +0000

    fish: Add simple tests of starting up, inspection, using the prepared disks.

commit 0fe29f12d06bdfa70dd0574e92f44c0681416bba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 12 18:26:48 2012 +0000

    inspector: Add some real virt-inspector tests.

commit 6e3bc998ce9050fbc4a0ee26205cc7ce52591b69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 12 15:06:44 2012 +0000

    extra-tests: Move valgrind suppressions file to top source directory.
    
    This is just code motion.

commit 5bef69f6f32cd73aba8273308f6a40aad3183723
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 12 13:39:03 2012 +0000

    Various fixes to API support script.
    
    Remove internal structures, fix it so it works with the new
    code layout under src/

commit d119c57e72e6475c8b128e5459941ceba201bd20
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 12 12:56:39 2012 +0000

    lib: Split up huge src/guestfs.c into logical compilation units.
    
    This file had grown by accretion to include:
    
     - code related to handles (now in src/handle.c)
    
     - safe allocation (src/alloc.c)
    
     - debug, errors, warnings (src/errors.c)
    
     - private data (src/private-data.c)
    
     - miscellaneous functions (src/canonical-name.c, src/utils.c)
    
    This commit also removes about a dozen #include files which were
    probably not really used.
    
    This is just code motion.

commit 728c9a64d325535dcb0df3a19e7ba87d9b866485
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 10 22:03:25 2012 +0000

    test-tool: Print cachedir and tmpdir.
    
    This fixes commit 1efed122c07792f4c66a4083159cfacfb1893212.

commit c48bfc9e689fb44c9860b18ab30792009cccb2db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 10 14:03:57 2012 +0000

    Update release notes.

commit bd18b03b05c3ee22fa2d65f3248fa9052210bea0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 10 11:25:26 2012 +0000

    Version 1.19.58.

commit e153885a87c9f57a6530482539f58ad4803b2697
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 10 08:55:38 2012 +0000

    lib: Fix memory leak in tmpdir/cachedir code (found by valgrind).
    
    This fixes commit 1efed122c07792f4c66a4083159cfacfb1893212.

commit f71cf884f3c605802d8b059f135281e7478a522e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 22:38:41 2012 +0000

    tests: Remove double-test for availability.
    
    If you have a function which is in the X optgroup, and also has
    IfAvailable X, then two tests for the optgroup are added to the
    output.
    
    Check for this case and give an error.
    
    This also fixes existing APIs.

commit 1fe3fce4dba530f30e12ce90d470d2cf16d6d565
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 20:44:12 2012 +0000

    tests: More efficient use of strings in the object code.
    
    No functional change.

commit 3f684c5808116b348f5d979ff3c79e7baeeae977
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 20:33:24 2012 +0000

    tests: Use guestfs_{push,pop}_error_handler.
    
    Replace the custom error handler with calls to
    guestfs_{push,pop}_error_handler only where necessary.  This
    simplifies the generated code.

commit 3d09c38d88f6199ea13ef4401ee87b9efb8e35f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 20:26:05 2012 +0000

    tests: Cleanup code that prints each test name.
    
    This is just code motion.

commit e36d244825e81d6715d684f107c026cd1f138a8c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 20:19:30 2012 +0000

    tests: Change code for printing warnings about untested functions.
    
    Just code cleanup, no functional change.

commit fe9d046bfed19a4a154a3a7ded589a74b1badb38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 20:19:08 2012 +0000

    tests: Remove dead code in generated output.

commit 8207eb8ed40dbcb79617979fc0cc16fc05e84d74
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 20:18:54 2012 +0000

    tests: Format the generated code properly.
    
    This is just whitespace changes in the output.

commit bb00a22a01fdfbaae99620325d93997ec423b544
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 19:50:13 2012 +0000

    fuse: Use guestfs_{push,pop}_error_handler so we can see errors in shutdown.
    
    In the fork (usual) case, we still won't see any errors since stderr
    has been redirected to /dev/null, but this way is still a little more
    correct.

commit d9b1c96d0fe8b5807f1b90152a26eb838db44511
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 18:03:49 2012 +0100

    tools: Modify existing tools to use guestfs_{push,pop}_error_handler.
    
    This is a shorter and more convenient way to disable errors
    temporarily across calls.

commit 504f81550a8a934fdd4bb5dadccb9df7c64056e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 18:47:57 2012 +0100

    lib: Modify library code to use guestfs_{push,pop}_error_handler.
    
    This is less efficient than directly manipulating g->error_cb, but
    easier to maintain.

commit 4162bcc8af56d8d59ed7f634a674f3edb06150f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 17:47:07 2012 +0100

    lib: Add new C API calls: guestfs_push_error_handler,
    guestfs_pop_error_handler.
    
    The addition of these calls makes it much simpler to temporarily
    disable or ignore errors:
    
     guestfs_push_error_handler (g, NULL, NULL);
     guestfs_mkdir (g, "/foo"); /* We don't care if this fails. */
     guestfs_pop_error_handler (g);
    
    Note these calls are used by the C API only.  They are not necessary
    in other languages, because those map errors to exceptions.
    
    The subsequent commits change existing code to use push/pop instead of
    laboriously saving and restoring the error handler.

commit d1b7a99518b8fba8abd793144ef5d6c8ef9a8bff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 18:41:31 2012 +0100

    lib: Break long line in definition of guestfs_set_error_handler.
    
    This is just a whitespace change.

commit 787e410410186757e48f4e886ccb562453ab7ec4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 18:57:29 2012 +0100

    examples: Copy-editing instructions printed by the mount-local program.

commit 359ab0da8b1f4079ee3f16b60d254df0a3ac6571
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 17:15:50 2012 +0100

    header: Define LIBGUESTFS_HAVE_CREATE_FLAGS=1.
    
    This fixes commit 9466060201600db47016133d80af22eb38091a49.

commit a93bf1eccebace1f732e6b95851670bd6fc5b80e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 9 13:34:45 2012 +0000

    fish: Update documentation for environment variables.
    
    This fixes commit 1efed122c07792f4c66a4083159cfacfb1893212.

commit fc5216afe2af8f64e72ab435fcae20928353b5c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 8 11:36:35 2012 +0000

    lib: Rework temporary and cache directory code.
    New APIs: set-tmpdir, get-tmpdir, set-cachedir, get-cachedir.
    
    The current code has evolved over time and has a number of problems:
    
    (a) A single environment variable ($TMPDIR) controls the
    location of several directories.
    
    (b) It's hard for the library user to predict which directory
    libguestfs will use, unless the user simulates the same internal steps
    that libguestfs performs.
    
    This commit fixes these issues.
    
    (a) Now three environment variables control the location of all small
    temporary files, and the appliance cache:
    
      For temporary files: $LIBGUESTFS_TMPDIR or $TMPDIR or /tmp.
    
      For the appliance cache: $LIBGUESTFS_CACHEDIR or $TMPDIR or /var/tmp.
    
    The user can also set these directories explicitly through API calls
    (guestfs_set_tmpdir and guestfs_set_cachedir).
    
    (b) The user can also retrieve the actual directories that libguestfs
    will use, by calling guestfs_get_tmpdir and guestfs_get_cachedir.
    These functions are also used internally.
    
    This commit also:
    
     - reworks the internal tmpdir code
    
     - removes the internal (undocumented) guestfs_tmpdir call (replacing
       it with calls to the documented guestfs_get_tmpdir API instead)
    
     - changes the ./run script to set LIBGUESTFS_TMPDIR and
       LIBGUESTFS_CACHEDIR
    
     - adds a test
    
     - fixes a few places like libguestfs-make-fixed-appliance which
       depended on $TMPDIR

commit 98297a599deba8dd14f476d694c8cbf1bd71c991
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 8 12:49:11 2012 +0100

    lib: When parsing environment, handle LIBGUESTFS_TRACE first.
    
    So that we can trace all the later calls.

commit 738a1e2a2e0fc122a3728d41cae554af26e1a9b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 7 20:29:59 2012 +0000

    Version 1.19.57.

commit 122afb05d541b4adac27380118aec053a4c50a57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 6 13:05:15 2012 +0000

    format: Allow virt-format test to be skipped by setting SKIP_TEST_VIRT_FORMAT_SH=1.

commit 956c2f5d9867219285b10c37d9b70f8f6ab137b2
Author: John Eckersberg <jeckersb@redhat.com>
Date:   Mon Nov 5 10:16:36 2012 -0500

    lib: debian support for package arch inspection

commit 687b302afeac2f1c4672c742c2dc277b296ef076
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 3 10:10:12 2012 +0000

    tests: wipefs: Don't try to wipe mounted filesystem.
    
    Previously wipefs (the utility) allowed this, but it's obviously a bad
    thing to do and the new wipefs gives an error if you try it:
    
    wipefs: error: /dev/VG/LV: probing initialization failed: Device or resource busy

commit 4a9d1c629a22f392b1f7b78367affe84dbf05d1b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 22:14:49 2012 +0000

    fish: Fix documentation quit | exit -> separate exit & quit headings.

commit 71031729831155307022f12d1468fd01125703cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 22:13:22 2012 +0000

    fish: Clean up prompt documentation.

commit e1c110c58c2c2034d7fe391a02ede07b892a3a1e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 22:05:29 2012 +0000

    fish: Use Unicode LOWER ONE QUARTER BLOCK to represent cursor.
    
    'ls' (with no argument) is not a valid command.
    
    This fixes commit bad5c7d5a50e7f340d3a5daff59d7f3c18c0ab8f.

commit 970e2c91af5b7a3681ded3aaf678a1ab0af16ee8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 14:45:11 2012 +0000

    Version 1.19.56.

commit 347501a821eeae7bdae2406383f1229b3abf1d2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 12:08:38 2012 +0000

    generator: Split up huge src/actions.c into separate files.
    
    Split the functions according to a simple hash across
    C.nr_actions_files files (this number can be increased later if
    necessary).
    
    This is just code motion.

commit cdc9266b5ce578d8eb51f16e23759f221e0b7a3f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 11:59:25 2012 +0000

    generator: actions: Move variant functions to a separate file.
    
    This is just code motion.

commit 12293bc9ed5e10e001e9c3d339940280edbdf422
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 10:38:48 2012 +0000

    generator: actions: Move 3 helper functions to a separate file.
    
    This is just code motion.

commit 6978ca6ace4a25609e3f43df38d29cbd70ff40fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 09:32:52 2012 +0000

    New API: mklost_and_found

commit 48fd7f2d20b0e1a40c66609097cb37eb118ad2da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 09:12:32 2012 +0000

    todo: General updates.

commit e792c8f06a41385ddca1f5298d4b2e4c7f02d545
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 2 09:03:27 2012 +0000

    ROADMAP: Remove some completed items.

commit 05c75fde15c8ea60aa0f58cdbe500f2b9b5fe69b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 1 19:31:17 2012 +0000

    sysprep: Don't fail when trying to remove /var/spool/at/spool (directory).
    
    This fixes commit 1949016e899b2737525fdc9b6dda451ad9ecbd66.

commit 9eb6e2c1d96b9b0027570ce5c03e0ca71527c054
Author: John Eckersberg <jeckersb@redhat.com>
Date:   Thu Nov 1 13:35:16 2012 -0400

    inspect: Use new inspect_list_applications2 API call
    
    RWMJ:
     - Update virt-inspector.rng.

commit 4d7b5875ee2e48a5a8ef6fc854dfeab300996b80
Author: John Eckersberg <jeckersb@redhat.com>
Date:   Thu Nov 1 13:35:15 2012 -0400

    lib: Add inspect_list_applications2 method (RHBZ#859949)
    
    RWMJ:
    - Fix memory leak in guestfs__inspect_list_applications wrapper.
    - Don't document app2_spare* fields.

commit 46b9af040e42bd2e3e04dfad286b65571bfe02fb
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Nov 1 00:14:52 2012 +0100

    message catalogs don't need to be executable

commit bed32b94a4078f410e53806925597f562b60cfe1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 30 14:35:25 2012 +0000

    Version 1.19.55.

commit bef93ff8cf856f88670d41e72c41935237889312
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 30 13:19:53 2012 +0000

    build: Source 'localenv' in top-level Makefile.
    
    Also document 'local*' files.

commit 8633d0841f8c074cfb8b87478998ce50adef66d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 30 12:56:06 2012 +0000

    tests: Allow more tests to be skipped.
    
    Specifically tests which involve btrfs, because btrfs is
    currently broken upstream (RHBZ#863978).

commit 721a8ec69de0b157ee9916f569292b3051238ff8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 30 11:23:58 2012 +0000

    generator: Use an OCaml struct to store the structs.
    
    This just makes it simpler to add extra fields to each struct.
    
    This is code motion.

commit 18f9b4b086a748f6f73d4f4ba05de800ab08ee18
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 30 10:21:47 2012 +0000

    lib: Force visibility default on public actions.
    
    This is currently done implicitly because of the linker script.
    However in order to do symbol versioning, we will have to do
    this explicitly at each definition instead.

commit 69a9ff6391b13c6dea6420810b385d6e84418e63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 30 10:31:17 2012 +0000

    generator: Move struct-freeing functions to a separate source file.
    
    This is just code motion.

commit d2b24683021abff6a18ff4da9e0cbf69856a3843
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 30 08:31:38 2012 +0000

    sysprep: Move a comment.
    
    No change.

commit c32f9de2b38d9833201e63b830981745987d98fe
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue Oct 30 15:50:54 2012 +0800

    sysprep: remove man pages cache
    
    Remove the cache files generated by man-db.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 011364e193fb23bf92cd352a91d5f7f3eea1a606
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue Oct 30 15:50:53 2012 +0800

    sysprep: remove fontconfig cache
    
    Remove the cache files generated by fontconfig.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 4ba6c7cf537751dfb3a6ca48ee7dc77aac938a8c
Author: John Eckersberg <jeckersb@redhat.com>
Date:   Mon Oct 29 16:22:00 2012 -0400

    lib: update inspect_list_applications to return all installed RPMs (RHBZ#859885).
    
    Note that because of RHBZ#859949, this will return two identical
    entries for RPMs which differ only by arch.

commit ddb6c3a49c711d41ec9f979110acbf9a2d027964
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 29 15:40:33 2012 +0000

    build: Remove 'make bindist' rule.
    
    We've not distributed binaries for quite a long time, and possibly
    this is not advisable.

commit 89c1074c9fafc88b1f489de7637f496d925c4970
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 29 15:13:15 2012 +0000

    Version 1.19.54.

commit 46d19a332e8b8ac2a3aa42127dedc5207c1f7cb1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 29 15:12:54 2012 +0000

    guestfs-testing: Use L<> around links.

commit fdbd7f3cfb0564d28e8b66fcbc2bfca724be25cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 29 12:49:21 2012 +0000

    fish: Add GUESTFISH_PS1 environment variable to control prompt.

commit 34e1594a38b77e17bd2aae0b175c46c5bff64755
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 27 16:19:53 2012 +0100

    fish: Make progress bars slightly lighter.

commit 2e5690f0e125d2737d161dc031fac5944396e5fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 25 21:58:20 2012 +0100

    docs: Review and clarify ERROR HANDLING section of guestfs(3).

commit 05d988e2089c8455085c461a006424a9d40ad37b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 25 16:16:17 2012 +0100

    launch: libvirt: Disable CPU host-model.
    
    See the comment in the change.
    
    This "fixes" commit f7a67914c03db6d4c75671793964954640af7892.

commit 4584c1743d2bbd7f505a2dbff91ad41d9c615936
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 25 14:23:00 2012 +0100

    gitignore: Ignore config.cache file.

commit 7d6ba0dfb51db2bc9aadf390a0d9363594b5ac2d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 25 14:11:01 2012 +0100

    launch: libvirt: Fix <cpu> element.
    
    Use <cpu mode="host-model"> (not model=... which was a typo).
    
    Also set fallback=allow so that libvirt knows it can use another
    CPU model if it wants.
    
    This fixes commit 890a4fbc8740b9b2019885a866aa06bc82566a41.

commit f91d832a6b64026fd7993889763a7817a83597c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 25 14:10:43 2012 +0100

    daemon: Mark some functions as attribute((noreturn)).

commit 36d33f9d61b14b5ff357fb74e33fdd8693ae95e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 24 11:14:56 2012 +0100

    fish: Fix test-events.sh because of new debug message.
    
    Commit 2e90f4312928f332f8997b52be3fe54f20920242 added a debug message
    which isn't filtered out by the set of grep -v's in this test.
    Therefore this test would fail when run with LIBGUESTFS_DEBUG=1.

commit 384c5f95d1ca1196daca5586f32a5d9f14c70f8f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 22 12:18:40 2012 +0100

    resize: Depend explicitly on Unix module.
    
    Commit a0722c7ad846960be54978a31ebe73b76e119203 introduced a
    dependency on the Unix module.  This was not listed in the list of
    '-package's, but as long as you had ocaml-gettext installed it would
    still work because that pulled in Unix implicitly.
    
    Thanks Olaf Hering.

commit 5fd53ade4a8a40429762504b76899b8808d4244a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 19 11:08:08 2012 +0100

    Version 1.19.53.

commit b043276733d61760144d35b39b7b3502ff7cd3a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 18 13:33:12 2012 +0100

    filearch: Use command mini-library to run external cpio command.

commit fab516c8ef501b53ec0865bf296e6e5b123d4f44
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 18 22:08:52 2012 +0100

    fuse: Use command mini-library to run the fusermount command.

commit 35e849b9db645819b075290e15866682621f376b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 18 20:02:19 2012 +0100

    info: Use command mini-library to run 'qemu-img info' commands.

commit 36348d31fb3e44d4c44747ac3d5a139ace6c0926
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 18 21:51:20 2012 +0100

    inspect: Use command mini-library to parse the output of db_dump command.

commit ba1c99e896a78c04571017d7bedb2e0a3ad9e5aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 18 10:55:42 2012 +0100

    inspect: Change icon code to use command mini-lib instead of system(3).

commit 687e954605010567b4ee039df671d8ec6ca08701
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 18 20:15:31 2012 +0100

    launch: libvirt: Use command mini-library to run qemu-img create command.

commit 899d89905048625c76340765e48932caab4023d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 18 18:38:29 2012 +0100

    launch: appliance: Use command mini-library to parse output of qemu -help etc.

commit 90b0e730d201c98b71bee1ceadcd4263806a2152
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 18 15:07:18 2012 +0100

    appliance: Use command mini-library to run febootstrap-supermin-helper (RHBZ#713678)

commit 89c8839c39c2ad387507d3af290b77ea9ac07d30
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 18 14:20:54 2012 +0100

    lib: Change guestfs___remove_tmpdir function to use command mini-library.

commit 8ec01299f0a498b248cd467789b15dc472d56b0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 17 14:31:33 2012 +0100

    lib: Add a new 'command' mini-library for running external commands.
    
    This is a wrapper or mini-library for running external command,
    loosely based on libvirt's virCommand interface.
    
    Amongst the advantages are:
    
     - Can redirect errors into the error log (RHBZ#713678).
     - Can redirect output into a callback function.
     - Handles shell quoting properly.
     - Safely resets signal handlers, closes file descriptors, etc.
     - Single place where we can implement other improvements in future.

commit e55e5a4d8ec155544d84432cffb5df90aff8fdee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 18 17:35:30 2012 +0100

    valgrind: Add suppression for memory leak in libdl:_dl_init function.

commit 6ffe09b86342a7babc3853bedfb0f8779ecd39cd
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Sun Oct 14 14:32:36 2012 +0800

    NEW API: mktemp
    
    Used to create temporary directory or file with an optional suffix.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
    
     - Split this out into a new file (daemon/mktemp.c).
    
     - I don't see a reason to deprecate the mkdtemp function which
       works fine.  Instead remove complex dir-making code from the
       new function.
    
     - Test and fix the patch (missing close(fd)).

commit cd2e9308a7323df78a066bc1faf2468c738feca8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 17 10:31:24 2012 +0100

    configure: Add db5.1_dump, db5.1_load for Debian Wheezy.

commit 6b32b6d222a8c6e2cc25e90c60e5d101180fe4a6
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Oct 17 15:48:14 2012 +0800

    TODO: remove the already implemented yum cache clean feature
    
    The cleanup of package managers cache is already implemented
    by sprep_operation_package_manager_cache.ml, so remove this
    TODO item.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 7650379b6ff03dd131c1b58db70da8c162f52c8c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 16 09:12:18 2012 +0100

    todo: Implement Ruby blocking calls.

commit c37c8bc9f63ae1deacb48a1999cb1b1eaa913b11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 21:35:13 2012 +0100

    generator: Add 'blocking' flag to marking blocking (long-running) functions.
    
    In languages like Python where we release a global lock around
    long-running libguestfs functions, it is also useful to *not* release
    this lock for small, non-blocking functions.
    
    Therefore mark all functions with a 'blocking' boolean flag.  It
    defaults to true, and is true by definition for all daemon functions.
    For non-daemon functions, I have classified them manually.
    
    Only when the blocking flag is set do we generate the code to release
    and reacquire the lock around libguestfs calls.

commit 77851fb81265f5ea54ea0083a7632cc7b7bb00f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 22:38:16 2012 +0100

    ocaml: Get rid of CAMLprim.
    
    It's wrong to use it, and in any case it doesn't do anything on Linux.

commit 0027a580d8cde864f8b768af1c51d18a646aa83d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 18:02:06 2012 +0100

    Update release notes.

commit 323a39b9a47e64c8baf659d8babd459482902367
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 16:35:13 2012 +0100

    lib: Add a test for environment parsing functions.
    
    This updates commit 9466060201600db47016133d80af22eb38091a49.

commit 79e75801b1c9a4a90da8ba976b9f0119119b2581
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 16:34:23 2012 +0100

    lib: Fix guestfs_create_flags example program in man page.
    
    This fixes commit 9466060201600db47016133d80af22eb38091a49.

commit 5fdee0dc8e72720a1a7081e1418474597af923a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 15:51:55 2012 +0100

    resize, sparsify: Suppress progress bar when output is not a tty.

commit faf3948f9e90593424eeb0c046bfa23a974c3ddd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 15:51:21 2012 +0100

    sparsify: Fix dependencies so they include resize/progress.*
    
    This fixes commit 91b2238fc8e462c02f697f0c053043a55f43c13d.

commit be8bd970bb48bdf252e7c99f0b35b6fe2167c70d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 15:43:46 2012 +0100

    libvirt: auth: Some clarifications of the API from Dan Berrange.
    
    This updates commit d83d17e9dbfb24496a0841fc2aed436181ca0341.

commit 637e700dfd5f78e80c2adb5f3bde4382086dd8ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 11:14:59 2012 +0100

    New APIs: guestfs_create_flags, guestfs_parse_environment,
    guestfs_parse_environment_list.
    
    Add a new function for creating a handle:
    
     guestfs_h *guestfs_create_flags (unsigned flags [, ...]);
    
    This variant lets you supply flags and extra arguments, although extra
    arguments are not used at the moment.
    
    Of particular interest is the ability to separate the creation of the
    handle from the parsing of environment variables like
    LIBGUESTFS_DEBUG.  guestfs_create does both together, which prevents
    us from propagating errors from parsing environment variables back to
    the caller (guestfs_create has always printed any errors on stderr and
    then just ignored them).
    
    If you are interested in these errors, you can now write:
    
     g = guestfs_create_flags (GUESTFS_CREATE_NO_ENVIRONMENT);
     if (!g)
       exit (EXIT_FAILURE);
     r = guestfs_parse_environment (g);
     if (!r)
       exit (EXIT_FAILURE);
    
    Also you can *omit* the call to guestfs_parse_environment, which
    creates a handle unaffected by the environment (which was not possible
    before).
    
    This commit also includes new (backwards compatible) changes to the
    OCaml, Perl, Python, Ruby and Java constructors that let you use the
    flags.

commit 4bf96d0511b48e75328b5f2239afaa506e7e5ef7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 15 14:51:32 2012 +0100

    ruby: Add RUBYLIB to run script.

commit e85458b979e5ba7ab5e8f1f74583ded83ac8b63e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 14 13:23:30 2012 +0100

    Version 1.19.52.

commit c2c1cd4936192462106f00dc759d0688ec524929
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 14 13:28:31 2012 +0100

    Update PO files from Transifex.
    
    Also run 'make update-po'.

commit cac38cb6d3f5ddc0f0223859cdac6f7a7aa48458
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 14 13:22:34 2012 +0100

    Update API support.

commit 0177df1aeac0a248c14802462d46bdb46decb26e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 14 12:54:02 2012 +0100

    valgrind: Fix FUSE memory leak suppression.

commit 635fef36ed5191a52b164955e697c696b08e682a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 13 12:57:12 2012 +0100

    New APIs: Model libvirt authentication events through the API.
    
    This commit models libvirt authentication events through the API,
    adding one new event (GUESTFS_EVENT_LIBVIRT_AUTH) and several new
    APIs:
    
      guestfs_set_libvirt_supported_credentials
      guestfs_get_libvirt_requested_credentials
      guestfs_get_libvirt_requested_credential_prompt
      guestfs_get_libvirt_requested_credential_challenge
      guestfs_get_libvirt_requested_credential_defresult
      guestfs_set_libvirt_requested_credential
    
    See the documentation and example which shows how to use the new API.
    
    This commit also changes existing calls to virConnectOpen* within the
    library so that the new API is used.
    
    Also included is an example (but not a test, because it's hard to see
    how to automatically test the libvirt API).

commit 68c26051c3f2b1c7a45f18b70ba5b416b5a26529
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 13 20:52:31 2012 +0100

    configure: Add --without-libvirt option.
    
    Normally we check if libvirt is installed, and the default is still to
    do this.
    
    However having this option makes it simpler to check if a change to
    the code has broken the case where libvirt is not installed.
    
    In fact, this change revealed one such place, which is also fixed in
    this commit.

commit b4c5b3850cb5351a693cc1da67be54ac8daf5a15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 13 09:29:38 2012 +0100

    docs: Make 'EVENTS' into its own =head1 section.
    
    For some reason it was stuck under "CALLS WITH OPTIONAL ARGUMENTS",
    which made no sense.

commit e60afbcd5859b5646aba3bca3689711cc0373795
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 13 14:20:31 2012 +0100

    launch: libvirt: Make handle data conditional on HAVE_LIBVIRT.
    
    This means that we can use virConnectPtr and virDomainPtr instead of
    using void* types.  In the case where libvirt support is disabled or
    not present, effectively nothing changes.

commit 43b39a26c7777a7999ab85d5e6fa277ad7b5e626
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 13 14:06:46 2012 +0100

    lib: Rename src/libvirtdomain.c -> src/libvirt-domain.c.
    
    No change, just code motion.

commit fa04ddea0e6a911180ab40782cfccc3f63761582
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 13 15:34:01 2012 +0100

    lib: Pointer arg to safe_memdup function should be const.

commit 1a269da4a5723b7b0cd69c3aa3fde93c17eaab34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 12 20:45:19 2012 +0100

    configure: Fix capitalization in configure script.
    
    Just make the output of ./configure --help and the <config.h>
    file consistent.

commit 2a98547a7a43689b5fbb3956a94c473e68ac311b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 12 20:44:56 2012 +0100

    configure: Fix C++ compiler test so it doesn't print random junk.

commit 69c5a01bf53edb0bacea20f68b753fda1af47a85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 11 17:12:51 2012 +0100

    Version 1.19.51.

commit d877386a32ac5a551fbf11c36572acd79cc3b5ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 11 17:12:21 2012 +0100

    daemon: Call udev-settle at the start of the daemon.

commit ac2edc322e0427f4eac90ac88120b160577faf47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 11 15:50:41 2012 +0100

    launch: libvirt: Always set <qemu:env> TMPDIR.
    
    If TMPDIR is not set, we must choose one, because otherwise libvirt
    will use a random TMPDIR: http://bugzilla.redhat.com/865464
    
    The convenient guestfs___persistent_tmpdir function does everything
    needed in this case.

commit 3c85aa111ba6e8975a5d1d38560623789e5b44d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 11 13:51:19 2012 +0000

    fish: progress bar: Send interactive progress bar output to /dev/tty (RHBZ#859875).

commit 1460869ded35d205cb7fb8e6c7242e2858c8039f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 11 13:23:24 2012 +0000

    sparsify: Re-use progress bar wrapper code from virt-resize.
    
    The code was identical -- just copied with s/resize/sparsify/.
    Instead of duplicating identical code, cause the Makefile.am to use
    the code from the ../resize/ directory.
    
    Unfortunately because there are two Utils modules (which are
    different), this means we had to rename those modules to Resize_utils
    and Sparsify_utils respectively.  So this is a rather larger change
    than intended.  However it's just code motion.

commit 65f6e1a947caa36666a3aed2fe308941025714b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 11 13:18:46 2012 +0000

    fish: inspect: Canonicalize paths for printing (RHBZ#859876).

commit 1f08695f5487d0e9abbfc229a8818716b817d3f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 11 13:12:26 2012 +0000

    fish: inspect: Move variable decls to top of function.
    
    This is just code motion.

commit 15b535eebb05151ee1e4410a5eade0931a93d6fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 10 21:22:43 2012 +0000

    Version 1.19.50.

commit 9d7770643d89deeff245ca0eea94bab6429cc9c1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 10 21:11:17 2012 +0000

    docs: Fix documentation about hotplugging.

commit 6187f4801f799c4e56f60a4f3b6cca605d480bd7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 10 21:05:52 2012 +0000

    launch: Add warning not to avoid calling launch twice on the same handle.
    
    For more information on this topic, see:
    https://www.redhat.com/archives/libguestfs/2012-October/msg00045.html

commit 8a81e7677687e9a61bc03d0bb05e3fc02093b0b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 10 13:51:54 2012 +0100

    Revert "btrfs: Add a workaround for btrfs failures seen with kernel 3.7.0."
    Revert "btrfs: Add an extended workaround for btrfs failures seen with kernel 3.7.0."
    
    Reverted these workaround, since we may have found a fix for the btrfs
    bug itself (for details see RHBZ#863978).
    
    This reverts commit d9e5b514aa4ef6d659b267e8caef4ebec8a221b1
    and commit a03f536f0dae3ca20e11b7c2ba41e4a7eb1f28c9.

commit 826f1140eae1a389afa74dfeaf351ff99cfe4d61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 10 16:38:53 2012 +0000

    tests: Fix test-qemudie-* so they re-adds the disk on second launch.
    
    Commit ed7fda161e1f3d0beb02a368fcbcf5ed95dcdac1 changed the
    way that the drives are handled across appliance shutdowns.
    
    Previously during the following sequence of calls:
    
      create the handle
      add drive(s)
      launch
      kill subprocess
      launch
    
    the added drives are still in the handle at the second launch.
    
    After the above commit, the added drives are removed from the handle,
    which means the second launch happens with no drives (which could be
    an error).
    
    This was never actually defined either way, so in this case fix the
    test to re-add the drive before the second launch.
    
    Since hotplugging was added, it isn't really feasible to return to the
    original semantics, since users might remove drives, in which case we
    have lost information about those drives so we cannot restore them on
    the second launch.
    
    NOTE: PLEASE CALLERS DON'T DO THIS!  Always use a new handle for each
    launch of the appliance.

commit 87331159c0c2e6add00cc2a017625bc5f243668e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 10 11:15:39 2012 +0100

    btrfs: Add an extended workaround for btrfs failures seen with kernel 3.7.0.
    
    See:
    https://bugzilla.redhat.com/show_bug.cgi?id=863978
    and:
    http://thread.gmane.org/gmane.comp.file-systems.btrfs/20257
    
    This extends the fix in commit d9e5b514aa4ef6d659b267e8caef4ebec8a221b1
    because I missed the case where mkfs.btrfs is called directly.

commit e2c5de5e0ae17d7bb3196db62b80eca4b7f1ebf9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 9 21:58:21 2012 +0100

    docs: Fully document all subdirectories of the source.

commit 9afd98f6dbd23fd236b723fa9f4556b4ee0069fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 9 21:57:54 2012 +0100

    docs: Add overview to guestfs(3)/EXTENDING LIBGUESTFS.

commit 42cd28d6bb391479f847e08d299e80cf21d50673
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 9 12:06:03 2012 +0100

    appliance: Add 99-guestfs-serial.rules to EXTRA_DIST.
    
    This fixes commit 7786d56db8c22413949f98ef6b15fe0ea367d195.

commit ac83fd8da0af2ead6bfe1f8eacfa5a39a397a628
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 9 11:21:17 2012 +0100

    Version 1.19.49.

commit a557778f64d63142dd9e77bc8aa63a56306c1718
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 8 22:25:43 2012 +0100

    btrfs: Add a workaround for btrfs failures seen with kernel 3.7.0.
    
    See:
    https://bugzilla.redhat.com/show_bug.cgi?id=863978
    and:
    http://thread.gmane.org/gmane.comp.file-systems.btrfs/20257

commit 8df7e4d43ba517dc22c5a53088eec734e109074c
Author: Olaf Hering <olaf@aepfle.de>
Date:   Mon Oct 8 20:10:36 2012 +0200

    launch: appliance is optional
    
     # virt-filesystems -v -d 6326ad4e-5805-2ab4-1338-d1dad8c76162 --all
    libguestfs: libvirt version = 10002
    libguestfs: [00000ms] connect to libvirt
    libguestfs: [00001ms] get libvirt capabilities
    libguestfs: [00234ms] build appliance
    libguestfs: [00234ms] create libvirt XML
    libguestfs: error: error constructing libvirt XML at "xmlTextWriterWriteAttribute (xo, BAD_CAST "file", BAD_CAST appliance)": No such file or directory
    libguestfs: closing guestfs handle 0x656270 (state 0)
    
     # ls -lh /usr/lib64/guestfs/*
    -rw-r--r-- 1 root root  13M Oct  8 16:15 /usr/lib64/guestfs/initramfs.x86_64.img
    -rw-r--r-- 1 root root 3.7M Oct  6 09:25 /usr/lib64/guestfs/vmlinuz.x86_64
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit e94d92d7f819962dad32d8ae9093054f29c338a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 8 17:26:53 2012 +0100

    Add support for hotplugging (removing disks).
    New API: remove-drive.
    
    Note because of a bug in fuser, this only works with psmisc >= 22.20.
    
    This also updates the hotplugging tests.

commit 63f6fc5da77fbb4afe80a9910f3d05af1fa81012
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 5 14:56:35 2012 +0100

    Add support for hotplugging (adding disks) to the libvirt attach-method.
    
    When libvirt is used, we can allow disks to be hotplugged.
    guestfs_add_drive can be called after launch to hot-add a disk.
    
    When a disk is hot-added, we first ask libvirt to add the disk to the
    appliance, then we make an internal call into the appliance to get it
    to wait for the disk to appear (ie. udev_settle ()).
    
    Hot-added disks are tracked in the g->drives array.
    
    This also adds a test.

commit d85f6978327ff6259d08264f1dda3a6761ec9652
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 3 10:50:51 2012 +0100

    launch: Add add_drive 'label' option.
    New API: list-disk-labels
    
    Allow the user to pass an optional disk label when adding a drive.
    
    This is passed through to qemu / libvirt using the disk serial field,
    and from there to the appliance which exposes it through udev,
    creating a special alias of the device /dev/disk/guestfs/<label>.
    Partitions are named /dev/disk/guestfs/<label><partnum>.
    
    virtio-blk and virtio-scsi limit the serial field to 20 bytes.  We
    further limit the name to maximum 20 ASCII characters in [a-zA-Z].
    
    list-devices and list-partitions are not changed: these calls still
    return raw block device names.  However a new call, list-disk-labels,
    returns a hash table allowing callers to map between disk labels, and
    block device and partition names.
    
    This commit also includes a test.

commit 34357fbabe6da7c8a0cb676a268e5966f50a8be1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 6 19:27:14 2012 +0100

    launch: libvirt: Create qcow2 overlays for read-only drives and the appliance.
    
    Instead of adding the snapshot=on option via <qemu:arg>, create qcow2
    overlays for any read-only drives and the appliance using 'qemu-img
    create' + a temporary file.
    
    This is a workaround for missing support for <transient/> in libvirt's
    qemu driver.  Also for the unpredictable way that libvirtd handles
    $TMPDIR: we want to control where the temporary disk is created.
    
    Currently it is also much slower, because qemu-img is slow.  However
    we hope to fix qemu upstream.

commit cd1a40020e9a443bc8c865da14332d9f07527442
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 8 14:35:32 2012 +0100

    launch: Make g->drives into an array (was a linked list).
    
    Using an array simplifies the implementation of hotplugging.

commit 73e3aced629d6393938479a9c414973b59b43677
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 7 11:58:36 2012 +0100

    Version 1.19.48.
    
    We need to regenerate the tarball because the previous one
    had the guestfsd man page missing.  Hence bumped version
    number.

commit c9a1d87c7c61afb3260c76f16ad59d4fe7772766
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 7 11:55:01 2012 +0100

    daemon: Add guestfsd.pod to EXTRA_DIST.
    
    This fixes commit df2469a48f4641bdfe26a4179dd946df190fa970.

commit 363985f224fb8e88b25733c0b034df1a38276a72
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 6 23:35:14 2012 +0100

    Version 1.19.47.

commit 4d13bb4b552e86dbe902d7f6f66ef4842fa90a68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 6 18:48:10 2012 +0100

    launch: Add private data pointer to the struct drive.
    
    This can be used by the attach-method, eg. for libvirt-only data.

commit 1d92aad131ddf62293ae8a4ab0707109832cb6de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 6 18:44:05 2012 +0100

    launch: add_null_drive: Force null drive to be writable.
    
    Because we create a special file, there is no point forcing qemu
    to create an overlay as well.  Save time by setting readonly = 0.

commit 4421add6cf97b997c9e3f029c5e696978a47c308
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 5 15:13:16 2012 +0100

    launch: Rearrange code for adding drives to the g->drives list in the handle.
    
    This is just code motion.

commit 66e3b66d4cf42d9b2561667492e2a92af918c8ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 3 11:46:07 2012 +0100

    build: Use 'tmp-d' as name of temporary directory instead of 'tmp'.
    
    When building supermin.d/daemon.img, use 'tmp-d' instead of 'tmp'
    as the name of the temporary directory.
    
    This is just code motion.

commit c6b99f63d9670f258c43cdf943b33e64c68329a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 5 11:03:03 2012 +0100

    docs: add_drive: Clean up documentation of the 'filename' parameter.
    
    Also, remove duplicate documentation of using '/dev/null' as the
    filename.

commit bbae4fd64cb2d3319d6b026463736fae99e60bbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 6 21:34:12 2012 +0100

    tests: Fix rhbz690819.sh to skip when attach-method is libvirt.
    
    This sets the iface parameter (implicitly), which is not supported yet
    by the libvirt backend.
    
    This updates commit 8e198dc1c50fcdba6720b23da478ef75cc979733.

commit c2e741b4f658d785131d91df160e7712cb481c8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 6 17:41:36 2012 +0100

    FAQ: Document debug* and internal* functions in the FAQ.

commit ff670952ae3ec0c379852f10fa54639edd11e926
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 3 10:49:20 2012 +0100

    launch: libvirt: The drive 'iface' parameter is not yet supported.
    
    We could add support, but at the moment return an error
    if the user tries to use the iface parameter.

commit 9ba0779fdf4268b092dbc16d1728ff8ad50af686
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 3 10:30:15 2012 +0100

    docs: Minor cleanup of documentation for add_drive 'name' parameter.

commit ee8da03f6183bd9bea2edf2dc36cea00c0647911
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 3 09:15:37 2012 +0100

    syntax: Use __PATTERNS__ instead of @PATTERNS@ in podwrapper man pages.
    
    It is slightly dangerous to use @PATTERNS@, since these might
    be substituted by autoconf when they appear in Makefile.am files.

commit 08bfea3d41c862ef4716472757389539e2a4fab8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 3 07:47:18 2012 +0100

    docs: Add guestfsd(8) man page.

commit cae9794453f74e2ebbff8a9195deec8b7d7cd202
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 1 12:57:00 2012 +0100

    Version 1.19.46.

commit 3fc6c0eaa8bbaec75043287f156f2aa60bd735cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 1 12:57:04 2012 +0100

    configure: Rearrange build options report in ./configure output.
    
    This had accreted over a long period of time, so it wasn't
    arranged very logically.

commit eeda1d5e8d35fcde301dbb0336549a79062d072c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 28 15:00:26 2012 +0100

    daemon: When sorting devices, don't fail on mix of /dev/sd and /dev/vd
    (RHBZ#858128).
    
    If compare_device_names was given two devices with devices with
    different interfaces (eg. /dev/sda and /dev/vda) then it would try to
    compare the partition numbers, and fail when it could parse them.
    
    It's arguable what we should be doing in this case (except for
    strongly discouraging people from using the interface feature), but
    let's at least not cause the daemon to assert-fail.
    
    Found by Red Hat QA, thanks Mohua Li.

commit 2a46633700968bede87347297932bd4b7d93a463
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 28 10:15:13 2012 +0100

    inspection: Fix calls to case_sensitive_path (RHBZ#858126).
    
    Don't assume that if guestfs_case_sensitive_path returns NULL, that it
    means the file does not exist.
    
    The (previously undefined) behaviour of case_sensitive_path was that a
    NULL return meant "either the file doesn't exist or some other error".
    However in commit 973581780d8a006f336684fef6762801402d775d this was
    changed so that if the last element of the path didn't exist, it was
    assumed to be a new file and the (non-NULL) path of the new file is
    returned.
    
    This change breaks code (including in libguestfs) which tries to use
    case_sensitive_path as a dual-purpose call to fix-up a path for
    Windows and test if the file exists.  Such code should be rewritten so
    that it explicitly tests for file existence after calling
    case_sensitive_path.
    
    I examined all the calls to case_sensitive_path in libguestfs and
    modified them where necessary.

commit 2c29e4b435b8f4fe64a5a721fe93a27cf0f0bc3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 28 09:57:49 2012 +0100

    virt-edit: If case_sensitive_path returns an error, exit.
    
    The 'windows_path' function was blindly copied from virt-cat.  In
    virt-cat, errors are checked by the caller to 'windows_path'.  But
    virt-edit lacks this check.  Change the function in virt-edit to add a
    check and exit on error.

commit 9a230e75cd399cbb3d6520e1493c410c1706ffc4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 26 21:21:02 2012 +0100

    Version 1.19.45.

commit 5b411cf5a9e7e0b67afb833eefdf415d34cde4e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 26 21:16:14 2012 +0100

    sysprep: Typo in man page: resets -> reset.

commit 0e60ef967b0924885d0b121e2e976ee5d966ed04
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 26 21:03:37 2012 +0100

    run: Label tmp directory.
    
    There's not really any point just documenting that people
    should label the tmp directory, when we can just label it.
    So change the ./run script so it calls chcon.
    
    However it's not a failure if chcon doesn't work.  If SELinux
    is not installed or is disabled, then labelling will fail.

commit 61dc8d6628200b5ed7dcebbb17228c8812574e61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 26 20:56:44 2012 +0100

    recipes: Add a section about diagnosing hanging guests.

commit a1f2f77dfb99b1c322bec614ddec85db5c9170cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 26 12:26:33 2012 +0100

    test-tool: Add prominent warning about including complete output.
    
    Everyone ignores the documentation.  Everyone ignores me even
    when I specifically tell them to include the complete output.
    
    Place a prominent notice at the beginning of the output.

commit 65b6e96feb1c36a8dde17726b70b50ee89b0ede2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 26 12:26:28 2012 +0100

    test-tool: guestfs_get_path might return NULL.
    
    It would almost certainly indicate a bug if it happens, but
    don't rely on printf not segfaulting if it did happen.

commit 1cedaef5fb413b7a31e2702e9f1e9cfd0a8b0db8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 26 12:04:02 2012 +0100

    Revert "test-launch-race: Add SELinux label to $TMPDIR."
    
    Because RHBZ#860235 has been fixed in selinux-policy 3.11.1-25.fc18.
    
    This reverts commit 7fc838cca334ccf3d388c5598ff7fae88dbe4513.

commit 8b693a7fd17104bee0241829e56eb79834d62e90
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 26 12:03:16 2012 +0100

    guestfs-testing(1): Start by running libguestfs-test-tool.

commit abe3ea6a3d1b97bd0cb71fd258d81ebc9f9565b7
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Sep 26 17:20:27 2012 +0800

    remove the useless "h" option
    
    "h" option is not enabled in virt-cat, remove it.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 25b043cd0d5dea2e66c7641554982c65a6bf4d5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 25 19:00:50 2012 +0100

    FAQ: Miscellaneous cleanups.
    
    - Use S<...> for non-breaking spaces.
    - Arrange the builds section better.
    - Add a section on enabling sVirt.
    - Other small fixes.

commit 916f788bffa3fb667f146855673f92f178630a0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 25 18:30:36 2012 +0100

    docs: Link to guestfs-recipes(1) from intro in guestfs(3).

commit fbc4615b98d5368659c55e71960da92d64b447bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 25 14:26:38 2012 +0100

    gobject: No need to remove old API files.
    
    In commit 3d84ca76fec491015030daa53e9122b03032ddfd we changed the
    generator so it now automatically removes old API files.

commit b5c558db2e6915a6fa939d1642e6e8171192041d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 25 12:15:19 2012 +0100

    test-launch-race: Add SELinux label to $TMPDIR.
    
    This is a temporary workaround for
    https://bugzilla.redhat.com/show_bug.cgi?id=860235
    which can be removed once this bug is fixed.

commit d435aa065dfece62dd21af2cae39c754741588f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 24 21:25:31 2012 +0100

    libvirt >= 0.10.2 required for libvirt backend.

commit f01a20ba9c91e8ef3e9dbee7245a592304d1eaad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 24 17:00:03 2012 +0100

    Version 1.19.44.

commit 64468b8f5328bf7f11b53f72445c93afc9657d54
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Sep 24 16:49:21 2012 +0800

    Fix tests/bigdirs/test-big-dirs.pl to use mke2fs
    
    Let tests/bigdirs/test-big-dirs.pl uses mke2fs to create small
    inode ratio files.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
     - Fix invocation of mke2fs with optional arguments.
     - Run the test to check it works.

commit c5b4b2f200fd1d06c281b61d76f6c6ade83fb64b
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Sep 24 16:32:51 2012 +0800

    NEW API:ext:mke2fs
    
    New api mke2fs for full configuration of filesystem.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
     - Update description.
     - Run and fix the tests.
     - Remove bogus filename from po/POTFILES.

commit a2a9a66ffe62dd09032cd1b0e8e4865dfd4253e2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 24 16:39:41 2012 +0100

    tests/bigdirs: Add empty TESTS= rule.
    
    Without this empty rule, automake doesn't generate the rest of the
    testing infrastructure, so you can't enable the test yourself by doing
    'make check TESTS=test-big-dirs.pl'.

commit 2ad1b210099f87ed1232fb21a330427bafe4ac0e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 24 09:45:33 2012 +0100

    generator: xdr: Re-code procedure table.
    
    This is just code motion.

commit fd1c89a6c3ad25d5f71511b20e16a433fae1978e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 24 09:26:10 2012 +0100

    generator: Tidy up comments in guestfs_protocol.x.

commit 8636dbe92bb6e82fb7e92e7b61dcbe1d4be60d29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 24 09:24:33 2012 +0100

    generator: Allow an optional emacs-mode at the top of generated files.

commit 44763a4903d970d894fccc761ba9997104858058
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 24 09:26:45 2012 +0100

    generator: The default input files are 'generator/ *.ml' [sic].
    
    Since generator source files were renamed, the comment at the
    top of each generated file was wrong.
    
    Unfortunately we cannot allow /* to appear within a comment,
    so the space is necessary.

commit 073da5b3fb7f777bb65f98fbd1da6436ea8a7be2
Author: Olaf Hering <olaf@aepfle.de>
Date:   Fri Sep 21 21:04:43 2012 +0200

    sysprep: handle at jobs in cron-spool operation
    
    cron-spool claims to remove at jobs, but it has no code to actually do
    that. Add patterns to remove files in known at spool locations.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 83086d33f242deb691d4ed1f5a2a00c014b38b2f
Author: Olaf Hering <olaf@aepfle.de>
Date:   Fri Sep 21 20:00:34 2012 +0200

    sysprep: handle distro specific sysv scripts
    
    Currently firstboot would only work on redhat-based images.
    Handle redhat-based, suse-based and debian guests, error out in case of an
    unknown distro.
    Update firstboot.sh:
     - make sure scripts exists and can be executed
     - add LSB header to avoid insserv warnings later on
     - run script only if called with "start"
    Update functions, pass only required options.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit f8beb95e729fa7d2dcd7cfe1d519b70a411f0504
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 22 10:47:11 2012 +0100

    test-launch-race: Add comment.

commit 10d921e782de2cf4432bebc33e4fa71a594d916c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 21 16:31:05 2012 +0100

    Version 1.19.43.

commit 5ce50d018eae46a7a6b0cffdbaba7f04c5261b72
Author: Olaf Hering <olaf@aepfle.de>
Date:   Fri Sep 21 14:09:10 2012 +0100

    sysprep: handle suse-based in hostname operation
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 9041fb6e891ea3e0bb6e500639445040a74ef3a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 21 12:42:53 2012 +0100

    launch: Handle guestfs_config qemu_value == NULL.
    
    The second parameter to 'config' may be NULL.
    
    In commit 52fa23d74f6308daf804c2330b0b27e0b4412594 (refactoring of
    guestfs_config) the code this got lost, and guestfs_config would
    segfault if qemu_value was NULL.
    
    Also this fixes the libvirt method to handle the same case.
    
    I checked libguestfs-1.18 and -1.16 branches, and this problem does
    NOT affect them.

commit 5892c54e58aad85639ac2517014861983b17cd3f
Author: Olaf Hering <olaf@aepfle.de>
Date:   Fri Sep 21 11:00:01 2012 +0200

    Update SuSE Linux detection.
    
    Update SuSE Linux detection. Up to now everything with a
    /etc/SuSE-release file was treated as openSuSE. With this change SLES
    based distributions such as "SUSE Linux Enterprise Server", "SUSE
    Linux Enterprise Desktop" and "Novell Linux Desktop" will show up as
    "sles". The 'opensuse' detection was updated to handle older openSuSE
    releases as well as the well known SuSE Linux releases, starting from
    6.0. Everything else with a /etc/SuSE-release file will show up as
    "suse-based".
    
    Here is a collection of release files:
    
    ==> Dist/6.0/etc/SuSE-release <==
    SuSE Linux 6.0 (i386)
    VERSION = 6.0
    
    ==> Dist/6.1/etc/SuSE-release <==
    SuSE Linux 6.1 (i386)
    VERSION = 6.1
    
    ==> Dist/6.2/etc/SuSE-release <==
    SuSE Linux 6.2 (i386)
    VERSION = 6.2
    
    ==> Dist/6.3/etc/SuSE-release <==
    SuSE Linux 6.3 (i386)
    VERSION = 6.3
    
    ==> Dist/6.4/etc/SuSE-release <==
    SuSE Linux 6.4 (i386)
    VERSION = 6.4
    
    ==> Dist/7.0/etc/SuSE-release <==
    SuSE Linux 7.0 (i386)
    VERSION = 7.0
    
    ==> Dist/7.1/etc/SuSE-release <==
    SuSE Linux 7.1 (i386)
    VERSION = 7.1
    
    ==> Dist/7.2/etc/SuSE-release <==
    SuSE Linux 7.2 (i386)
    VERSION = 7.2
    
    ==> Dist/7.3/etc/SuSE-release <==
    SuSE Linux 7.3 (i386)
    VERSION = 7.3
    
    ==> Dist/8.0/etc/SuSE-release <==
    SuSE Linux 8.0 (i386)
    VERSION = 8.0
    
    ==> Dist/8.1/etc/SuSE-release <==
    SuSE Linux 8.1 (i386)
    VERSION = 8.1
    
    ==> Dist/8.2/etc/SuSE-release <==
    SuSE Linux 8.2 (x86-64)
    VERSION = 8.2
    
    ==> Dist/9.0/etc/SuSE-release <==
    SuSE Linux 9.0 (x86-64)
    VERSION = 9.0
    
    ==> Dist/9.1/etc/SuSE-release <==
    SuSE Linux 9.1 (x86-64)
    VERSION = 9.1
    
    ==> Dist/9.2/etc/SuSE-release <==
    SuSE Linux 9.2 (x86-64)
    VERSION = 9.2
    
    ==> Dist/9.3/etc/SuSE-release <==
    SuSE Linux 9.3 (x86-64)
    VERSION = 9.3
    
    ==> Dist/10.0/etc/SuSE-release <==
    SUSE LINUX 10.0 (X86-64) OSS
    VERSION = 10.0
    
    ==> Dist/10.1-remastered/etc/SuSE-release <==
    SUSE LINUX 10.1 (X86-64)
    VERSION = 10.1
    
    ==> Dist/10.1/etc/SuSE-release <==
    SUSE Linux 10.1 (X86-64) Beta8
    VERSION = 10.1
    
    ==> Dist/10.2/etc/SuSE-release <==
    openSUSE 10.2 (X86-64)
    VERSION = 10.2
    
    ==> Dist/10.3/etc/SuSE-release <==
    openSUSE 10.3 (X86-64)
    VERSION = 10.3
    
    ==> Dist/11.0/etc/SuSE-release <==
    openSUSE 11.0 (X86-64)
    VERSION = 11.0
    
    ==> Dist/11.1/etc/SuSE-release <==
    openSUSE 11.1 (x86_64)
    VERSION = 11.1
    
    ==> Dist/11.2/etc/SuSE-release <==
    openSUSE 11.2 (x86_64)
    VERSION = 11.2
    
    ==> Dist/11.3/etc/SuSE-release <==
    openSUSE 11.3 (x86_64)
    VERSION = 11.3
    
    ==> Dist/11.4/etc/SuSE-release <==
    openSUSE 11.4 (x86_64)
    VERSION = 11.4
    CODENAME = Celadon
    
    ==> Dist/12.1/etc/SuSE-release <==
    openSUSE 12.1 (x86_64)
    VERSION = 12.1
    CODENAME = Asparagus
    
    ==> Dist/12.2/etc/SuSE-release <==
    openSUSE 12.2 (x86_64)
    VERSION = 12.2
    CODENAME = Mantis
    
    ==> Dist/sles8/etc/SuSE-release <==
    SuSE SLES-8 (AMD64)
    VERSION = 8.1
    
    ==> Dist/sles9/etc/SuSE-release <==
    SUSE LINUX Enterprise Server 9 (x86_64)
    VERSION = 9
    
    ==> Dist/sles9sp2/etc/SuSE-release <==
    SUSE LINUX Enterprise Server 9 (x86_64)
    VERSION = 9
    PATCHLEVEL = 2
    
    ==> Dist/sles9sp3/etc/SuSE-release <==
    SUSE LINUX Enterprise Server 9 (x86_64)
    VERSION = 9
    PATCHLEVEL = 3
    
    ==> Dist/sles9sp4/etc/SuSE-release <==
    SUSE LINUX Enterprise Server 9 (x86_64)
    VERSION = 9
    PATCHLEVEL = 4
    ==> Dist/sled10/etc/SuSE-release <==
    SUSE Linux Enterprise Desktop 10 (x86_64)
    VERSION = 10
    
    ==> Dist/sled10sp1/etc/SuSE-release <==
    SUSE Linux Enterprise Desktop 10 (x86_64)
    VERSION = 10
    PATCHLEVEL = 1
    
    ==> Dist/sled10sp2/etc/SuSE-release <==
    SUSE Linux Enterprise Desktop 10 (x86_64)
    VERSION = 10
    PATCHLEVEL = 2
    
    ==> Dist/sled10sp3/etc/SuSE-release <==
    SUSE Linux Enterprise Desktop 10 (x86_64)
    VERSION = 10
    PATCHLEVEL = 3
    
    ==> Dist/sled10sp4/etc/SuSE-release <==
    SUSE Linux Enterprise Desktop 10 (x86_64)
    VERSION = 10
    PATCHLEVEL = 4
    
    ==> Dist/sled11/etc/SuSE-release <==
    SUSE Linux Enterprise Desktop 11 (x86_64)
    VERSION = 11
    PATCHLEVEL = 0
    
    ==> Dist/sled11sp1/etc/SuSE-release <==
    SUSE Linux Enterprise Desktop 11 (x86_64)
    VERSION = 11
    PATCHLEVEL = 1
    
    ==> Dist/sled11sp2/etc/SuSE-release <==
    SUSE Linux Enterprise Desktop 11 (x86_64)
    VERSION = 11
    PATCHLEVEL = 2
    
    ==> Dist/sles10/etc/SuSE-release <==
    SUSE Linux Enterprise Server 10 (x86_64)
    VERSION = 10
    
    ==> Dist/sles10sp1/etc/SuSE-release <==
    SUSE Linux Enterprise Server 10 (x86_64)
    VERSION = 10
    PATCHLEVEL = 1
    
    ==> Dist/sles10sp2/etc/SuSE-release <==
    SUSE Linux Enterprise Server 10 (x86_64)
    VERSION = 10
    PATCHLEVEL = 2
    
    ==> Dist/sles10sp3/etc/SuSE-release <==
    SUSE Linux Enterprise Server 10 (x86_64)
    VERSION = 10
    PATCHLEVEL = 3
    
    ==> Dist/sles10sp4/etc/SuSE-release <==
    SUSE Linux Enterprise Server 10 (x86_64)
    VERSION = 10
    PATCHLEVEL = 4
    
    ==> Dist/sles11/etc/SuSE-release <==
    SUSE Linux Enterprise Server 11 (x86_64)
    VERSION = 11
    PATCHLEVEL = 0
    
    ==> Dist/sles11sp1/etc/SuSE-release <==
    SUSE Linux Enterprise Server 11 (x86_64)
    VERSION = 11
    PATCHLEVEL = 1
    
    ==> Dist/sles11sp2/etc/SuSE-release <==
    SUSE Linux Enterprise Server 11 (x86_64)
    VERSION = 11
    PATCHLEVEL = 2
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit b027e06a1ede15277025de4e6b5f3051bffdc45f
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Sep 20 19:36:21 2012 +0200

    ./run: Keep gnome-keyring from disturbing test script output

commit a43d22674cbad737fdd75884081db61ae985a53b
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Sep 20 19:36:20 2012 +0200

    ./run: Make sure that the temporary directory exists so test scripts can produce output files

commit ffd0d34a77805a0c4eadb9ebc7ea1fbc1687236a
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Sep 20 19:36:03 2012 +0200

    python: PyInt_* no longer exists in python3, replace with PyLong_*

commit d64e5c9f2022d5f1d6762e64395cda14e49e65f8
Author: Olaf Hering <olaf@aepfle.de>
Date:   Thu Sep 20 15:19:43 2012 +0200

    rename local variable to avoid clash with match macro
    
    match will expand to guestfs___match, rename the local variable to avoid clash.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit e1ce0001bb6075496b54804ac65c40871974e716
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 20 17:56:40 2012 +0100

    docs: Add links to various guestfs-* man pages from guestfs(3).

commit 94b13a9c830ecf3b0ed05a3d4712f4d34b294b85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 20 17:56:10 2012 +0100

    recipes: Add section about uploading raw filesystem content.

commit b4b6c77b77a7d64911de1debc6cbdb20002276d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 20 11:41:16 2012 +0100

    launch: Make the "launched failed" message more explanatory.
    
    Since this is the most common error seen by people who have
    installation problems, buggy qemu, etc, and since no one reads the
    FAQ, describe in this error message what resources are available to
    debug launch problems.

commit 274c197a373a9340c1b752be84db66eccd194e6e
Author: Olaf Hering <olaf@aepfle.de>
Date:   Wed Sep 19 19:37:34 2012 +0200

    sysprep: handle SuSE in random-seed operation
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 6c5f3a72ad3e61724f210a1b2d577e2c139eed4e
Author: Olaf Hering <olaf@aepfle.de>
Date:   Wed Sep 19 19:32:35 2012 +0200

    sysprep: add zypper to package-manager-cache operation
    
    libzypp and zypper store their cache files in
    /var/cache/zypp/{packages,raw,solv}/ and /var/cache/zypper/RPMS/
    Add a single pattern to match both cases.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 853fef366bb3692e6ddfd6a0d744f6b0f6e78174
Author: Olaf Hering <olaf@aepfle.de>
Date:   Wed Sep 19 19:26:39 2012 +0200

    sysprep: remove apache2, audit and ntp in logfile operation
    
    Add more entries to the dump ground of logfile patterns.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 2b5dc66f0f8b802fd034fb4dd38b6331066aaa67
Author: Olaf Hering <olaf@aepfle.de>
Date:   Wed Sep 19 18:18:29 2012 +0100

    sysprep: handle SuSE in hostname operation
    
    SuSE based installations store the hostname in /etc/HOSTNAME.
    Add code to handle both opensuse and sles. Code to properly detect
    the latter will be added with another patch.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit fbe867e7ef67cab9f499921915fcb3bca5071f7e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 19 17:34:11 2012 +0100

    sysprep: Create /etc/sysconfig/network file if it doesn't exist (RHBZ#858696).

commit 0484e30611e5e298cf06bffe1461f37f7ae007ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 18 12:51:36 2012 +0100

    extra-tests: Re-run the tests against upstream libvirt.

commit 120c10ad11d30caa9ab422d107932e1bb8b46c15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 18 12:48:36 2012 +0100

    extra-tests: Clean up some comments about the upstream qemu tests.

commit 22790ab66eb69658ed59a95b159aadeca7a6efb4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 18 12:47:50 2012 +0100

    extra-tests: Add scripts used by these tests to EXTRA_DIST.

commit 56e461a118abe8c0a280195fab845a850636b532
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 23:06:44 2012 +0100

    Version 1.19.42.

commit 38e1b50e26824e2cd7802b7edc69fcfafc3a89f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 22:52:53 2012 +0100

    tmp: Ignore libguestfsXXXXXX temporary files in tmp dir.

commit fdc0dd4256a28f5b6289b23c71ee7ad7ebfcd647
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 22:41:25 2012 +0100

    ./run: Write temporary file in tmp directory.
    
    We have a new 'tmp' directory under the top level dir for temporary
    files.  Use it for the temporary output from the ./run script.

commit 6953d9d4d40880fe772b0809eef0864ad4340ffc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 16:34:59 2012 +0100

    launch: libvirt: Pass TMPDIR to qemu subprocess.

commit 67468d3be57dc4bab5d506c99f05059973ca5cf7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 16:25:53 2012 +0100

    New API: rm-f: remove a file, ignoring errors if it doesn't exist.

commit 72c295949238dd940bd219df5ceb39528e6b0997
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 14:03:28 2012 +0100

    inspect: Fix segfault and error caused by earlier code cleanups.
    
    This fixes commit e128a627fb8f39f4f4c11b782cef895bd79f0282.

commit 314fed93c9f456a215c898a7d13bd0c217edb1b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 13:38:38 2012 +0100

    launch: libvirt: Disable sVirt if using a custom qemu (ie. setting <emulator>).
    
    See:
    https://bugzilla.redhat.com/show_bug.cgi?id=857659
    especially Dan's comment 4.

commit bc8a8c372d2b831d7ab9d237cad17ef01a518abf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 13:15:49 2012 +0100

    Fix multiple errors where jump skips variable initialization.
    
    <file>: error: jump skips variable initialization [-Werror=jump-misses-init]
    
    This has only just appeared, possibly related to previous gnulib
    update.  In any case, this is just code motion / cleanup.

commit 1efc2cf194627745945c542a7d4e6549cb3d2da7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 13:31:45 2012 +0100

    daemon: stubs: Move all arg decls to top of function.
    
    For some reason, argument declarations were handled
    inconsistently for strings and non-string arguments.
    Non-string arguments were all declared at the top of the
    function stub, where as string arguments were declared
    in place.
    
    Be consistent.
    
    This is just code motion.

commit 05596307f21481bdfa22954b15d8877d763b1a81
Author: Jim Meyering <jim@meyering.net>
Date:   Mon Sep 17 11:51:05 2012 +0200

    maint: remove a subsumed syntax-check rule
    
    * cfg.mk (sc_prohibit_trailing_blank_lines): Remove rule.  It is now
    subsumed by the much more efficient sc_prohibit_empty_lines_at_EOF
    rule in gnulib's maint.mk.

commit 28deddc1791674a84b53b79fa13a5d1c4a4e49c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 10:15:43 2012 +0100

    syntax: Exclude examples and test program from <config.h> requirement
    (thanks Jim Meyering).

commit d37c6b2e00ef00701c3df4dd8f2f98cd1bd428bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 10:12:20 2012 +0100

    syntax: Allow strncpy in launch-*.c files (thanks Jim Meyering).
    
    We use strncpy, justifiably, to copy the socket name into
    the fixed length Unix domain sun_path buffer.

commit a45baaf06e66d3d23c2cc365c7dc39fe382fb8f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 10:10:17 2012 +0100

    syntax: Exclude examples from strcmp and strncmp checks (thanks Jim Meyering).

commit 5170e045eaee3af13a5b6097f93e7713ecb7f7bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 10:06:28 2012 +0100

    syntax: Ignore documentation when testing for magic number exit() calls (thanks Jim Meyering).

commit bb7345753058dfd0d810733284d12b07e4bbdff4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 09:54:27 2012 +0100

    syntax: Exclude PO files from doubled words test (thanks Jim Meyering).

commit d3778173db58d7ec3cf3e8f6c14cf0ec89600307
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 09:51:01 2012 +0100

    syntax: Remove definitions of O_CLOEXEC, except in examples (thanks Jim Meyering).
    
    The gnulib <fcntl.h> replacement header will now define this symbol if
    it's not defined already.

commit ec9150f47a0a1af2f5c36b7e8b864e99354aa1ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 09:47:15 2012 +0100

    syntax: Exclude period in error message checks from PHP programs (thanks: Jim Meyering).

commit d5b2f47945f4a125f0fce36c6c3f42114709c923
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 09:45:38 2012 +0100

    syntax: Disable cast arg to free test (thanks Jim Meyering).

commit 119e24149dddd4722bf760f0cfbf3703ff97cdf0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 09:44:11 2012 +0100

    syntax: Exclude certain files from bindtextdomain test (thanks Jim Meyering).

commit fc20afabf2d3b4077cde6584cdb25afe0111a90a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 17 09:52:31 2012 +0100

    Update to latest gnulib.

commit 642ac5749b3b99386c199ce093039395fad7481c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 16 13:35:07 2012 +0100

    Version 1.19.41.

commit a8a8bfe8341a53f9812a642ff94febea82d918e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 17:10:34 2012 +0100

    extra-tests: Write a qemu wrapper script on the fly.
    
    Passing the $upstream_qemu environment variable is not reliable when
    libvirt is involved: Environment variables are passed to the first
    instance of the session libvirtd, but because libvirt reuses the
    session libvirtd, subsequent environment variable settings are lost
    (this is filed as RHBZ#856619).
    
    Bypass all of this by writing a custom qemu-wrapper.sh which contains
    the hard-coded values we want.

commit 521fc4d0376ed1a4ab4c0a0e2c5994e2b64dd827
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 13:52:17 2012 +0100

    extra-tests: Rerun extra tests with regular appliance attach method.
    
    If libvirt is being used as the backend, rerun all the extra-tests
    again using the regular appliance backend.

commit 9b4f30cec01ecd6627c0ecd1a1e63c78c6821653
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 13:47:39 2012 +0100

    extra-tests: The upstream qemu test now reruns all the extra tests.

commit 998b2e6d382fd1665e0ffb98a40386c883070bfb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 14:40:28 2012 +0100

    extra-tests: Fix libvirt URI so we can run tests with libvirt attach-method.

commit c7f508a4da958d278470478a0db138eb03b5f924
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 13:28:24 2012 +0100

    syntax: Remove trailing whitespace.
    
    Found by 'make syntax-check'.

commit 51e131e43f210d88af5b07a39dc61d63ba1be7ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 13:27:50 2012 +0100

    generator: Remove inaccurate comment.
    
    The correct way to extend functions is documented in generator/README.
    This comment was no longer accurate.

commit 7db514a35bbb58a29add5510294f0784d09b2818
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 13:21:55 2012 +0100

    syntax: Replace test == with = or -eq as appropriate.
    
    Found by 'make syntax-check'.

commit f8cdff3e937d4132fbb5765d16bc03602d0e9d40
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 13:19:12 2012 +0100

    syntax: xfs: Rewrite split_strdup function to avoid use of strncpy.
    
    Found by 'make syntax-check'.

commit ce91c212b74956b09e3232d4845ea853b17a05b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 13:11:45 2012 +0100

    syntax: Use STREQ/STRNEQ in place of strcmp.
    
    Found by 'make syntax-check'.

commit 4b076fd9b11a1ee5a88533656c5cca9fc3dd36ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 13:08:08 2012 +0100

    syntax: Remove include <signal.h> in file that doesn't use it.
    
    Found by 'make syntax-check'.

commit 1c7a56c01632a6bac1664675782ae61b127fd757
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 13:01:10 2012 +0100

    syntax: Remove PATH_MAX-sized buffers allocated on the stack.
    
    On Linux PATH_MAX is 4096, but on some platforms it can be much larger
    or even not defined (ie. unlimited).  Therefore using a PATH_MAX-sized
    stack buffer is not a great idea for portable programs.
    
    This change removes use of PATH_MAX-sized stack-allocated buffers.
    
    This change only applies to the library and standalone programs.
    Inside the daemon, memory allocation is much more complicated so I
    have not changed those (yet).
    
    Found by 'make syntax-check'.

commit 4be43d9bc12e5742568a268464979423f2aefe81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 12:38:07 2012 +0100

    syntax: Remove gnulib "ignore-value.h" in files that don't use it.
    
    Found by 'make syntax-check'.

commit b6ba34e5afd9eae6a40f8512ce9db0850b0662c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 12:35:59 2012 +0100

    syntax: Remove include <dirent.h> in files that don't use it.
    
    Found by 'make syntax-check'.

commit ed2d8fc4f697e536d154071cba2b5eb4aa58db51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 12:34:41 2012 +0100

    syntax: Remove gnulib c-ctype.h in files that don't use it.
    
    Found by 'make syntax-check'.

commit e91dad80ea7f21118644b42387745ee2d262c1c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 12:32:41 2012 +0100

    syntax: Remove include <assert.h> where assert is not used.
    
    Found by 'make syntax-check'.

commit 339ce83aed3e017ea3e452ae5734de83eb08435b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 12:31:07 2012 +0100

    lib: Rearrange headers.
    
    This is just code motion.

commit 88641b154e60c60941902ecb5551d53241377ad1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 12:30:12 2012 +0100

    lib: Remove unused headers <arpa/inet.h> and <netinet/in.h>
    
    These were used back in the day when we used TCP for the
    communications channel with the guest.

commit 16bbd5713364c97f48bba2df914baec38141d4b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 12:25:28 2012 +0100

    syntax: Remove HAVE_*_H tests which are always true.
    
    Gnulib supplies replacements for these headers, so there
    is no need to test.

commit e22c72da2b72bba90c3e97d72e997268218ad802
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 12:22:44 2012 +0100

    perl: Add <stdio.h> and <stdlib.h> for printf and malloc.

commit 2b6c4c67b2ed74deee7d517e9e8516994231faa5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 12:21:24 2012 +0100

    perl: Include <inttypes.h> and assume it always defines PRId64 and PRIu64.
    
    If these are not defined in the header files, it's a problem on
    the platform which we should fix with gnulib.  Our replacement
    definitions might be wrong here.

commit aa4704041fa564cddadbd422eb7f491801d84403
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 12:15:47 2012 +0100

    lib: These optargs structures are not modified, hence const.

commit 35ce9e1db6208d85c1219c8fbb97c5b130783ca6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 11:50:32 2012 +0100

    syntax: Remove test for TAB indentation.
    
    Nothing particularly wrong with using TABs for indentation,
    and this test also has a lot of false positives.

commit 47eb19ff6c1eb92f17b7508e571fb4e4e72c1e8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 11:33:35 2012 +0100

    syntax: xfs: Remove useless if before free.
    
    Found by running 'make syntax-check'.

commit b773970b831a536e6566f8dba88a93f2f7fdafc2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 15 11:53:44 2012 +0100

    docs: Fix documentation of syntax-check target, add extra-tests.

commit b14911acb6def5f64551c5fd496a88e45d582a54
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 14 23:03:37 2012 +0100

    faq: Make the legal section less unnecessarily legalistic.

commit 6f95de551e6a9d9cb327e3e32bfbb1615ec7131a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 14 23:02:23 2012 +0100

    faq: Tidy up headings.

commit 38cfa51d78e1ec600507eb4a20309203bb6baa72
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 14 22:57:02 2012 +0100

    faq: Add more answers about read-only disks.

commit df6dca573046a716a5d2950cadd55ec1de0768f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 16:50:33 2012 +0100

    launch: libvirt: Enable sVirt.

commit db3d09cd84003a92297eb7847ffc0c58ef97e862
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 14 16:45:43 2012 +0100

    test-9p: Disable this test with libvirt.
    
    This test doesn't work with sVirt if SELinux is enforcing, because
    qemu won't be able to access the 9p-exported directory on the host.

commit ae8d687432858e29b1de32dedc2a6a8e277f4c68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 14 14:42:24 2012 +0100

    build: Create new 'tmp' directory for tests.
    
    Having a separate directory means:
    
    (1) It's easy to clean up orphaned temporary files, the appliance,
        etc.
    
    (2) You can put an SELinux label on this directory so that qemu can
        write to it when you're using sVirt and SELinux is enforcing:
    
        chcon --reference=/tmp tmp

commit 19c19fe5e7bec8cba21ffa1252538f4fa85ab524
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 14 15:50:38 2012 +0100

    launch: libvirt: Mark appliance disk as <shareable/> (thanks Dan Berrange).
    
    This is a fix for multiprogramming: If two instances of libguestfs
    share the same appliance disk, then libvirt would unlabel the disk
    when one of the instances closes the handle, resulting in the other
    qemu being unable to continue accessing the appliance.
    
    Adding the flag makes libvirt understand that the disk is shared so it
    doesn't do this, and it apparently handles locking correctly too if we
    were using sanlock.

commit 96cba2503ade63fb0309718a042787f2d037f8b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 14 11:34:26 2012 +0100

    test-tool: Print more environment variables.
    
    This prints LIBVIRT_*, LIBVIRTD_*, LD_* and PATH, since these are all
    useful for debugging and could affect libguestfs in some way.

commit 8d2f24e2632c31b2116c97feca008c02b439698f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 13 19:31:51 2012 +0100

    fish: Replace '_' with '-' in deprecation cross-refs (thanks Olaf Hering).

commit a7d6dbf93511571e8b13178b30a491e0f589d512
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 12 21:38:48 2012 +0100

    lib: guestfs_disk_format: Set LC_ALL=C instead of LANG=C.
    
    LC_ALL takes precedence over LANG.  See:
    
    http://pubs.opengroup.org/onlinepubs/7908799/xbd/envvar.html

commit c5cf443aafcd1214ed7c4aaf3c1a3a0267dafaa0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 6 12:46:57 2012 +0100

    release-notes: Add 'draft' background image.

commit 00f6503916c50246d4c1fe3f785eeb5d37efa905
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 5 13:56:34 2012 +0100

    extra-tests: Don't use $QEMU as a variable.
    
    Since 'QEMU' is set (overwritten) by the autoconf-generated Makefile,
    this test would always test installed qemu, not upstream qemu,
    making it pretty useless.  Use another name for this variable.

commit 7d665443bb3c9ebb6b628ba1e94395ac13d49cda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 5 11:12:52 2012 +0100

    generator: Remove generated and unused files from previous runs of the generator.
    
    If you go back in time in git (eg. git reset, git bisect) then you can
    end up in a situation where a file that was generated by a later
    version is left around unused in the earlier version.
    
    This isn't a problem for most things, but gobject documentation
    generation picks up any file in a directory, even unreferenced ones,
    and breaks.  So the correct thing to do is to remove these files.

commit ddf9e7691e1c549af01ae4beaf814aecfaa8677e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 5 11:12:25 2012 +0100

    generator: gobject: Use a more normal way to output files.
    
    The generator output is identical, verified by comparing the
    output files before and after the change.

commit a67ea0aa5f8b23cc0c2aa8aaa4a1b407dc061d38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 23:16:47 2012 +0100

    Version 1.19.40.

commit 8afdbe15f06f05a4e06e4e4ed3b099374dd7f69e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 22:29:09 2012 +0100

    sparsify: Fix use of closed handle (thanks Olaf Hering).
    
    This fixes commit faaedeb3432253847107ca2c4530f681c6a1e385.
    
    Also contains an update to the test which tests the format
    auto-detect path.

commit 38ebcbe63d53ecd43787dd3f02054b18626d2a6d
Author: Olaf Hering <olaf@aepfle.de>
Date:   Tue Sep 4 17:43:39 2012 +0200

    fix fuse_opt_add_opt_escaped return type
    
    I: Program returns random data in a function
    E: libguestfs no-return-in-nonvoid-function guestmount.c:75
    
    The function fuse_opt_add_opt_escaped has only one caller and a return
    code is not checked.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 52b657d73e6716c945cb8ae1630d689816e62607
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 17:10:23 2012 +0100

    Version 1.19.39.

commit 443ba7827a4313ef06819bb0959302af7d0df56b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 15:34:35 2012 +0100

    shutdown: Add 'check_for_errors' hint along the shutdown path.
    
    This hint tells the backend whether anyone cares about errors when the
    appliance is shut down.
    
    Currently this only has any effect on the libvirt backend, where it
    controls whether or not we use the VIR_DOMAIN_DESTROY_GRACEFUL flag.

commit f433e756190ede6a5a714629e6ef4455859d1435
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 15:25:22 2012 +0100

    launch: libvirt: Add VIR_DOMAIN_DESTROY_GRACEFUL flag.
    
    We want libvirt to report failures when destroying the guest.  See:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=853369#c12

commit 7d9268587c35ecfffa34d81cd514585f393d90dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 14:02:58 2012 +0100

    rescue: Add an expect-driven test for the virt-rescue command.
    
    This command was not tested at all.  As a result we didn't notice that
    it was broken for a long time (RHBZ#853159).
    
    This adds a test that drives the command through a pty.  It uses the
    perl 'Expect' module, although this is not required.

commit f21add2b6750a36a50b9d3719a4b5fdde574f3c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 14:37:44 2012 +0100

    proto: Don't set g->fd[] to /dev/null in direct mode, fixing virt-rescue (RHBZ#853159).
    
    https://bugzilla.redhat.com/show_bug.cgi?id=853159
    
    git bisect pointed to the following commit:
    
      commit ec8e3b6cad170d08ac18b580792dfb137eb171dc
      Author: Richard W.M. Jones <rjones@redhat.com>
      Date:   Fri Jul 20 14:24:10 2012 +0100
    
        launch: Abstract attach method operations.
    
        g->attach_ops points to a structure which contains the
        operations supported by each attach method backend
        (ie. appliance, unix, etc.).
    
    Since that commit was essentially just code motion, it wasn't clear
    why virt-rescue should be affected by it.
    
    In fact the reason is as follows:
    
    (1) In direct mode, we don't need g->fd[] (which would normally be
    connected to the stdin/stdout of qemu).  So we opened them on
    /dev/null so they had some value.
    
    (2) accept_from_daemon / read_log_message_or_eof reads from g->fd[1].
    Since this is connected to /dev/null, it always reads EOF.
    
    (3) This would cause child_cleanup to be called.  This is completely
    unintentional: we don't want to cleanup the child at this point, even
    in direct mode.
    
    (4) Prior to the commit above, child_cleanup first waited for the
    process to exit (ie. waitpid).  This happened to work, since we are
    effectively waiting for the user to exit virt-rescue.
    
    (5) After the commit above, the order of operations was changed so
    that we first killed qemu before waiting for it.  This broke
    virt-rescue.
    
    The fix is to change direct mode so that it leaves g->fd[]'s as -1.
    The rest of the protocol code can deal with this situation -- it
    ignores the log fd instead of trying to read from it.

commit df5e941d9894c5e4a9f4e03c6279f4dfed1dcfdf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 12:04:31 2012 +0100

    rescue: If attach-method is 'libvirt', force it to be 'appliance'.
    
    The libvirt backend currently doesn't support direct mode.  We should
    make that work in future.  As a workaround, force the attach-method to
    be 'appliance' in this case.

commit 41c709695f0d715172dccc8ba6b612b62765de32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 11:53:57 2012 +0100

    rescue: If -v / debugging enabled, don't mask error messages.
    
    We set the error handler to NULL in order to mask "normal" error
    messages that we expect to see because of the unusual way that
    virt-rescue runs the appliance.  However if the user selected -v /
    enabled debugging, then it is reasonable to expect they want to see
    every message, so do not mask anything.

commit 05fe10b03016b4c610527a0ad47d8b74a36a3820
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 11:49:51 2012 +0100

    launch: libvirt: Direct mode flag is not (yet) supported, so give an error in this case.
    
    We definitely intend to support this in future.

commit 3f38ac7dfc5d1a878bde2d99dd3d0ccb88915915
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 11:55:13 2012 +0100

    Update release notes (text file).
    
    This updates commit 9e4ac650e4c4d934a91a88d7e4aaf5495845a71b.

commit 4c3c3aacc42d69245ebf85b08773d0e6557d99e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 11:31:28 2012 +0100

    Update release notes.

commit 80b04fc62963768739370fdb4c8069b928fa342b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 09:03:08 2012 +0100

    lib: Add tests to the disk-{format,virtual-size,has-backing-file} APIs.

commit 598df65cadfde8344ed33491a02d8c1b6ab00d85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 08:58:21 2012 +0100

    New APIs: disk-virtual-size and disk-has-backing-file.

commit cdc7d2c838b5565d61522bae2ede76f469025126
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 08:39:04 2012 +0100

    lib: Reimplement qemu-img info parser for flexibility.
    
    This allows other fields from the output of 'qemu-img info'
    to be parsed out.
    
    This updates commit 20902e7ce02fa375d5d336e6b984f615472ad1b1.

commit bb464beb0c4292823f9cd4903c46085784583910
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 4 09:39:25 2012 +0100

    Fix guestfs_disk_image API to work with relative paths.
    
    guestfs_disk_image makes a symbolic link to the real filename in order
    to sanitize the filename.  However this fails if the filename is a
    relative path.  Call realpath(3) to make the filename canonical.
    
    This fixes commit 20902e7ce02fa375d5d336e6b984f615472ad1b1.

commit 81a63f68da4089979a7edaf2e2ec9a92f7583789
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 3 18:35:17 2012 +0100

    Version 1.19.38.

commit 61618daaaf7ad9d2dd87337dbce25b09ae1bae71
Author: Olaf Hering <olaf@aepfle.de>
Date:   Mon Sep 3 18:01:37 2012 +0200

    daemon: provide list of checksum commands
    
    While adding the list of external commands I missed the
    various checksum tools.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 546a4157932be488e268358c6b1a2ec92211055b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 3 16:46:10 2012 +0100

    sparsify: Use guestfs_disk_format to autodetect input format (RHBZ#853762).

commit 923c6a129c653bd177c2d84bda01026f8849cc4b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 3 16:45:48 2012 +0100

    launch: libvirt: Use guestfs_disk_format API to autodetect input format.

commit 9b9f43620773ee167433582fa71e9d98a3b7a1e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 3 11:34:01 2012 +0100

    guestfs(3): Document disk image formats and how to detect them.

commit f9461bef4fd70a2b2290c229fc5cc4eca0e81ca0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 3 15:56:29 2012 +0100

    New API: guestfs_disk_format
    
    Detect the disk image format of a file, in a secure way.

commit 9278687442d899bfe4ba672348f8ab28bbd5d96b
Author: Olaf Hering <olaf@aepfle.de>
Date:   Mon Sep 3 10:58:27 2012 +0200

    daemon: remove call to obsolete udevsettle
    
    udevadm is included in all reasonable recent distributions.
    This avoids 'command not found' errors in verbose mode.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 31313d7298a4d9562cbf318998777b5655fb5360
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Sep 3 17:00:11 2012 +0800

    TODO: remove the implemented hostname removing feature
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 067f91e6ea363ab5f0a6a2559b3c736694de5180
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Sep 3 16:05:37 2012 +0800

    sysprep: remove hostname from ifcfg-*
    
    Remove hostname from network interface configuration.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 9a0637e238f898d333dfe551d8afddc386bcee89
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 3 08:52:33 2012 +0100

    generator: Test zero args, one optarg; and 63 optargs.
    
    This just generates the code; it's not called.

commit a3141232b3cbf100e2d068711f633f99ba843303
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 3 09:35:56 2012 +0100

    java: Fix >= 32 optargs (thanks Wanlong Gao).

commit 0c856ece1d205c3fa5546fd3443387d9fe8cfccd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 2 18:26:48 2012 +0100

    generator: Rename 'generator_*' as '*'.
    
    This is a simple renaming of the files/modules.
    
    Note that in OCaml, module names are derived from filenames by
    capitalizing the first letter.  Thus the old module names had the form
    "Generator_api_versions".  The new modules names have the form
    "Api_versions".

commit c19c7a6f7dfc7aab8384eb6bbbc6b9464a7d6f05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 2 19:47:26 2012 +0100

    TODO: Suggest removing hostname from ifcfg-eth* files.

commit a271b0daedbcfe4883f0f5465c7c569e0a12f45b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 2 16:26:09 2012 +0100

    recipes: Checksum file/device.  Download to stdout.

commit ff077d1cece175e34567e3fdf5cf6270f3d331ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 31 19:12:27 2012 +0100

    tests: Attach copyright and license (GPLv2+) notices to various test scripts.
    
    For some reason these tests did not have license notices.

commit fb71cde66e55dfd6dad94891c5b948e71ebe8fa7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 31 19:05:51 2012 +0100

    tests/rsync: Allow rsync test to be skipped by setting SKIP_TEST_RSYNC_SH=1.

commit dcbd538e0ba8a2b06f89157c18b051349ec0b305
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 31 18:34:24 2012 +0100

    Version 1.19.37.

commit 26136688e9cd15f8126f7496742cbe336edb1f87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 31 15:20:25 2012 +0100

    Copy the kernel so that libvirt can add an SELinux label to it. NB. This requires febootstrap >= 3.20 with --copy-kernel flag.

commit 24b2af7ce651b620965d3a6f0822c10dfa5bbe1c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 31 15:14:51 2012 +0100

    guestfs-internal.h: Organize functions by file.
    
    This is almost just code motion.  While doing this I discovered two
    prototypes for functions which no longer exist:
    
      * guestfs___launch_appliance
      * guestfs___launch_unix
    
    so these prototypes have been removed.  The rest are rearranged more
    logically.

commit a18f66ece74837ad4b9fff157471a141dd09f7bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 31 14:30:10 2012 +0100

    tests: Make mkswap and tar tests conditional on linuxfsuuid and xz features.

commit 46d30a6cb5afaba97d03a8e0d0ac9d48ef38340a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 31 10:23:41 2012 +0100

    tests/mount-local: Link test program with gnulib.

commit 4d356d4b9d6cbd04fd4213121803d6f7bfd3fcf1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 31 09:53:44 2012 +0100

    src/dbdump.c: Shouldn't depend on HAVE_HIVEX (thanks Tao Zhou).

commit 57154a2f591159cb84c2bfc0a8a7df9c9373f8be
Author: Olaf Hering <olaf@aepfle.de>
Date:   Thu Aug 30 20:51:27 2012 +0200

    daemon: collect list of called external commands
    
    guestfsd calls many different tools. Keeping track of all of them is
    error prone. This patch introduces a new helper macro to put the command
    string into its own ELF section:
    
    GUESTFSD_EXT_CMD(C_variable, command_name);
    
    This syntax makes it still possible to grep for used command names.
    
    The actual usage of the collected list could be like this:
    
      objcopy -j .guestfsd_ext_cmds -O binary daemon/guestfsd /dev/stdout |
      tr '\0' '\n' | sort -u
    
    The resulting output will be used to tell mkinitrd which programs to
    copy into the initrd.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>
    
    RWMJ:
     - Move str_vgchange at request of author.
     - Fix snprintf call in daemon/debug.c

commit e0e68cbaeb42360d3286bc2180eec317c875ccb1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 30 20:09:16 2012 +0100

    launch: appliance: app.virtio_scsi must not be bool.
    
    This is used to store values 0..3, so it mustn't be a bool.  Ooops.
    
    RHEL 5's gcc revealed this bug.

commit 13b695121d33086443924c40b6d9df1c4a5eba73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 30 17:29:36 2012 +0100

    daemon: Remove e2prog hack (only needed for RHEL 5).
    
    Instead this patch will be carried out of tree in the oldlinux branch.

commit f6a00350b3bffa01f47e195977633de0448541dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 30 16:39:48 2012 +0100

    Version 1.19.36.

commit db6cba2a6ee1f69e0770994102ff46d1d8d2d810
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 30 15:35:16 2012 +0100

    launch: libvirt: Remove code for creating sockdir.
    
    Create the sockets in g->tmpdir as usual.  It's a bug in libvirt that
    it doesn't label the sockets correctly no matter where they are
    located.

commit 77b471127d199679e26cc05f6f24afb2ad54a853
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 30 15:20:00 2012 +0100

    launch: libvirt: Avoid memory leak if sockdir is not created (found by valgrind).

commit 8c4ff11b1a1597e10fa54b519e6d75b0ebb3271f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 30 13:29:49 2012 +0100

    FAQ: Remove link to old RHEL 6.3 preview repo.

commit 2e01b93bbda632746cd5ce06c8526880b4436723
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Thu Aug 30 17:25:47 2012 +0800

    NEW API:xfs:xfs_repair
    
    Add a new api xfs_repair for repairing an XFS filesystem.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
      - Fix non-error return path so it doesn't send two replies.
      - Document return code.

commit b59c57421e366c9661278897b882bcc05e1a0f5e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 30 10:46:35 2012 +0100

    docs: Add guestfs-release-notes.txt to Makefile deps.

commit 0bc4005355237b669831585e1ed0259b7863dfca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 30 08:58:00 2012 +0100

    tests/big-dirs: Don't run this test by default.

commit 5800cb853755f180b264495ce8266023ed828f5f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 29 20:59:06 2012 +0100

    run: Make --test flag print the time taken to run the test.
    
    This is useful because it lets us see which tests take
    the longest.

commit ab11a50d16b6d27803798c963345b989f41061d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 29 19:00:02 2012 +0100

    Version 1.19.35.

commit 2b89ce549c8a7ad865b4d5e54481f8fe4f939ce4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 29 18:34:47 2012 +0100

    python: Convert OInt64 using PyLong_AsLongLong so 64 bit ints work correctly.
    
    This avoids the following error on 32 bit machines:
    
      OverflowError: Python int too large to convert to C long

commit 9a335f11d06f98c69295fb25a6220c01f1da9e96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 18:54:27 2012 +0100

    Update inspection and example programs to use new hivex* APIs (RHBZ#852394).
    
    I tested this by comparing the output of virt-inspector over Windows
    guests before and after the change, which was identical:
    
    $ md5sum `ls -1 /tmp/*.before /tmp/*.after`
    c292d6629b5a761eccb4a279754399b4  /tmp/Win2003.after
    c292d6629b5a761eccb4a279754399b4  /tmp/Win2003.before
    eb1e1ff29208a9ee46e9c100dfec26b2  /tmp/Win2012.after
    eb1e1ff29208a9ee46e9c100dfec26b2  /tmp/Win2012.before
    d060a95d7ffe5dce6c4e66feb80c2837  /tmp/Win7x32.after
    d060a95d7ffe5dce6c4e66feb80c2837  /tmp/Win7x32.before
    8914eee70ac4f8a0317659e09e00dcdc  /tmp/Win7x32Dynamic.after
    8914eee70ac4f8a0317659e09e00dcdc  /tmp/Win7x32Dynamic.before
    a2dcdfc0f9d64054640875aa791889e0  /tmp/Win7x32TwoDisks.after
    a2dcdfc0f9d64054640875aa791889e0  /tmp/Win7x32TwoDisks.before
    5ed49568a5147dce7517c99de41ebf2e  /tmp/Win8previewx64.after
    5ed49568a5147dce7517c99de41ebf2e  /tmp/Win8previewx64.before
    fdfc7d272b79a665ae3313ae1ae30660  /tmp/WinXP.after
    fdfc7d272b79a665ae3313ae1ae30660  /tmp/WinXP.before
    3c705444be664f1316b21c5d8d3cb0be  /tmp/WinXPRecConsole.after
    3c705444be664f1316b21c5d8d3cb0be  /tmp/WinXPRecConsole.before

commit e5e3850b0d9f5f5cb2b279fbaf3b17357adfab80
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 29 13:01:53 2012 +0100

    New API: guestfs_hivex_value_utf8
    
    A convenience function that reads a value from the registry
    and returns it as UTF-8.

commit f1878319ecdaba15babb7f18cd459cba8f59cac0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 16:03:50 2012 +0100

    New APIs: hivex_*
    
    Transscribe many hivex(3) APIs into the libguestfs API.
    
    There is one hive handle per libguestfs handle, as with Augeas.
    
    Note that hivex uses iconv_open for some APIs (eg. hivex_value_string).
    But since we delete all the i18n files from the appliance, this
    doesn't work -- iconv_open returns EINVAL.  Therefore hivex APIs which
    require iconv cannot be bound in the daemon.

commit ed2971d74d0fe34501e23676af241950934d3822
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 19:11:39 2012 +0100

    lib: Remove AUGEAS_CFLAGS, AUGEAS_LIBS.
    
    The library doesn't actually use libaugeas, except indirectly via the
    libguestfs API.  The libguestfs API implements this in the daemon, so
    there's no need for the library to link to augeas at all.

commit 014a03e6dd12c1b4cee83eb91263e74bb5d18156
Author: Olaf Hering <olaf@aepfle.de>
Date:   Wed Aug 29 15:15:12 2012 +0200

    remove ulockmgr from fuse LDFLAGS
    
    libguestfs fails to build with --enable-fuse on openSuSE 11.4 and
    earlier because the included fuse version does not include
    libulockmgr.so. configure already used pkgconfig to retrieve the correct
    CFLAGS, so there is no need to hardcode -lulockmgr.
    With this change the build succeeds again.
    
    Signed-off-by: Olaf Hering <olaf@aepfle.de>

commit 9ba6ad6158a707b62a1bd58eb42a78f8d995e6b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 29 14:15:39 2012 +0100

    java: Further java/java-home fixes.
    
    In particular the JVM executable is now called $JAVA_EXE.
    
    This fixes commit 40b9c14ca9af3b31ea1cf5336142d63313bbae39.

commit cfdda115411767703388ba984fac64cf4928d503
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 29 10:31:09 2012 +0100

    perl: bindtests: Fix 64 bit integers on input on 32 bit Perl interpreter.

commit 0d58937d4e8d210a420d41614cb5ea157a94e819
Author: Wulf C. Krueger <philantrop@exherbo.org>
Date:   Tue Aug 28 18:02:19 2012 +0200

    Fix Java detection and rename --with-java-home to --with-java.
    
    Without this patch, if JAVAC points to a valid executable, --with-java-home=no
    is not respected but the build simply fails.
    Furthermore, --with{,out}-java is a more common form and more in-line with all
    other options.

commit ac8df83b7b5b48324bf655588359bb2b223c7d9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 17:48:19 2012 +0100

    launch: libvirt: Don't crash if shutdown_libvirt is called early in launch.
    
    The assert (conn != NULL) was being triggered with this
    stack trace:
    
        at launch-libvirt.c:1305
        fd=<optimized out>, error_if_eof=error_if_eof@entry=0) at proto.c:222
        size_rtn=size_rtn@entry=0x7fffffffdb34,
        buf_rtn=buf_rtn@entry=0x7fffffffdb58) at proto.c:548
        libvirt_uri=<optimized out>) at launch-libvirt.c:391

commit ad121ebe2c99ca511e2be04c0d638f59f1f35032
Author: Wulf C. Krueger <philantrop@exherbo.org>
Date:   Mon Aug 27 20:28:48 2012 +0200

    Fix disabling the Perl bindings.
    
    --disable-perl isn't currently respected because $PERL correctly points
    to the perl executable and $missing_perl_modules doesn't prevent the
    perl parts to be installed either. Thus, a check for $enable_perl is
    needed.

commit ad700f7ebad65eedc7d08ebdf23b9959bb80dacb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 11:15:13 2012 +0100

    Version 1.19.34.

commit cc76f154c510b4b10c58a61d4c39b227281de312
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 12:56:38 2012 +0100

    po-docs: Copy all *.1 and *.3 files to the install dir.

commit 43bf5386bc8bc6b1b5332801b20d45007e297cf4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 13:16:51 2012 +0100

    po-docs: Update the list of man pages.

commit 40fdf45b169fe4fd5e7144fc061c2d696bf6e638
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 13:15:29 2012 +0100

    po-docs: Fix podwrapper so it works on translated POD files.
    
    These don't contain literal strings like "AUTHORS" (they have the
    translated versions instead) and so checking for these English strings
    is rather useless.
    
    Also we don't usually have the '--license' parameter conveniently
    around so don't enforce this section.

commit d014fe92496def3221e1eef6747baa4ccbefcdb1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 12:55:01 2012 +0100

    po-docs: Don't output translated virt-sysprep page as HTML.

commit a60a1f08e94a124e602ab0b6c9ed1118493aecfa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 12:45:58 2012 +0100

    tools: Fix podwrapper errors in tools directory.
    
    This also makes the test for license "code" less strict, so it should
    only match POD, not Perl comments.
    
    This fixes commit 2f97bf873b64384835f257f8916bf1ebb2af62b4.

commit 70f74a9bbc8213dca5a63eeaacb6802a23e45cc3
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Sun Aug 26 19:32:04 2012 +0900

    Mac OS X: Fixed combination of running autogen.sh on Linux and building on Mac OS X
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit e211762dd5add52716260e3bc033ec85d81285e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 04:46:04 2012 -0400

    podwrapper: Ignore $parser->html_charset if it fails (thanks Wulf C. Krueger).
    
    This method was added in Pod::Simple 3.16 so earlier versions of Perl
    won't have it.  It's not the end of the world if we don't set it.

commit 0f323eee7a21f8c835cb00ec1bc8e25611dae055
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 28 04:00:52 2012 -0400

    Modified API: mkswap now takes optional arguments.
    
    Add optional label and uuid arguments, and deprecate mkswap-L and
    mkswap-U.
    
    This also adds a call to udev_settle after creating the swap device.
    This is an attempt to workaround the following problem seen in Koji
    and Rawhide:
    
    libguestfs: trace: mkswap_L "swapit" "/dev/sda1"
    libguestfs: send_to_daemon: 72 bytes: 00 00 00 44 | 20 00 f5 f5 | 00 00 00 04 | 00 00 00 83 | 00 00 00 00 | ...
    guestfsd: main_loop: proc 210 (part_disk) took 2.28 seconds
    guestfsd: main_loop: new request, len 0x44
    mkswap -f -L swapit /dev/sda1
    libguestfs: recv_from_daemon: 40 bytes: 20 00 f5 f5 | 00 00 00 04 | 00 00 00 83 | 00 00 00 01 | 00 12 37 cf | ...
    libguestfs: trace: mkswap_L = 0
    libguestfs: trace: swapon_label "swapit"
    libguestfs: send_to_daemon: 56 bytes: 00 00 00 34 | 20 00 f5 f5 | 00 00 00 04 | 00 00 00 ae | 00 00 00 00 | ...
    guestfsd: main_loop: proc 131 (mkswap_L) took 0.77 seconds
    guestfsd: main_loop: new request, len 0x34
    swapon -L swapit
    swapon: cannot find the device for swapit
    guestfsd: error: swapit: swapon: cannot find the device for swapit
    libguestfs: recv_from_daemon: 100 bytes: 20 00 f5 f5 | 00 00 00 04 | 00 00 00 ae | 00 00 00 01 | 00 12 37 d0 | ...
    libguestfs: trace: swapon_label = -1 (error)
    swapon_label: swapit: swapon: cannot find the device for swapit
    test_swapon_label_0 FAILED

commit 873de787bdd4dc9182864a35fd7bc6dfdc97d4a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 25 17:28:37 2012 -0400

    docs: Revise README file.

commit 5b34fbe59f0d290826ec9d202798e901a6d997c3
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Sat Aug 25 22:31:29 2012 +0900

    python: Fixed syntax errors in python/guestfs-py.c
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit 33fb78d2cb3d41e889274b10428978bd4e81bbda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 22:02:21 2012 +0100

    docs: Use man page name as default title in HTML output.

commit 9a11a1def830f97b9cefd94079b54da9c93e1095
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 21:12:47 2012 +0100

    release-notes: Add more visible separation between sections in the source file.

commit f773bb099ec120207844a51e1b0cbea36f92f7f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 20:16:07 2012 +0100

    Update release notes.

commit 2affa961e290047a7702f4d32efd603131053b3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 20:11:52 2012 +0100

    podwrapper: Add --license parameter, which is required.
    
    This adds standard LICENSE and BUGS sections to all of the man pages
    that are processed by podwrapper.
    
    Modify all the calls to $(PODWRAPPER) to add the right --license
    parameter according to the content.  Note that this relaxes the
    license on some code example pages, making them effectively BSD-style
    licensed.

commit f5b1dbb844230615321c3506674d74d3c8c8b2b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 20:13:47 2012 +0100

    man pages: Ensure consistent copyright/author sections, remove license
    section.
    
    Ensure each man page contains consistent COPYRIGHT and AUTHOR
    sections.
    
    Remove the LICENSE section.  We will add that back in podwrapper in a
    later commit.

commit 9f02c5bda83411742c681c76c0a1ebc958161783
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 20:11:15 2012 +0100

    podwrapper: Ensure the input file is printed in some error messages.

commit 8fd9daf5ee98bd0406ed4338e0bee1fa97eeb6eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 17:44:42 2012 +0100

    docs: Document null disks.
    
    It's always been possible to use /dev/null as a disk image.
    Document this formally in the API.

commit 10365a2af5c3898cda1431cf50465533b0a60f03
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 16:40:57 2012 +0100

    launch: libvirt: Always create /var/run/libguestfs.
    
    This directory won't necessarily exist (esp. if /var/run is
    really /run).  So create it each time.

commit 20d0a28d58164389dd27a478b3c36be3aac9c31b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 13:56:18 2012 +0100

    Version 1.19.33.

commit 89ab9bf4d6c716f31c3f0eaa37eae3e36ef2dfe7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 13:21:55 2012 +0100

    FAQ: Re-add #backup anchor for section on backups.

commit 89074881afd87fe7ed242c06cbdf626eaf187508
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 13:19:33 2012 +0100

    recipes: Update dumping filesystem content to mention that we now support MD/RAID.

commit cbc49b1c06569a5a9a6deaa9b3f2336a9a4741b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 13:16:18 2012 +0100

    recipes: Refer to virt-format, virt-make-fs for creating disk images.

commit a4b3da3045b8fca6a2feb76dbb003186c3568ed1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 13:10:13 2012 +0100

    recipes: Cloning Windows: plans for virt-sysprep.

commit b364cc68a65d5560863f784d1a954d0587ac8aa2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 13:09:53 2012 +0100

    recipes: For auditing for setuid files, point to virt-ls examples.

commit eaebd44ee2cb56f355c52ff98f3baeded4e5c132
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 12:56:22 2012 +0100

    recipes: For sparsifying guests, point to virt-sparsify.

commit 7c1cc225566b519fb401369ac0626313868d33ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 12:56:10 2012 +0100

    recipes: For listing files, point to virt-ls.

commit 1b635d5a28fb734af21b81cc46b2f53c7fa19353
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 12:55:59 2012 +0100

    recipes: Mention virt-sysprep firstboot feature.

commit cf2e9adba6d262dd87ec601d3f1a9ffdbe457ef8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 12:55:46 2012 +0100

    recipes: Most guests now use grub2, so change the example.

commit 897be1c989d4a56300affd85d1c7faf07c8923ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 12:55:25 2012 +0100

    recipes: Add a section on deleting a file and other common file operations.

commit d89a7fa10aa955fba6ebdebd79e58bdfc2fcf36a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 12:55:09 2012 +0100

    recipes: Update cloning section.

commit bf46fbe5f4641679bd4561efa3192b5ffb8bfb20
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 21 12:24:05 2012 +0100

    launch: libvirt: Minimum libvirt version is now 0.10.0.

commit 6913e939f0abaf4297b5ca63ddeb093c178cebd4
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Aug 20 16:17:01 2012 +0800

    xfs_growfs: drop the unstructed output
    
    Just drop the unstructed output since we can get the structed info
    from xfs_info instead.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 34298a8205fc27c87eb61e92cfcfcd4bd836c5b4
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Aug 20 16:17:00 2012 +0800

    New API: xfs: xfs_admin
    
    Add new api xfs_admin to change parameters of an XFS filesystem.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
     - Remove printuuid, printlabel, since they don't change any settings.
     - Adjusted the documentation.
     - Fix the tests.

commit bca5dea911ea3282c84675b5b009e0ca89c90453
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 20 16:46:09 2012 +0100

    run: Disable 'memory optimizations' in glib programs, for valgrind (thanks Dan Berrange).

commit e2adce22969fa02e59832f35ca90542dd89c4aa3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 18 22:27:17 2012 +0100

    FAQ: virt-sparsify and raw sparse output.

commit 86f0492c8a0cd52298c40d8a93277a84c0ccd637
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 18 22:08:29 2012 +0100

    Replace mount-options with mount where appropriate.
    
    Since our minimum supported version is now 1.16 and mount was fixed in
    1.13.16, it is now safe to replace mount-options + empty options with
    mount wherever it occurs.

commit a72d642f7faf65d8260cd2b2188961eb9a6e3de1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 18 13:09:27 2012 +0100

    Update API support.

commit d38697a50c9bc514cb3656da437632a6bb9a306f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 18 12:09:47 2012 +0100

    Version 1.19.32.

commit 124b2b147c642db2ae697dfd59f6b1da32bab6fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 16 14:49:58 2012 +0100

    sysprep: docs: virt-sysprep can now be used to customize a guest.

commit 686c7977cdb6b4b713137a9156037d7e4e6711c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 16 14:48:54 2012 +0100

    sysprep: Add --firstboot functionality.
    
    This allows you to add scripts that run in the context of
    the guest the first time it boots.

commit dfb06ac984e9dcb3300c83a25d25f140f49bac74
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 17:28:25 2012 +0100

    docs: Rewrite section on protocol limits again.
    
    This updates commit 92e241440d361e9491a9d96d23ad7a378cb2ab6a.

commit 2f67d6de08df0440c19d9d0f2cf4fc6f0d587b56
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 10:32:08 2012 +0100

    docs: Update documentation to reflect no 2/4 MB protocol limits.

commit 2fe5e9772b93753642e1f8bde29bbde420e45da1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 15:50:36 2012 +0100

    todo: Suggest full mke2fs API call.

commit ff9d606cf6ff040b09d5f66da729bc8db8d08a18
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 14:31:39 2012 +0100

    tests: Add a test for large directories.
    
    This also tests the reimplemented APIs:
     - ls
     - lstatlist
     - lxattrlist
     - readlinklist

commit bdf824c60db95e3d2a1a706c51c567a88209e6fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 15:50:51 2012 +0100

    New API: fill-dir: Fill a directory with files (for testing).

commit be0e274542cb00b6971b98f5b63a5f097c713679
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 14:21:34 2012 +0100

    guestfs_readdir: Note that this suffers from protocol limits.

commit 328f5e4cdfda89b76320b35b0c8de46e4e22dd1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 14:11:21 2012 +0100

    guestfs_ls: Reimplement to avoid protocol limits.

commit bedfc71b8fa125627772116b36a7c0cd4ee192ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 13:57:37 2012 +0100

    New API: ls0 - List files, separated by \0 characters.
    
    This API is not especially useful on its own.  It will be used to
    reimplement guestfs_ls to work without protocol limits.

commit c5a13cdeaf865b2af274e6ec2285732e82b97851
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 13:10:53 2012 +0100

    guestfs_readlinklist: Reimplement to avoid protocol limits.

commit 836f6a03bc124aa383cf4f1ddf51f4fbad48631f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 12:21:37 2012 +0100

    guestfs_lstatlist, guestfs_lxattrlist: Reimplement to avoid protocol limits.
    
    Note that the code to do this was already in virt-ls, so this is
    change is mostly just moving the code into the core library.

commit 83c381b55cd4c707679cd9acb2d78e2ad97d162f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 11:47:49 2012 +0100

    guestfs_write, guestfs_write_append: Reimplement to avoid protocol limits.
    
    Note that we keep the old daemon calls, but rename them as
    "internal_write" and "internal_write_append".  This lets us implement
    the new library-side calls more efficiently in the common case when
    the uploaded content is smaller than the message buffer.  In most
    cases the new calls won't end up using a temporary file.

commit 9ad6533cac5cfcc0077510f5eb46ad1677c0dec5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 11:07:33 2012 +0100

    guestfs_read_lines: Reimplement to avoid protocol limits.
    
    This also makes a larger test suite for this command.

commit 1b27ef3003c815c1f3a67e7e2a91e073f2b9de3f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 10:36:23 2012 +0100

    guestfs_read_file: Reimplement to avoid protocol limits.

commit 74b438b408b7d33c7a96f8ff2b6cd7ab68b2e5df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 09:47:29 2012 +0100

    guestfs_find: Reimplement to avoid protocol limits.
    
    This also reimplements the virt-ls -R option to use the replacement
    guestfs_find API, which is simpler (though actually less efficient).

commit ca3d4fc933cf18fdbd66c592cb916046a8a0b767
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 08:15:31 2012 +0100

    guestfs_cat: Reimplement to avoid protocol limits.

commit 7b91ae5b2ab134a5cada8ff6745605e626a6e3fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 17 12:32:34 2012 +0100

    generator: Fix error message in checks of proc_nr.

commit 3c0efb34b8580b33e58fc074860f9be23e1a591c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 16 12:58:49 2012 +0100

    sysprep: Improve error messages.

commit 0620ecb3c31ce86694b85d45c2d4f36dfbd52246
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 16 18:20:57 2012 +0100

    Update TODO.

commit ea79686c88c9b635c9fa9e019ec86720986f3ff2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 17:57:40 2012 +0100

    Version 1.19.31.

commit 40fcc692186722b67d000034b88e95524dfc7c35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 17:39:39 2012 +0100

    subdir-rules.mk: Remove rules that recursively build src/ and daemon/.
    
    These are unnecessary, and slow down the whole build.

commit 65fff0d594cbf68772aec9fb1798496d37734a8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 17:04:13 2012 +0100

    gobject: Disable bindtests.
    
    - gint64 cannot be reliably sent.  It seems to try to convert it
      via a 32 bit int, and fails if it overflows.
    
    - OStringList is not implemented yet.

commit 1873966d4cbc0951df312a77faa0f66ab034a907
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 15:44:18 2012 +0100

    launch: For /dev/null drives, create a temporary disk.
    
    This is a workaround for a bug with virtio-scsi in qemu 1.2:
    https://bugzilla.redhat.com/show_bug.cgi?id=847549

commit 7e425388417e7ad87e039837805ac4ac8d4ae7db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 16:08:19 2012 +0100

    test-launch-race: Use /dev/null instead of hand-made zero-length file.
    
    There seems to be no reason why creating a zero-length
    file is necessary for this test.

commit 73637099bd258e76382c057f0556c61913c4375d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 15:43:30 2012 +0100

    launch: Move code to add a drive to the list to separate add_drive utility function.
    
    This is just code motion / simplification.

commit 1aebc76a7c78855b84874d93b8ec137700c7bede
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 15:41:42 2012 +0100

    launch: Add utility function guestfs___lazy_make_tmpdir.
    
    This lets us create g->tmpdir lazily earlier if needed.
    
    This commit is just code motion.

commit 5d234417b581ace463a20f5152ba4adc66bf129a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 15:41:05 2012 +0100

    lib: Add 'g->unique' to handle, for making unique IDs.

commit 754b6a90981a1957f3d504632be2fa50f063de6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 15:40:29 2012 +0100

    inspect: Clarify comment about uniqueness of cache.

commit 5c6fd7dcbd149b84f3f5cbb628d0ae48a4668a67
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 15:01:01 2012 +0100

    close: Check if g->tmpdir is non-NULL before removing tmpdir.
    
    This happens, by chance, to work.

commit ec5c94cc75bd4c7db464fd55d74a601481ef6ede
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 14:44:37 2012 +0100

    bindtests: Test sending min and max 64 bit integers.

commit 465c41b89978411ebd0bd8fd51dc4c954dd77a6e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 14:50:29 2012 +0100

    java: Fix bindtests when passing 64 bit integer literals.

commit 732b39d587954cf88b3d97f8173c9b17a5aae572
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 14:49:01 2012 +0100

    ocaml: Fix bindtests when passing negative optional arguments.

commit 2ecaaf6a453d23f190e18ebdd53d8c2ff9c311e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 14:10:38 2012 +0100

    erlang: Add tests.
    
    Add bindtests and general tests for Erlang.

commit 1c24d2568d81e0a0d448e2e92d26280918817ed5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 14:38:15 2012 +0100

    erlang: Fix 64 bit integers in parameters.

commit 8dfe7518dd77b7f48b46d0f773acc0dd13def45f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 14:08:43 2012 +0100

    erlang: Fix BufferIn parameters.
    
    These would break if the buffer contained a \0 character.

commit af150943e7c68c2d7c48a32dfe26d15e1e2d9f3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 14:07:35 2012 +0100

    New internal APIs: internal-test-set-output, internal-test-close-output.
    
    These internal (testing) APIs allow the bindtests output to
    be sent to some other place than stdout.
    
    This is necessary for Erlang, since stdout is used to communicate with
    the Erlang interpreter.

commit 1fe37e7782a6f0cbee4f389f976e14171dd74194
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 14:05:36 2012 +0100

    python: Fix comment referring to Perl(!)

commit 7b4706b7dd0f44dc70add98f166d6547680384bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 13:01:19 2012 +0100

    generator: Allow permission of output files to be specified.

commit 47d8f9c3ec897a024b782222d45306407f1f609f
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Aug 14 21:52:02 2012 +0200

    Even on Debian, the package containing the diff binary it has been diffutils for two years.
    
    There had been a virtual package "diff" that depended on diffutils, but that's gone in wheezy/sid, too.

commit 50220ea58833d8645b74493455b1b6dc39ac717a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 12:14:39 2012 +0100

    python: Fix optargs so we don't use special sentinel values.
    
    Previously with Python it was impossible to set a boolean or integer
    optarg to -1 because that was used as a special sentinel value to
    indicate that the optarg was not set.
    
    Instead, use None as the sentinel value, since that cannot be a
    boolean or integer type.

commit 586a1cca8617a2f19df8f6b6d0929f343ac5f536
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 15 12:14:06 2012 +0100

    python: Before freeing OStringList, cast it to char ** to avoid a compiler warning.
    
    This fixes commit c1a269513c05b44af0ed6e6b7b48f5dd11e01060.

commit 7af8285de8c4e90aca1693b7d5fd6c843e9d8910
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 18:21:05 2012 +0100

    Remove unnecessary comment from <guestfs.h>.
    
    Read guestfs(3) for documentation, and don't discourage people from
    doing that by putting these comments into the header file.

commit 8905539d5084b3d6e2fff2459509f2830969403a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 18:17:40 2012 +0100

    docs: Fix '= head' -> '=head' in back compat entries in guestfs(3).

commit 36ef4da88c4cff3c13952a83655a05c6ccb93304
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 17:51:24 2012 +0100

    Version 1.19.30.

commit 9739c8a26e7d786a291afa587e9136be675b53a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 13:58:49 2012 +0100

    tar-out: Add list of excluded patterns (--exclude=...) (RHBZ#847881).

commit 55a9259e103341db057572cbd53ef36c7c46c5f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 13:56:07 2012 +0100

    generator: Add new OStringList optional arg type.
    
    This allows lists of strings to be passed as an optional argument.

commit a95c232e455a254123036216fc54868a1d8d8e68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 13:55:00 2012 +0100

    daemon: New utility functions 'join_strings', 'concat_strings'.
    
    Useful functions for concatenating strings together.

commit 602a9dea20d2f0e4308c07eea990124ae5c5bdca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 11:14:10 2012 +0100

    bindtests: Space before parens in call.

commit e48c938c0938b5bc1fa281e1c10cf767e0c4444a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 10:01:40 2012 +0100

    todo: Suggestion: Add sh-in, sh-out, debug sh-in, debug sh-out.

commit 870db794e9bfa1743fa33e91e8d3f8df870d7574
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 09:54:31 2012 +0100

    tar-out: Add optional numericowner flag (RHBZ#847880).
    
    This is equivalent to the tar option --numeric-owner.

commit fbed6785818b7583992026e564bda581264f65ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 14 09:04:51 2012 +0100

    Add optional compress flag to tar-in, tar-out APIs.
    
    The compress flag can be used to control compression, one of: (none),
    "compress", "gzip", "bzip2", "xz", "lzop".  Thus these calls can now
    be used instead of tgz-in/tgz-out/txz-in/txz-out, and also support
    more compression types.
    
    Mark these APIs as once_had_no_optargs so that compatibility code is
    generated.

commit f870dd912cdd27289a78af5fe2ec3a9d91bec38b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 13 13:51:29 2012 +0100

    docs: Add a section describing how to use gdb + qemu wrappers to debug the appliance.

commit 57e6d617d7df13621951d285683ad6757f2fefaa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 12 22:51:45 2012 +0100

    docs: Show how to use 'annotate-output' command to collect timings.

commit 3558397a1a16bedc386967bf8138653aebb64478
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 12 17:01:44 2012 +0100

    ocaml: Use Store_field macro instead of caml_modify.
    
    Use the safer, higher level Store_field macro when constructing arrays
    of structs to return.
    
    I don't know if it is strictly necessary in this case, but it's safer.

commit ce718a4e259ee4540a16b3d34dbc4c0cba0ca57d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 11 20:52:28 2012 +0100

    virt-make-fs: Don't display output of 'qemu-img' except on error path.

commit bf04beb3a2ceb853cf72395e2fdabfe129fc3551
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 11 20:51:28 2012 +0100

    virt-make-fs: Remove note about vfat and ownership of tarball files.
    
    This problem has been fixed in
    commit 50780a84f65ec5d76605691cea889392c2730f54.

commit 6b14ab72188f416bce5f7bb1ca4063fa78ba87b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 11 19:08:33 2012 +0100

    Include guestfs-release-notes.txt in the tarball.
    
    This fixes commit 589db4e42ad5e759041521e7673bd7aa2f800736.

commit 037f88c4e9e7f9fc2a3b60934ef363b9fc7d4969
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 11 18:35:13 2012 +0100

    tests/9p: Add test to EXTRA_DIST.
    
    This fixes commit 499497fab03716278cb5214a8aa89a35618e06c6.

commit e898b6167c076db868fa03fdbcbc85f2ef3344ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 11 14:18:08 2012 +0100

    Version 1.19.29.

commit db90e4c502129122255508c6c476c84c84818a5d
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Aug 8 17:59:39 2012 +0800

    sysprep: remove the process accounting log files
    
    We just remove the process accounting files previously without
    touch a empty file, this will cause psacct runs error.
    Restart the service can't help us create this file auto.
    
    couldn't open file '/var/account/pacct': No such file or directory
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit b5b00fe043db0d43a5d57800b4a5f4886906810d
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Aug 6 16:23:20 2012 +0800

    xfs: fix a possible memory leak
    
    free out when failure.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit e2375e16c8b95858e08a2309be0a319078790658
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Aug 6 09:17:48 2012 +0800

    Fix typo in release notes.
    
    Fix typo.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 305c3347f054dc8067292972a58eb27909e5de3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 4 19:24:30 2012 +0100

    Convert release notes to a POD file / man page.
    
    Note that we add the text version to git so that it's available for
    people to read without requiring any special tools.

commit dcd05ca8d6dc536e4bd324e344ded890ce2ea091
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 4 14:37:46 2012 +0100

    New APIs: rsync, rsync-in, rsync-out
    
    Implement rsync.

commit 7c28b44363c25795c6d54ddc605eef980df24149
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 4 14:36:55 2012 +0100

    fish: Add --network option.
    
    This enables the libguestfs user network, and is the equivalent of the
    'virt-rescue --network' option.

commit 69674c0733c6474fd7fbbdb734beebafaf338735
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 10 21:37:46 2012 +0100

    generator: 'delete' is a reserved word (in C++).

commit 53da264dc4dc0cb6bd13e054ca6f304909d1a91d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 11 07:47:25 2012 +0100

    tests/extra: Add workaround for memory leak in libvirt.
    
    See: https://bugzilla.redhat.com/show_bug.cgi?id=847429

commit b4e48df513791dbb0bc60ddc86372c1740a528e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 4 17:24:20 2012 +0100

    Update release notes for libguestfs 1.20.

commit 6c8656c426fb1bf93432b059d3d01c0ed73faefe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 4 11:45:15 2012 +0100

    appliance: Add rsync and openssh-client{,s} to the appliance.
    
    This adds ~10M to the appliance (328M -> 338M).
    
    However for virt-rescue these are frequently requested tools.

commit 2cfed32f5aed2e014b026af4ce88595661725ef4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 3 22:38:41 2012 +0100

    fuse: guestmount doesn't let you pass '-- [FUSE options]'.
    
    I don't think it ever did, so the --help text was always
    wrong, and definitely didn't match the real behaviour of
    the program.

commit c07bb835313d48368b156b1812b260cd03b043fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 3 15:38:10 2012 +0100

    ruby: Mark all VALUEs as volatile.

commit 93c62e1ae73e34c652ed43beaf7648a4d4b53834
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 3 12:54:18 2012 +0100

    fish: Fix 'copy-out /' (RHBZ#845522).

commit a62354876afc10245bdd55df17665bd69d25eb0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 3 11:53:44 2012 +0100

    Document problems copying long filenames from NTFS to Linux filesystems (RHBZ#845488).

commit 317d8edd51f079fb7f57973edd3182f4ffa19008
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 2 17:35:32 2012 +0100

    Version 1.19.28.

commit f2ba569f42af8178658d0f4b5c7770fda460d66d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 2 17:21:47 2012 +0100

    examples: Use add_drive_opts function in examples.
    
    In libguestfs 1.20, you will be able to use 'add_drive'
    instead of 'add_drive_opts' (except in the C bindings).
    
    However until libguestfs 1.20 is the minimum stable version
    people will still be using old versions where you have to use
    'add_drive_opts'.  This makes the examples confusing.
    
    Therefore continue to use 'add_drive_opts' in the examples
    for now.

commit a4b460d18f79e5734f1589111befdb3c3e9b56b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 2 14:05:54 2012 +0100

    grep: Add optargs to grep API and deprecate fgrep etc.
    
    This commit makes grep into an optargs API, with flags for extended,
    fixed, [case-]insensitive and compressed.
    
    At the same time it deprecates: egrep, fgrep, grepi, egrepi, fgrepi,
    zgrep, zegrep, zfgrep, zgrepi, zegrepi and zfgrepi.

commit ac6a5c924472e4264c1821d81722a951fbb15c81
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Aug 1 17:02:07 2012 +0800

    xfs: add new api xfs-growfs
    
    New api xfs_growfs for expanding a XFS filesystem.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 265b017e589145f4c2784529526fd48412b01352
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 1 18:44:19 2012 +0100

    Revert "appliance: Add '-drive detect-zero=on' flag if qemu supports it."
    
    This reverts commit fe2253088ff51b51e2586f27a9408a38655170e3.

commit d72ade460a8915449d89cb5f433f27d0d59559f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 31 22:55:58 2012 +0100

    Reviewed and revised TODO file.

commit d71c92730fd58a041226088ed79df0d8a883413c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 31 13:41:51 2012 +0100

    m4: Sort .gitignore with LANG=C.  Also add pipe2.m4 (used by RHEL 6).

commit eb9b6aa62cd8fa7831e2f7f3cfdc19ee58ade039
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 31 13:21:42 2012 +0100

    build: On x86 search for qemu-system-i386 not qemu-system-i686.
    
    host_cpu can be set to i686.  The qemu binary is called
    qemu-system-i386.  Apply some sed to fix this.

commit ad28d1beaa8bfa235344dea219158354589a3965
Author: Eric Blake <eblake@redhat.com>
Date:   Tue Jul 31 13:14:28 2012 +0100

    build: Allow building with new glibc headers and -O0.
    
    This is a patch taken from libvirt.  See:
    
    http://libvirt.org/git/?p=libvirt.git;a=commitdiff;h=2af63b1c349

commit c51370862311f513ab204c80f313ae41e32689c1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 30 23:17:49 2012 +0100

    9p: Add a regression test for 9p functionality in qemu.

commit 8a683443694fe8d565d5922125520175d1d0756d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 30 23:33:40 2012 +0100

    appliance: Exclude kernel* packages explicitly.
    
    febootstrap >= 3.19 will no longer exclude the kernel package
    by default.

commit 7bffdbf8dcef2a89d3b8c250ca3c49ae8d8fff07
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 30 19:27:09 2012 +0100

    Version 1.19.27.

commit f2115337cfaae8548e96330a1fc7d569ccf81786
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 30 17:32:10 2012 +0100

    libguestfs-make-fixed-appliance: Don't reference obsolete development version.

commit 58f54fbfb5ffe29b904eb5863111332df07d8d1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 30 15:16:45 2012 +0100

    New API: utsname
    
    Typical output:
    
    ><fs> utsname
    uts_sysname: Linux
    uts_release: 3.5.0-1.fc18.x86_64
    uts_version: #1 SMP Mon Jul 23 17:43:39 UTC 2012
    uts_machine: x86_64

commit 6aef2de5ab92db1bb1707a0a9041c0e1145b6251
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 28 21:28:23 2012 +0100

    sysprep: Describe more directly how to use qemu-img for snapshotting.

commit 0f6352651d28d46bb4a2783167a01ed747d3fb5d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 22:00:07 2012 +0100

    tests: Consistent use of $(top_builddir)/run --test when building test guests.

commit a1ce78968998227d1b91b95ec3e73d41d836f73f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 21:56:37 2012 +0100

    build: Use $(top_builddir)/run in Makefile.am's.
    
    Not necessary, but this makes all invocations of 'run' consistent.
    There is no functional change.

commit 008f6f19b1636e334a6b00aeead01103b4caa7f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 19:01:28 2012 +0100

    Version 1.19.26.

commit eb41fe172d886e7ad355ee9dfd85248fe1f5f80f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 18:25:06 2012 +0100

    appliance: Add '-drive detect-zero=on' flag if qemu supports it.
    
    NB: The patch to implement this feature in qemu is not upstream, and
    may never make it upstream.  However this is so useful for
    virt-sparsify that I decided to add this to libguestfs while we see
    what qemu decides to do.

commit be6bfb181fe641d4e40daabb83ebbacb40405547
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 26 11:13:39 2012 +0100

    ruby: Allow optional arguments hash to be really optional.
    
    Allow optargs functions to be called as either:
    
      g.mkfs_opts(fs, device)
    
    or:
    
      g.mkfs_opts(fs, device, { optargs hash })
    
    This also preserves backwards compatibility with once_has_no_optargs
    functions such as mkfs.

commit 373ef584e6edc3db9e5a01727ed4087bb4313128
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 25 23:38:37 2012 +0100

    ruby: In event wrapper, ignore callback functions which have type T_ZOMBIE.
    
    Note that in old versions of Ruby, T_ZOMBIE was not defined.

commit e4aa7ed4d763a9c468070a4d45b2f16cfd31f9bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 25 22:56:54 2012 +0100

    ruby: Set LD_LIBRARY_PATH for Ruby libs in run script.
    
    This lets you use './run gdb ruby ...' and get accurate
    debugging information.

commit f709403a4b41692ea1f2c9bcfa7941539cdd1339
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 25 16:50:40 2012 +0100

    sparsify: Detect qemu-img version and use qcow2 v3 for overlay if available.
    
    qcow2 v3 is generally more efficient, although unfortunately it
    doesn't support automatically sparsifying zero writes.
    
    Note this *only* uses qcow2 v3 for the intermediate overlay file, not
    for the final output (since we want the output to be broadly
    compatible with old hypervisors).

commit 3c421aafa45a5cdbdbed665e458d2f5d5f469ce3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 25 16:28:12 2012 +0100

    sparsify: Change code that generates qemu-img -o argument.
    
    This is just code motion.

commit 4db4f105f46d9a2f35b2579519839bde1753a9c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 25 10:49:20 2012 +0100

    sysprep: Generate new random UUIDs for LVM2 PVs and VGs (thanks Kazuo Moriwaka).

commit e7dc802121b51d9c1c3bbf7577f3425a9d281854
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 25 10:29:58 2012 +0100

    New APIs: pvchange-uuid, pvchange-uuid-all, vgchange-uuid, vgchange-uuid-all.
    
    These APIs will allow sysprep to change the UUIDs of all PVs and VGs
    in the system.
    
    LVs don't have UUIDs AFAICT, or at least there seems to be no way to
    change them if they do have them.

commit e941564c54aa1d8ea05e5740c0cf895807f93e30
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 25 14:17:42 2012 +0100

    sysprep: Change perform callback to perform_on_filesystems and perform_on_devices.
    
    Operations that need to work directly on guest block devices will fail
    because the block devices are busy.  Therefore add a phase with the
    filesystems unmounted, and allow operations to specify that they need
    to work in this phase.

commit 2efffe0e32bcdc3708efb26738807f164a12828a
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jul 25 14:17:37 2012 +0100

    fish: Use minimal permissions when initially creating history file

commit d95890d53569bc7fd69f9a79236dd20459c2db53
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 25 10:15:47 2012 +0100

    sysprep: Tidy up the Makefile.
    
    This is just code motion.

commit aa3cf205e6df6ee6cad44a052dd8ac78d36f31e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 25 10:09:28 2012 +0100

    sysprep: operation machine-id: return `Created_files.
    
    This operation can create the /etc/machine-id file, so it may need to
    be relabelled by SELinux.
    
    This fixes commit e68336d72a7d71a44d80f0d13c40ff44653e5c01.

commit 65e6d131f8027de0a05e23a2e82ad20c79cf3c3b
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Jul 25 13:56:16 2012 +0800

    sysprep: remove the local machine ID
    
    remove the local machine ID, leave it empty, let it be generated
    during next booting.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
     - Whitespace change.
     - Remove completed items from TODO.

commit 1e8701994f1adff4dc418f77bbaa4a6606d6db34
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Jul 25 13:56:15 2012 +0800

    sysprep: remove the auto generated abrt data
    
    remove the automatically generated abrt data.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
     - Remove copy and pasted line.
     - Use C<> in description.

commit 7e3d529ba919a16b7a9e2678e59cbe246888408e
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:49 2012 +0900

    Mac OS X: Use u_int64_t/uint64_t instead of unsigned hyper in .x file
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>
    
    RWMJ:
      Fixed whitespace in generator_xdr.ml

commit dfe324bbabd1e73ad0a25536e523e26a11dc6ac4
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:48 2012 +0900

    Mac OS X: Use libtool --mode=execute instead of LD_LIBRARY_PATH
    
    because Mac OS X doesn't support LD_LIBRARY_PATH
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit ae19d4ed38328c8d853dec8e9c632006d3b0f3c7
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:47 2012 +0900

    Mac OS X: Use gnulib stat-time module explicitly.
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit cbe11f9c0b369cdc11c0f135f93bb6e0a2a3f15f
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:46 2012 +0900

    lib: Use <sys/socket.h> and <sys/un.h> for sockaddr_un
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit 2d3da1a66510bfbc0680405364a35efad2fc8ea9
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:45 2012 +0900

    Mac OS X: Use real files for gtk-doc (not the symlink)
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit 60dc9cc509cf8a88a1bc59303efefe7a6e1aac70
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:44 2012 +0900

    Mac OS X: don't check glibc-style extended printf formatters unless --enable-daemon
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>
    
    RWMJ:
     - Test was in the wrong place (before --enable-daemon had been
       detected) so I moved it later.

commit c5e481c0e3d8a0ea022c85cad8af2c7603370641
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:43 2012 +0900

    Mac OS X: #define UNIX_PATH_MAX 104
    
    See http://developer.apple.com/library/mac/documentation/Darwin/Reference/Manpages/man4/unix.4.html
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit 2871e05ea274ddfa4a6f5a8f28ab68b38ebf0ec7
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:42 2012 +0900

    Mac OS X: Added check of #include <endian.h>
    
    Mac OS X doesn't have endian.h
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit 5ec360138065a504aaf52c90b7471fdd56f183cb
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:41 2012 +0900

    Mac OS X: Use gnulib fstatat module explicitly.
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit 1bba38e3af65ee45a76170b14e4ce0f407742474
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:40 2012 +0900

    Mac OS X: Use gnulib memmem module explicitly.
    
    m4/.gitignore: Update.
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit fca61c9c89726c09b3bd98cdc051f49b3a02c577
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:39 2012 +0900

    configure: Use $(PERL) instead of perl
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit 834a15bd4d0521e49e5fae37f8f309562bb7fb21
Author: Masami HIRATA <msmhrt@gmail.com>
Date:   Tue Jul 24 23:10:38 2012 +0900

    configure: Add -nographic command line option to qemu.
    
    Without this option, configure will fail when there is no display.
    
    Signed-off-by: Masami HIRATA <msmhrt@gmail.com>

commit a760f84a6b9aa27b06375ffcd2cc0fee81dcf94c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 24 14:48:39 2012 +0100

    Version 1.19.25.

commit f46a44907f29a12adf9e140ab6296926fe4025ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 24 14:26:55 2012 +0100

    launch: libvirt: Suppress printing of libvirt errors to stderr and other cleanups.

commit 9e1cf01668d306a0c8237f10853ddd5f40521148
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 24 11:13:52 2012 +0100

    launch: libvirt: Use SELinux-mandated directory for sockets (RHBZ#842307).
    
    Note this does not yet enable sVirt confinement of the appliance.
    That requires at least that SELinux policy goes upstream, plus there
    may still be bugs.

commit c69b472159954dd68b85ff01c2ee0988826fd75d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 24 13:41:43 2012 +0100

    todo: More suggestions for virt-sysprep (thanks Kazuo Moriwaka).

commit 58f60cfeb642d90687dd69f0aa1af0b1e591d213
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 24 11:13:21 2012 +0100

    launch: libvirt: Move free to end of function.
    
    This is just code motion.

commit adf4ab8f66e2c3e2adae3270e2c0e0ca6585f8b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 24 11:12:46 2012 +0100

    launch: libvirt: Add is_blk utility.
    
    This is just code motion.

commit 8d764524bb393fda0f3b6ac49a6d2bddba145a8a
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue Jul 24 16:47:23 2012 +0800

    umount: use Dev_or_Path for the argument type
    
    Use Dev_or_Path instead of String.
    
    Remove the RESOLVE_DEVICE since Dev_or_Path will generate
    REQUIRE_ROOT_OR_RESOLVE_DEVICE instead.
    
    RWMJ:
    Note a change in semantics: this now requires root.  However this is
    OK and still works with mkmountpoint and friends because
    'is_root_mounted' works even if something is mounted below the root.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit bdddb5c5bd4f49edd50f4f6449724cec7e53d3c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 24 10:21:32 2012 +0100

    launch: libvirt: Set <emulator> in libvirt XML if g->qemu is not the default.

commit 3b881747a4cdcd9206872a95f4b98132de15285d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 24 10:16:31 2012 +0100

    xfs-info: Fix description to refer to 'pathordevice' param.

commit 0e64a755e50eebd79d429780920dbad7525f1bc2
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue Jul 24 16:47:22 2012 +0800

    xfs_info: resolve device when doing xfs_info on a device
    
    Resolve device first, like do_umount.
    Use Dev_or_Path.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 4edb75b688133c9c34720c60ea6c386ef88be6ab
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Jul 23 17:51:31 2012 +0800

    umount: add force umount and lazy umount
    
    Add the option force and lazy for force and lazy umount.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 204ee7d4e824b2b9a32596d2d8654aebbc06978f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 21:53:55 2012 +0100

    Version 1.19.24.

commit 4378e3be062fe75f978e8d6d8c5b83e495b31f2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 21:37:59 2012 +0100

    tests: Skip regression test for 790721 if attach-method is not 'appliance'.

commit aecc9e67bb998fe6fdf0ac5083304df43bdd5920
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 21:26:18 2012 +0100

    lib: Initialize libvirt and libxml2 once when the library loads.

commit 37739db3d97d5e0a6f11624e9ba48dd1a0325a99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 19:03:08 2012 +0100

    launch: Make get-pid and max-disks APIs into virtual methods of the current attach-method.

commit a9615f75af89644137f3ca795bc0de47819991ee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 18:56:20 2012 +0100

    tests: Move debug-drives testing API to launch.c and change the output.
    
    It should work with any attach-method.

commit 7ffc64d1696feecd9f1d0d9b73e744bb4411dd7e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 20:16:54 2012 +0100

    python: Set file encoding to utf-8.

commit dc8cf05c5bce8b84ee58a8d75f7b8759d33c87c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 18:43:38 2012 +0100

    tests/protocol: Skip these tests if default attach-method is not 'appliance'.

commit ed12f2f498d532fc272f737168cdc8cd02846adf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 18:21:22 2012 +0100

    tests: Fix get-attach-method test.
    
    If ./configure --with-default-attach-method is set to something other
    than 'appliance', then this will legitimately return a different
    string.  Simply test that it runs, rather than testing the output.
    
    This fixes commit 20a5b4de7ddc4221544784df65eb472481698dcb.

commit 981fa26a1e0f8112f4e1205a56870c56fb538467
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 18:20:41 2012 +0100

    tests: Remove get-pid test.
    
    If the libvirt attach-method is used, then there is no known PID
    (libvirt hides it).

commit ff7d238a6df3488cb95121ca258ed16d01d58759
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 17:10:11 2012 +0100

    launch: libvirt: Use <driver name="qemu" type=[format] />.
    
    We were using format= which was bogus and libvirt was ignoring it and
    forcing raw format instead.
    
    Also in its default configuration libvirt won't do disk format
    autodetection at all, so we must do it instead.

commit 1e054e21de3a8afc025808be01eb0a1138168cdc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 17:41:23 2012 +0100

    launch: libvirt: You can't set O_CLOEXEC flag using fcntl + F_SETFL.
    
    And in any case there is no point, since proto.c already sets the
    SOCK_CLOEXEC flag (using accept4) on this socket.
    
    The code now matches the code in launch-appliance.c.

commit 2657e806ee681c836ccba7a7dc38a153aa9c9450
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 17:40:55 2012 +0100

    launch: libvirt: Use accept4 to set socket flags correctly.

commit 795645c200685dc14f265f38492d635ff11589c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 16:43:14 2012 +0100

    launch: libvirt: Add <on_reboot>destroy</on_reboot> to libvirt XML.
    
    This causes libvirt to add the qemu -no-reboot option, which
    reflects existing behaviour.

commit 446c58ec13d600cb2707259a08cb2a15714acaa8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 15:24:57 2012 +0100

    launch: Allow default attach-method to be set in environment or configure.
    
    You can now choose the default attach method in two ways:
    
    (1) Set the LIBGUESTFS_ATTACH_METHOD environment variable.
    
    (2)  ./configure --with-default-attach-method=appliance|libvirt|...
    
    Note that (1) overrides (2).

commit 46bb1bde83ddc79dfcea9ab533f4b3d3bcd44adb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 15:24:07 2012 +0100

    java: Set '-encoding utf8' for javac and javadoc commands.

commit 77c3aa134c6bdb260715a4cf6090371aa651a9ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 15:18:12 2012 +0100

    java: JAVAC_FLAGS -> EXTRA_JAVAC_FLAGS.
    
    This is just a rename.

commit a76423230a1989e2f9a263bc2c578e9ed8e1489b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 14:28:03 2012 +0100

    launch: libvirt: Move remaining to-do items to TODO file.

commit 08efef51d3c6b25a417b95cc7ab2408f80dc0d6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 13:14:16 2012 +0100

    launch: libvirt: Add a hack to detect if KVM is available.
    
    We need to select the <domain type=...> attribute depending on whether
    KVM is detected in the libvirt capabilities.
    
    This is a hack because it doesn't try to parse the libvirt
    capabilities XML.

commit 0a86018b0aebf42a6330d6c23233561c56bc5753
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 13:05:46 2012 +0100

    launch: libvirt: Use <cpu model="host-model"/> (thanks Dan Berrange).
    
    This ensures maximum performance of the appliance, particularly for
    things like MD where the guest needs to use optimal SSE instructions.

commit 79ef81b0c7be9a069be0c9c9f9b7c515c9179bc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 12:54:08 2012 +0100

    launch: libvirt: Change disk XML according to whether host path is device or file (thanks Dan Berrange).

commit 4be0f50b70103120e8ec5b10e554720693b8ec56
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 12:46:37 2012 +0100

    launch: libvirt: Use "guestfs-" prefix on random names (thanks Dan Berrange).

commit b9fd35241f0b8ce87c3c79bbbb528dd410605f28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 12:45:31 2012 +0100

    launch: libvirt: Enforce minimum version of libvirt 0.9.13.

commit 70217731c96f0e814134bb76cea7870b1416cc63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 23 12:37:22 2012 +0100

    launch: libvirt: Use snapshot=on instead of <readonly/>.
    
    For compatibility with the appliance backend, devices added readonly
    are in fact added writable with snapshots on top.  This is necessary
    because options like 'mount -o ro' usually require write access to the
    disk (eg. to replay journals).

commit e7c20b8649dcb8608aeca6c3532a3213a1a4fc47
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 22 14:40:43 2012 +0100

    Version 1.19.23.

commit ab8d0c75c63da20dea8ba8142986b32d81cd8bb1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 21 14:25:54 2012 +0100

    launch: Add libvirt backend.
    
    Complete the attach-method libvirt backend.
    
    This backend uses libvirt to create a transient KVM domain to run the
    appliance.
    
    Note that this still will only work with local libvirt URIs since the
    <kernel>, <initrd> and appliance links in the libvirt XML refer to
    local files, and virtio serial only works locally (limitation of
    libvirt).  Remote support will be added later.

commit a7581b3522d6615b4ce478643a615fabaa857184
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 15:32:03 2012 +0100

    Add attach-method "libvirt" or "libvirt:<URI>".
    
    With this commit, you can set the attach method to libvirt,
    but calling launch will give an error.

commit 2c31c1bab2e0afbe2d6472e66b83cd2d698a7d57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 21 15:47:13 2012 +0100

    launch: Make 'drive_name' into a common function.
    
    This is just code motion.

commit 24833c8930e015c66a02422d867bd6f4862feac3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 21 13:21:43 2012 +0100

    appliance: Push appliance building lock into guestfs___build_appliance.
    
    Since we will be calling guestfs___build_appliance from the libvirt
    code in future, there's no point having two places where we have to
    acquire the lock.  Push the lock down into this function instead.
    
    Because "glthread/lock.h" includes <errno.h> we have to add this
    header to the file too.

commit fc4c2037a46321b3c94360fc87d8da4464556409
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Sat Jul 21 09:11:57 2012 +0800

    fuse:remove the unused macro when fuse is not available
    
    Just make gcc happy when fuse is not available.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 962325e858dfc8e2e32fc3c1677ddf4f73b0eecd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 20 14:24:10 2012 +0100

    launch: Abstract attach method operations.
    
    g->attach_ops points to a structure which contains the
    operations supported by each attach method backend
    (ie. appliance, unix, etc.).

commit 9084b30294940c1902d2c21eb408a64b0ee40ec5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 20 11:57:10 2012 +0100

    launch: Move the command line building code entirely into launch-appliance.c.
    
    Although we still use the handle as convenient temporary
    storage.

commit aecc34f529f61809d1425b76a5319937e842f3bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 20 12:37:53 2012 +0100

    launch: Move guestfs_config API and build list of qemu parameters in handle.
    
    Move and rewrite guestfs_config so it accumulates a list of qemu
    parameters in the handle.  These are added to the appliance at launch
    time (with attach method == unix:...  you'll now get an error).

commit 1346992cd05a9f0238451138af68d40763310fef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 20:24:39 2012 +0100

    launch: Move launch timing / messages code into launch.c.

commit 531653de8d03cac3671331a6507d368d693538f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 20:14:12 2012 +0100

    lib: Use bool (from <stdbool.h>) for a few fields in the handle.

commit 6f1a49dade64e317b32ac7f474bab53524a67198
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 20:06:40 2012 +0100

    lib: Rearrange fields in guestfs handle.
    
    Arrange the fields more logically.  This is just code motion.

commit 9f206a42cf4c0d4f62b44746f80ee8d473f69f06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 20 12:19:56 2012 +0100

    add-cdrom: Rewrite description emphasising that this API should not be used.

commit 279040949f19b3d0292b456dee9c5830ceda9772
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 20 08:34:46 2012 +0100

    ocaml: Skip mount-local test if /dev/fuse is not writable.

commit bb1c7b85c4dfeb1905143c24bae182da52288ea7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 19:05:55 2012 +0100

    launch: Remove some dead code from the appliance method.

commit 20d00621ca2ec775de596fda53f19668137031e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 17:08:51 2012 +0100

    lib: Split launch.c into separate files.
    
    launch-appliance.c contains the code associated with the 'appliance'
    attach-method.  Mostly.  In fact there are a few APIs which don't fit
    so nicely:
    
     - config: deprecated API which fiddles with the qemu command
       line directly
    
     - max-disks: depends on the qemu implementation (virtio-scsi
       or not)
    
     - debug-drives: used for testing only
    
    launch-unix.c contains the code associated with 'unix:<path>'.
    
    launch.c is the common code for launching, along with a few other APIs
    such as guestfs_add_drive_opts.
    
    This commit also reduces the number of headers to just those
    which are required.

commit 0e3c236b9d4bd0de2b6459265a54fd3ca773d83d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 17:09:31 2012 +0100

    Remove debug-cmdline API.
    
    Note that debug* calls are not part of the stable API and can be
    removed or changed at any time.

commit eeac6ee0fa46fc4a4ea8d47005ab966fb747b623
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 16:24:55 2012 +0100

    lib: Use safe_asprintf when constructing attach_method.
    
    Just a small code cleanup / simplification.

commit 61da287dcb37c7577c729a1f52349e25c3cac07a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 15:45:27 2012 +0100

    build: Rename most C files that contain underscore with dash.
    
    This is just code motion.
    
    Some files cannot be renamed.  Notably rpcgen input and output files
    must not contain dash characters, else rpcgen breaks.

commit 60226959048a3b73fd5f4211d030a390595e6ed8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 14:28:15 2012 +0100

    fish: Rename fish/virt.c to fish/domain.c
    
    This file handles the -d option for guestfish and other C command line
    utilities.  Renaming this file makes it less confusing.

commit edcf93203b3e511aa17ad9f57aebaff944710ed2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 14:24:37 2012 +0100

    build: Rename src/virt.c to src/libvirtdomain.c
    
    This file contains the code implementing guestfs_add_domain
    (for adding a libvirt domain) so this name is less confusing.

commit 29680952407f3fcc6f1191406197a3845ec05dd4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 13:53:27 2012 +0100

    build: Arrange libguestfs_la_SOURCES in order.

commit c4b7afba9f7becb41f03aa1815910dfc6fb89a68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 15:46:18 2012 +0100

    Remove references to long-obsolete Ocaml_inspector module from .gitignore.

commit 048993d112bf763e6d7537231381865d45df65a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 16:08:45 2012 +0100

    podwrapper: Fix setting of GIT_DIR in git subcommand.
    
    This fixes commit 1e17a32060feb937b3972f61b37f9116ad7d8d9a.

commit b0db0eabe622a9589cc58786973fad4840d50ef6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 14:15:52 2012 +0100

    license: Use latest license files from gnu.org.
    
    COPYING from https://www.gnu.org/licenses/gpl-2.0.txt
    COPYING.LIB from https://www.gnu.org/licenses/lgpl-2.1.txt
    
    (Note this change shouldn't alter the licensing of libguestfs)

commit a99c2a78f1efcf0c0fadd98235f854db21d12db0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 13:51:16 2012 +0100

    Version 1.19.22.
    
    Includes rebuilt gnulib to work around test problems with
    test-getlogin_r.

commit b2724f0f8cd2ce54d4cd7f3db1b89b19289a62f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 12:43:55 2012 +0100

    gnulib: Don't include or run getlogin_r test (thanks Jim Meyering).
    
    See:
    https://lists.gnu.org/archive/html/bug-gnulib/2012-07/msg00194.html

commit 192e23ae87ccee18c5b0cf34587d5506d1c83204
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 19 11:16:35 2012 +0100

    build: Return 77 from skipped tests.

commit 0d08ddb320699f185f93e1180ea6530f8e112be3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 21:51:20 2012 +0100

    Version 1.19.21.

commit 1b91a4793cbfcd120fd84c72eb6074f764002e20
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 14:57:41 2012 +0100

    tests: Rewrite parallel mount-local test in C.

commit 35f66cafcc5433b50df952fc743b6c58d595edd4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 13:45:21 2012 +0100

    ocaml: Test mount-local, without parallel test.
    
    Unfortunately the parallel test keeps hitting this bug:
    https://bugzilla.redhat.com/show_bug.cgi?id=838081
    which could be a bug in the OCaml runtime.
    
    Just test simple mount-local.  We will write a parallel test in C to
    replace this.

commit b56b36c295c3c663598157fa6d385637392eec2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 12:33:16 2012 +0100

    tar-in: Add --no-same-owner flag to tar command when target filesystem doesn't support chown (RHBZ#840572).
    
    When using tar-in or tools built around it such as virt-make-fs, if
    the target filesystem is vfat then unpacking the tarball would fail
    because tar tries to chown(2) files and fails.
    
    You would see errors such as:
    
    tar: <file>: Cannot change ownership to uid 500, gid 500: Operation not permitted
    
    This change detects whether the target filesystem supports chown(2).
    If not, it adds the --no-same-owner flag to tar to stop it from trying
    to change the ownership of newly created files.

commit de52c61cc4c497d409477b7f213cee156985d2a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 12:32:21 2012 +0100

    daemon: Make 'random_name' into a utility function.
    
    This is mostly code motion, although the precise contract of this
    function changes slightly to make it more generally useful

commit ffe0465205e6c987c24754836239fcae35dcec43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 11:14:19 2012 +0100

    virt-make-fs: Suggest guestfish for complex layouts in man page.

commit 9887ee7d8b77955718f129828e4f8252b68d7a42
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 18 10:03:29 2012 +0100

    build: Change how make.sh, packagelist, excludelist are updated.
    
    Add proper dependencies for these files, but also use 'cmp' to ensure
    they only get overwritten if the new files have actually changed, so
    we don't rebuild the appliance unnecessarily.

commit 8f259cb8fdd0919bd425d42bd615ef8cd5b36de4
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Jul 18 09:58:43 2012 +0800

    New API: add new api xfs_info
    
    Add xfs_info to show the geometry of the xfs filesystem.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
     - Updated po/POTFILES.
     - Use xfs_ prefix for all struct fields.
     - Return uninitialized fields as -1 / empty string.
     - Copyedit the description.

commit aabf25faf66398280af62ca36e07b58cb571969e
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Jul 18 09:58:44 2012 +0800

    augeas: make functions as noreturn
    
    Just make gcc happy.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit f5319065321c5022b3797e7395cf3d21910e9066
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 17 20:04:24 2012 +0100

    podwrapper: Use UTF8 in output, send errors to stderr.
    
    This fixes commit 1e17a32060feb937b3972f61b37f9116ad7d8d9a.

commit 3365a3d5a4c12d5e31f031ca90e1ade0f7b269ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 17 15:38:52 2012 +0100

    Version 1.19.20.

commit d5c1a9188494cb935f2f364ddfba5575aa47a494
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 17 13:44:45 2012 +0100

    case_sensitive_path: Allow trailing path element to be missing (RHBZ#840115).
    
    case_sensitive_path is undefined when the final path element doesn't
    exist.  Currently it returns an error, but this means that creating a
    new file doesn't work as expected:
    
      $ guestfish --rw -i -d windows touch 'win:c:\blah'
      libguestfs: error: case_sensitive_path: blah no file or directory found with this name
    
    We should allow this case (provided there is no trailing slash) so
    that new files or directories can be created.

commit 7ad735a9496b0e1cdb7e08f4bb1c1f76ad748927
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 17 13:31:05 2012 +0100

    case_sensitive_path: Move variables to top of function.
    
    This is just code motion.

commit 6e43862765fd0be66df8ac91d1818684e9fc45c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 17 12:46:04 2012 +0100

    docs: Use L<...> for links.
    
    Instead of working around bugs, podwrapper has been fixed so that
    links work in all output formats.

commit 797dddcf3b834a9b35f6e38412a345da0005571a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 17 13:16:40 2012 +0100

    podwrapper: Subclass Pod::Man so we can fix the way links are generated.

commit debfc64e45b9bc642b25315aa94b66481b1996a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 17 13:15:55 2012 +0100

    podwrapper: Define $VERSION in subclass.
    
    The superclass sometimes uses this and will give an undefined
    error if it's missing.

commit 32c72d0d48441134b930bf5758c540caeef45c9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 17 12:49:59 2012 +0100

    podwrapper: Tidy up the program name.
    
    Messages now look like this:
    
      podwrapper.pl: wrote guestfs-examples.3
      podwrapper.pl: wrote ../html/guestfs-examples.3.html

commit c81da55dbf746d0d0c4c285a737feec2684506fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 17 12:34:51 2012 +0100

    perl: In examples, call $g->shutdown, $g->close.

commit 5b6121cd333f7fa1175819d31f62bec141f0d551
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 17 12:33:45 2012 +0100

    perl: Use $g instead of $h in documentation.
    
    $g is the "standard" name for libguestfs handles.

commit 3d12258b4495ef5409d288adbf37505438690e14
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 16 23:04:17 2012 +0100

    docs: febootstrap is in section 8 of the manual, not section 1.

commit 732666e873278d35374b6c327054471e4cc8393f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 16 19:41:39 2012 +0100

    Replace podwrapper shell script with custom Perl script.
    
    This uses Pod::Simple so it properly parses the input POD and can
    generate proper custom output as required specifically by libguestfs.
    
    One immediate benefit is that links between and within manual pages
    now work mostly correctly.

commit 77122e45578b8ac95df2985c85015169a7ae21f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 16 21:58:57 2012 +0100

    Fix pod.css for new HTML output from Perl 5.16.
    
    There used to be a <div> around the table of contents, but that
    is no longer present.

commit 59e18330de5dfb8db2f5a430b3b1a4fc95dbcd9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 16 21:58:34 2012 +0100

    configure: Make generated files read-only.
    
    Some of the generated files anyway.

commit b2a5e2914e9a7e8c9537667f0642977075dc7fa2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 16 18:56:57 2012 +0100

    build: Change calls to podwrapper.sh to use $(PODWRAPPER).
    
    This will allow us to easily change the location of this
    script in future.

commit 7cb3bd98c3fbe441a768694f7c081ff557ebc751
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 16 16:47:44 2012 +0100

    virt-make-fs: Add --floppy option to make preconfigured vfd's.

commit 92d1003625c1821b15a4acbb48c0a583310df774
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 16 16:26:26 2012 +0100

    virt-make-fs: Recognize "msdos" as a partition or filesystem type.
    
    Set MBR partition type byte accordingly.

commit 2a43815c19538fb31ae95f1318ffc0f8dadcf2c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 16 14:01:46 2012 +0100

    Revert "ocaml: Calling Gc.compact before g#mount_local works around RHBZ#838081."
    
    This reverts commit ad7c4498f66f37c4219242c6df04d28e9ee7877f.
    
    Reverted because we still see core dumps.

commit 6701f10252102e53a3c8a7055738c0735942da19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 16 10:16:54 2012 +0100

    Version 1.19.19.

commit 416371d188a43f557bff88901faa5d39be9223dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 16 13:29:32 2012 +0100

    run: Update comments.

commit 362ebe0974ada8c877ca9216173ef4625ec82259
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 12 16:38:57 2012 +0100

    generator: Rename 'ntfsresize_opts' API to 'ntfsresize'.
    
    By using the once_had_no_optargs flag, this change is backwards
    compatible for callers.

commit 4eeb0cf549c06fe18102c5f33badb8feb6e3d7df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 12 16:38:57 2012 +0100

    generator: Rename 'mkfs_opts' API to 'mkfs'.
    
    By using the once_had_no_optargs flag, this change is backwards
    compatible for callers.

commit 0866ec568e4a346dbfad78d56fdcd006e2efe946
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 14 12:42:24 2012 +0100

    generator: Rename 'add_drive_opts' API to 'add_drive'.
    
    By using the once_had_no_optargs flag, this change is backwards
    compatible for callers (except Haskell, PHP and GObject as discussed
    in earlier commit).

commit 3af3bf34308d9298e3dc772989d59516a9254b1f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 13 13:42:40 2012 +0100

    generator: In non-C bindings, generate '*_opts' alias.
    
    In C, a function called 'func' which has once_had_no_optargs=true will
    (because of the previous commit) generate 'func_opts' and a
    backwards-compatibility function called 'func'.
    
    This commit changes some of the non-C bindings so that they also
    generate 'func_opts' which is merely a wrapper that calls 'func'.
    
    This avoids incompatibility when we rename 'mkfs_opts' etc back to
    plain 'mkfs', and it also makes it easier to translate between other
    language bindings and C code.
    
    NB: Some bindings do not include aliases:
    
      PHP:     There's no way to easily alias methods in PHP < 5.3, and we
               can't assume everyone has this minimum version.
    
      GObject: Very complex to add aliases, but we should probably do this
               at some point.
    
      Haskell: No support for optargs in these bindings.  Unfortunately
               this means that we can no longer bind 'Guestfs.add_drive'
               (since it will be changed to add optional arguments) making
               the Haskell bindings even less useful than they were already.

commit 6b52f68869b89ee3401e2efff48347adf6c8b854
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 12 16:32:47 2012 +0100

    generator: Allow non-optargs functions to gain optargs.
    
    This commit adds a flag (once_had_no_optargs) which can be used to add
    optargs to functions that currently don't have any.
    
    The idea is that if 'func' currently has no optargs, we can safely add
    optargs provided we are backwards compatible for existing callers.
    
    In C that means we leave 'guestfs_func' alone and provide an extra
    function 'guestfs_func_opts' that takes the optargs ('guestfs_func'
    becomes a wrapper that calls 'guestfs_func_opts').
    
    In the C generator this means there are two names for each function
    (although the two names are normally identical).  'c_name' is the name
    that we export publicly (eg. [guestfs_] 'func_opts').  'name' is the
    internal name of the function (eg. 'func') which is used for
    everything apart from the public interface, and also to generate the
    no-optargs compat function.
    
    In other languages that can add optional arguments safely, we simply
    add the arguments to the existing 'func', so for example in Perl:
    
      $g->func (required_args)
      $g->func (required_args, optional_args)
    
    can be used.
    
    Note that this commit does not cause any change to the output of the
    generator.  I verified this by diffing the output before and after.

commit 767a82cd0b8caaf595f4a8bafe2cdff046c9b075
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 13 11:33:49 2012 +0100

    generator: Rearrange some C generator code into sub-functions.
    
    This is just code motion.  I verified this by comparing the
    generator output before and after this commit.

commit bbd2b3da200127a33eb6f594996c840ead273674
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 13 13:59:00 2012 +0100

    java: Generate overloaded non-optargs method for each optargs method.
    
    For example the existing method:
    
      public void mkfs_opts (String fstype, String device, Map<..> optargs);
    
    is now accompanied by this overloaded method which is a simple wrapper:
    
      public void mkfs_opts (String fstype, String device)
        throws LibGuestFSException
      {
        mkfs_opts (fstype, device, null);
      }

commit e0fc158fef5dd6b4648a606bea2b2522ae60cd3f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 12 16:27:38 2012 +0100

    generator: Add c_optarg_prefix for each action.
    
    This updates commit 9286f556c6a9e6967fcac8aacdae3660821c4c7a.

commit 600ca27950656e7c90178c8e5acbbbde2bc8ce86
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 12 12:50:49 2012 +0100

    generator: Add c_function (C function name) to each action struct.
    
    This field, which is generated internally by the generator, is the
    name of the C function corresponding to each action.
    
    For actions that have NO optional arguments, it's just "guestfs_<name>".
    
    For actions that have any optional arguments, it is
    "guestfs_<name>_argv" (since any binding has to construct the optional
    argument struct explicitly).
    
    In a future commit, this mapping may become more complex.
    
    This commit also "fixes" the C# bindings which didn't handle optional
    arguments properly at all.  In fact, it doesn't fix this, it just
    changes it enough that it probably now compiles.  We should either
    compile and test the bindings routinely with Mono, or drop them, since
    they are starting to bit-rot.
    
    In the GObject bindings, I have added a space between the C function
    name and the first paren.
    
    Apart from the C# and GObject changes, this is just code motion.  It
    was verified by diffing the output of the generator before and after.

commit 9a368d62dc3a7f2513821f871561786456c8c5e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 12 11:11:31 2012 +0100

    generator: Change the way that camel-case names are generated.
    
    Store the camel-case name directly in the struct instead
    of generating it on the fly in only the GObject bindings.
    
    This is just code motion.  Tested by verifying that the generator
    output is identical.

commit fe92da214da104fee8e84b417d98bc682a592f09
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 11 23:56:10 2012 +0100

    tests: Rename test0* functions as internal_test*.
    
    The internal_* prefix is reserved for internal functions
    such as these tests.

commit 4809cb8d2b7a16e6032f8d65615bfcd57a1bea91
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 11 23:55:11 2012 +0100

    tests: Better way to ensure 'g' is used and return success or error.

commit 2fef54c3e8f88cc62ac4fb5f07a16d3233aabe45
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 11 15:07:01 2012 +0100

    generator: Use a struct instead of a tuple to describe each action.
    
    Each action changes from a tuple like this:
    
      ("cat", (RString "content", [Pathname "path"], []), 4,
       [ProtocolLimitWarning],
       [InitISOFS, Always, TestOutput (
          [["cat"; "/known-2"]], "abcdef\n")],
       "list the contents of a file",
       "[...]");
    
    to a slightly longer but more readable struct:
    
      { defaults with
        name = "cat";
        style = RString "content", [Pathname "path"], [];
        proc_nr = Some 4;
        protocol_limit_warning = true;
        tests = [
          InitISOFS, Always, TestOutput (
          [["cat"; "/known-2"]], "abcdef\n")
        ];
        shortdesc = "list the contents of a file";
        longdesc = "[...]" };
    
    ["defaults" is a struct which contains the defaults for every field,
    allowing us to use the "{ defaults with ... }" syntax to just update
    the fields we want to be different from the defaults.]
    
    This is a mechanical change and there is no change to the output of
    the generator.  I checked the output before and after with diff to
    verify this.  There are no changes in the output apart from UUIDs
    which are expected to change with each run.

commit 1d2df83c747ef69bec10d110f51009d8499dfb51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 11 15:05:57 2012 +0100

    todo: Tidy up test0 functions.

commit ee819eb5cb5bed43cea40cdbf30d811bd4d82a7f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 11 10:47:18 2012 +0100

    generator: Add a note in generator/README about safely extending functions.

commit 5e11321650a762fbcbf0047814fee86a665c5e73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 11 10:46:56 2012 +0100

    generator: Move note in comment to generator/README file.

commit f8faa916ab48c20ecccc46eb1292b5a81e097610
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 10 18:59:35 2012 +0100

    fuse: Cleaner code and documentation for safe cleanups.

commit 8455ba667485d71c1cc85ecfa50d53d745026ea0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 10 18:59:04 2012 +0100

    tests/guests: Add temp files to CLEANFILES.

commit a359e44cc6614edd543efb679e26abfd5730ba19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 10 18:44:45 2012 +0100

    Update translations from Transifex.

commit 09c6badab6a140bd4cc6557357f0b40f510f6ae2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 10 13:46:17 2012 +0100

    podwrapper: Fix shell script.
    
    This fixes commit f9a5e3ed86ee7bcd13619f13b4d4de6ce46ac8c3.

commit 6b14dd8cc0c9720cab559fb29fa1226cdadde25a
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Jul 10 07:30:11 2012 +0200

    podwrapper.sh: Take date from ChangeLog or from the latest git commit.

commit c6e10b108fd18999b03a9549d8e27db6ab54f1a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 9 18:36:46 2012 +0100

    Version 1.19.18.

commit 1cdd9aab31e0bede989198ad491d033179adfb2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 9 15:56:47 2012 +0100

    fuse: Add regression test for RHBZ#838592.

commit 73f9e00b8db5eaaa145a195e5ad76688a43e9944
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 9 15:56:20 2012 +0100

    fuse: Add guestmount --pid-file option (RHBZ#838592).

commit 5c22c03d3d862f0b3761d748d257254fcbc4a972
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 9 15:24:26 2012 +0100

    fuse: Link to mount-local documentation in guestmount man page.

commit 7507ff4a0117f2582fc42e58948575bc59c894b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 9 15:23:52 2012 +0100

    fuse: Document race condition possible with fusermount.
    
    See also:
    https://bugzilla.redhat.com/show_bug.cgi?id=835466#c9

commit 7a485559229e19404f5e5b09a6bfc36b03627f6e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 9 15:23:09 2012 +0100

    fuse: Document Device or resource busy errors from fusermount.

commit 9a2182290f61a421198e2d1299ae81004137a2ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 8 12:55:44 2012 +0100

    Revert "launch: Correction in comment."
    
    This reverts commit 6e5a85bb9b6557bc337625a339728e23f5f2dd94.
    
    It turns out this is a bug in QEMU after all.

commit a3bc4920b867f4d0ab6fceef61ac34ecac9812cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 7 16:19:55 2012 +0100

    extra-tests: Add a test using upstream qemu.

commit b7f353b32abd5cadfb5dfa7d55f10f37bed517ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 7 15:49:22 2012 +0100

    launch: Correction in comment.
    
    https://bugs.launchpad.net/qemu/+bug/1021649 is invalid, probably
    caused by a Fedora ROM.
    
    This updates commit 52d188e32fb8addb45bf926df07e34ab35898f85.

commit 928555296bc08abc61aafc16c28a8bf0a4bc034b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 7 12:39:46 2012 +0100

    Update gnulib to latest version.

commit 5e05d2cb92f7898b7640df601972a303ef44a3c1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 6 14:11:38 2012 +0100

    Version 1.19.17.

commit 3b91259ba86dcf6d2da8052888bcf138dbf011a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 6 13:47:07 2012 +0100

    ocaml: Calling Gc.compact before g#mount_local works around RHBZ#838081.

commit f7768a3e64ea56ba189aeb136ce656f15b9be297
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 6 10:29:26 2012 +0100

    qemu: Use sgabios by default (thanks Dan Berrange).

commit de26e5f41608340aa461c9ed75a0678021f9201b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 4 16:44:26 2012 +0100

    todo: Investigate qemu caching modes.

commit a682b300daed54b278759a9fef549647fe5861fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 21:45:07 2012 +0100

    Version 1.19.16.

commit cdeaf620fc13aaed993e7210bfb1bef1f5de5600
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 4 16:16:17 2012 +0100

    qemu or qemu-kvm >= 1.1.0 is required.
    
    Earlier versions of qemu contained a bug in the qcow2 code which
    causes qemu to segfault when shutting down and flushing its internal
    cache, and this can result in data loss.

commit 46a27cd1387f6158c0bd891aae12aeddce746747
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 13:22:45 2012 +0100

    New API: guestfs_shutdown: Cleanly shutdown the backend.
    
    The new API splits orderly close into a two-step process:
    
      if (guestfs_shutdown (g) == -1) {
        /* handle the error, eg. qemu error */
      }
      guestfs_close (g);
    
    Note that the explicit shutdown step is only necessary in the case
    where you have made changes to the disk image and want to handle write
    errors.  Read the documentation for further information.
    
    This change also:
    
     - deprecates guestfs_kill_subprocess
    
     - turns guestfs_kill_subprocess into the same as guestfs_shutdown
    
     - changes guestfish and other tools to call shutdown + close
       where necessary (not for read-only tools)
    
     - updates documentation
    
     - updates examples

commit a2b6d7d80dcd66d79e1ea37296228b0cdddf7d31
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 13:09:53 2012 +0100

    close: Warn if qemu exits unsuccessfully.
    
    Currently guestfs_close has no method to return an error indication,
    so this commit simply prints the error on stderr.

commit 96a273b2a205d764dd49ede7f3230a6ad3481780
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 11:07:13 2012 +0100

    close: Rearrange the order in which the handle is closed and freed.
    
    The order is now:
    
     - remove the handle from the list of handles
     - send close trace message
     - sync and shutdown qemu
     - run user close callback
     - free temporary directory
     - free memory
    
    This commit ought to be no functional change.

commit b1136bd83b7becf5d46f0ef9812770f18b44a590
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 14:42:10 2012 +0100

    perl, python, ruby: Fix comments on call to close method.
    
    Make the comments consistent.
    
    Also make the Perl example call $g->close explicitly so it is
    consistent with the other examples.

commit bbbe7ac8b5ab11b00960f35d85fb4fa5250408a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 3 14:36:45 2012 +0100

    examples: In create_disk example, don't call set_autosync.
    
    This is now set by default in all supported versions of libguestfs.
    It's just confusing if the examples refer to it.

commit 20315aafdb8e30bfdaf9783cf29748e138b06a73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 2 16:38:19 2012 +0100

    daemon: Run fsync on block devices after sync (RHBZ#836710).
    
    On Linux, sync(2) does not actually issue a write barrier, thus it
    doesn't force a flush of the underlying hardware write cache (or
    qemu's disk cache in the virtual case).
    
    This can be a problem, because libguestfs relies on running sync in
    the appliance, followed by killing qemu (using SIGTERM).
    
    In most cases, this is fine, because killing qemu with SIGTERM should
    cause it to flush out the disk cache before it exits.  However we have
    found various bugs in qemu which cause qemu to crash while doing the
    flush, leaving the data unwritten (see RHBZ#836913).
    
    The solution is to issue fsync(2) to the block devices.  This has a
    write barrier, so it ensures that qemu writes out its cache long
    before we get around to killing qemu.

commit ab0b35a7eeb02ab30713578e886b2619a683dc48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 2 16:30:23 2012 +0100

    daemon: Code tidy up in devsparts.
    
    No functional change.

commit 35cea41ef7de8ae64d3c11bedce059f51b8ac8fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 2 12:47:37 2012 +0100

    Add notes about how qemu cache=none works internally.
    
    This is just a comment and has no functional effect.

commit 276d889cdc2768322a6d9d8563f2daaeb821e9cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 2 12:46:14 2012 +0100

    Rename qemu option cache=off to cache=none.
    
    Note that qemu treats these identically, so this change has
    no functional effect.

commit dbf928408d6c46f872813308d4dd79f39e3c205c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 2 12:34:11 2012 +0100

    appliance: Update paths to udevd.
    
    systemd is playing a WTF game with udevd, moving it around and
    renaming it unnecessarily in each release.  Chase all known locations.

commit 57f1074fec8da642d9072e802ef46e053e1a3f53
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 2 12:33:42 2012 +0100

    appliance: Update comment to note that systemd package now contains udevd.

commit 7f3bbdaa9fc183117e2ba64af0b8c9a49ff63706
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 20:16:44 2012 +0100

    Version 1.19.15.

commit 52508f107501bc29c0c7e7913468de0c6300c93a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 18:03:02 2012 +0100

    tests: Add a test of /dev/disk/by-id paths (RHBZ#627675).

commit 6658c99c626a20b0b96f1f4094777f909a41e176
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 17:57:00 2012 +0100

    tests: Use qemu-img to create an overlay for testing, instead of copying.
    
    Replace:
    
      cp tests/guests/fedora.img test.img
    
    with the longer but possibly more space-efficient equivalent:
    
      qemu-img create -F raw -b tests/guests/fedora.img -f qcow2 test.qcow2

commit 952d4a41ae1808c24b5a2199f9edda852b4a4a29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 18:20:42 2012 +0100

    inspect: Check partition exists when doing fstab mapping.
    
    If the partition name we're about to return doesn't really exist,
    then don't perform the mapping.

commit 562e5443dece99d3d5592c2149a213e2166d8b19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 16:45:07 2012 +0100

    inspect: Guess device name from /dev/disk/by-id/*-partN path (RHBZ#627675).
    
    See https://bugzilla.redhat.com/show_bug.cgi?id=836573#c3
    for an explanation.
    
    Useful function 'is_partition' shows how to tell if a device name
    represents a partition.

commit eddea6e85276f9a94b73fd158eb5be0e50680f94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 16:43:53 2012 +0100

    inspect: Refactor resolve_fstab_device code into multiple functions.
    
    This is mostly code motion, although it also fixes a memory leak in an
    extremely rare failure case, and it generally tidies up the existing
    code.

commit 620efad0ae76b3b284b12c6c8199b3d985dbb71d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 19:03:37 2012 +0100

    New API: guestfs_nr_devices
    
    This returns the number of whole block devices added.  It is usually
    simpler to call this than to list the devices and count them, which
    is what we do in some places in the current codebase.

commit 7dad390f3bd779807cd1d90b75e157b864a3160e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 14:54:44 2012 +0100

    ruby: Fix detection of library (thanks Hilko Bengen).
    
    On Debian, the Ruby C extensions library isn't '-lruby', it's
    something like '-lruby1.8' or '-lruby-1.9.1' and these can even be
    parallel-installed.
    
    Fix detection so we use Ruby's own rbconfig.rb file to find the right
    library to use.

commit 2519cec5f8f88c8243962eaf087f5d164dc984c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 14:54:05 2012 +0100

    ruby: Changing spacing in configure file.
    
    No functional change.

commit 4df66660b48d06152c676bcf9d66c37c18f872ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 29 14:18:10 2012 +0100

    ruby: Remove useless AC_SUBST in configure file.

commit ee37825cedbdf6dee535af3030d13ecf31a1998a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 28 17:19:14 2012 +0100

    Update API support from tarballs.

commit 5ab62dab20cc2a547c1ca0d26a7581d5e5f32be8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 28 13:49:32 2012 +0100

    tests: Reformat TESTS_ENVIRONMENT so all use a standard format.
    
    No functional change.

commit bf13a0eba639025c039ad8dcea1de35e9697e0ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 28 13:47:35 2012 +0100

    python: Set PYTHON in run script.

commit 4072450d4c32463dfc79934b28324d3b7ad8e88a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 28 13:46:31 2012 +0100

    ocaml: Set CAML_LD_LIBRARY_PATH in run script.

commit 5d70a82024c134c01d626eaab58b0475eaf7b643
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 28 13:41:40 2012 +0100

    ruby: Use run --tests for tests.

commit df574dc1599e1eef9fe6339643e9ef0b09b44eef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 28 13:40:33 2012 +0100

    java: Use run --tests for tests.
    
    Java-specific environment variables are set in the run script.

commit 2ddc7f6337c37f4ec3ddea620f45289b5eba8609
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 28 13:34:52 2012 +0100

    gobject: Use run --test for tests, and set GJS in run script.

commit 3022e29f4a289b7ebedf6628eb27f66a4abdb07e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 28 13:32:53 2012 +0100

    run: Rearrangement and add comments.
    
    No functional change.

commit ac63a988d225b47d1a12890df349127409b1c33d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 28 13:15:57 2012 +0100

    run: Set MALLOC_PERTURB_ to a random value.
    
    MALLOC_PERTURB_ is a glibc feature which causes malloc to wipe memory
    before and after it is used, allowing both use-after-free and
    uninitialized reads to be detected with relatively little performance
    penalty:
    
      http://udrepper.livejournal.com/11429.html?nojs=1
    
    Modify the ./run script so that it always sets this.
    
    We were already using MALLOC_PERTURB_ in most tests.  Since ./run is
    now setting this, we can remove it from individual Makefiles.  Most
    TESTS_ENVIRONMENT will now simply look like this:
    
      TESTS_ENVIRONMENT = $(top_builddir)/run --test

commit 6329faed1b7ba0738e1c36dcb79af98e6e25cb05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 28 08:56:18 2012 +0100

    Version 1.19.14.

commit 7f6fbc5385bd948ad2a9897b73f812da1ea15dd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 27 16:34:23 2012 +0100

    tests: Fix 'run --test' so it cleans up its temporary file.
    
    This fixes commit 05d4e07918bfa9907a1fa66391e8e2e2370c64d4.

commit 552330a8f2342fcedfecb0d11ce1207ff5943699
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 27 15:49:06 2012 +0100

    Ensure #include <config.h> occurs in every C file.

commit 300a57a1ad3614745184174d53fdc41e140c9b0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 27 15:30:56 2012 +0100

    src/actions.c: Include <config.h> in this generated file.
    
    On RHEL 5, because _GNU_SOURCE was not defined, open_memstream was not
    being declared, resulting in miscompilation and a segfault in the
    trace code whenever open_memstream returned a pointer >= 0x80000000
    (which would be truncated to a 32 bit int and then sign-extended).

commit 364017d7b7dbb25e70cdd2772eedc7447be12f2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 27 10:54:02 2012 +0100

    gobject: bindtests: gjs exception behaviour changed, fix test.
    
    When libguestfs calls 'error (g, "error")', gjs in F17 throws
    error.message == "Error invoking Guestfs.test0rinterr: error"
    
    In F18, error.message is simply the string "error".
    
    Fix the test so it works for both cases.

commit fc58cb5b6d43f3cbe3ddeca989a12c9f17789fb3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 23:49:00 2012 +0100

    Version 1.19.13.

commit 48fee0e13c6106c111f7b27cf3daa5f18cbe9433
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 23:34:42 2012 +0100

    fuse: Use the ./run --test script to run tests.

commit 63062680dff8181bdfac047cc79b2e024b160121
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 22:47:35 2012 +0100

    tests: Add ./run --test option.
    
    This option, when added via
      TESTS_ENVIRONMENT = [...] $(top_builddir)/run --test
    allows us to run the tests and only print the full output (including
    debugging etc) when the test fails.

commit bc439d073844e32d383d320e1a084759d72ff9f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 23:00:29 2012 +0100

    ./run: Fix indenting for shell script.

commit f1c28868c7aed4e772f7d2623a8f9a24012d5010
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 18:38:23 2012 +0100

    ocaml: Allow parallel mount-local test to be skipped.
    
    FUSE is not very reliable on RHEL 5.

commit f0182317385d73e1f938db0f3a27fb9d4517b091
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 17:46:05 2012 +0100

    FAQ: Add Gentoo (thanks Agostino Sarubbo).

commit f01c85c88c768c045564627d57ef2a88bebf0ddb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 15:32:36 2012 +0100

    Version 1.19.12.

commit e6dff2f291c7c3981638a1aad098911d7a7b7244
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 14:39:16 2012 +0100

    launch: Avoid double-close when qemu exits early.
    
    The stdin and stdout of the qemu process are aliased to g->fd:
    
      g->fd[0] = wfd[1];
      g->fd[1] = rfd[0];
    
    However if the child exits early, then child_cleanup closes g->fd[0],
    g->fd[1], AND the code at the cleanup1 label closes wfd[1], rfd[0],
    resulting in a double-close.
    
    Avoid this case by setting wfd[1], rfd[0] to -1.  In the cleanup1
    label, only close wfd[1], rfd[0] if they are not -1, and add the same
    for g->fd[0], g->fd[1].

commit 950ceb02eb17c4e1e6204243202084a8ba2d2294
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 13:36:19 2012 +0100

    launch: Ensure errno from test_qemu_cmd is captured and printed.

commit fe23a759e3bec5f3011c693d6662b70dc940a318
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 13:31:58 2012 +0100

    launch: Set g->sock = -1 to avoid double-close.
    
    This fixes commit ef5c02c6ee72eb8e127115923951777a2c2b8480.

commit e1fb78e990f7260910ea117066d2c8b3b0f7d857
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 11:47:26 2012 +0100

    launch: Log errors from close syscall.

commit 392aa1946f49a1e120d5e9b44c8575a1f394d527
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 26 09:17:19 2012 +0100

    tests: Add thread IDs to test of bug 790721.

commit d0e9ee305338432ea2b40b60e213c4113f2e31fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 25 15:19:58 2012 +0100

    sysprep: Don't check for /dev/fuse before running the test.
    
    The program doesn't actually require FUSE when used without
    any --script options.

commit bd0196a05101729317878f931de9cd030f4483b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 25 15:19:19 2012 +0100

    fish: Allow mount-local test to be skipped with environment variable.
    
    The test uses FUSE, so we need a way to disable it on RHEL 5.

commit 718c933b1615d77b60240ca7b751061178c615b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 25 15:14:46 2012 +0100

    tests: Allow SELinux tests to be skipped with an environment variable.

commit 4c74557ce61fa4c85a76cb9e94c68d4ad9b7720c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 25 11:29:16 2012 +0100

    Version 1.19.11.

commit 783e3dce7ac984fd92d213da741e938af0da5fb0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 25 09:03:39 2012 +0100

    launch: Treat /dev/null specially, for old KVM.
    
    Old KVM can't add /dev/null readonly.  Treat /dev/null as a special
    case.
    
    We also fix a few tests where /dev/null was being used with
    format=qcow2.  This was always incorrect behaviour, but qemu appears
    to tolerate it.

commit e04dbf18f8b80d535ed87f0331ab48b120060cc4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 25 09:02:18 2012 +0100

    lib: Remove obsolete NETWORK, ROUTER definitions in header file.
    
    These haven't been used since we switched over to virtio-serial.

commit 4551c6dc067e3e0a2fe1b3b594845076446d6543
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 22:06:30 2012 +0100

    Version 1.19.10.

commit 8e5137ed57cf500e7e3fb29e2a07d84b2d063ab4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 13:02:35 2012 +0100

    tests/xml: Fix compilation of test on RHEL 5 with old libvirt.
    
    Old <libvirt.h> had a conflicting definition of virDomainGetXMLDesc:
    
    fake_libvirt_xml.c:36: error: conflicting types for 'virDomainGetXMLDesc'
    /usr/include/libvirt/libvirt.h:715: error: previous declaration of 'virDomainGetXMLDesc' was here
    
    The difference is not material ('int' vs. 'unsigned int').
    
    Avoid the error by not including <libvirt.h>.

commit 9dc874a1b749d9e86c0c031b8d4056c3d8c3ea6a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 12:58:49 2012 +0100

    tests: Add workaround for missing O_CLOEXEC.

commit 935fe03e1d7dd5b6de8b6c602d8de14748166cce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 12:57:14 2012 +0100

    tests: Fix broken workarounds for missing O_CLOEXEC.

commit e9aaed0ea2c5dff4cf7e7f14ec32b79825a35f38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 11:04:31 2012 +0100

    test-virt-resize: Replace truncate with guestfish sparse.
    
    Another instance of 'truncate' command.
    
    See commit 39df80dcc0e485e69048bddbf33c259ce532e50d for an
    explanation.

commit 330efcc305d95d2fafa622a07092ce9521334d7d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 10:54:57 2012 +0100

    part-get-bootable: Fix when partitions are missing or unordered (RHBZ#602997).
    
    The original fix for this in
    commit 511c82df46f5c6f4a7f984fdb81d4691038ed6da was not complete, in
    that it did not fix the case of the old (pre '-m' option) parted.
    This doesn't matter for Fedora, but it matters for RHEL 5 which has
    this ancient parted.

commit bd2ebc34e9a7e1af136e623cdf0580abf79d8625
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 09:46:39 2012 +0100

    ruby: Add a replacement rb_hash_lookup function for Ruby 1.8.5.
    
    This function was first added to Ruby in 1.8.7.

commit f55fc0b3bb0e2114ac883f91e8e22c8a45286578
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 09:45:06 2012 +0100

    ruby: Fix libruby test.
    
    If -lruby was not available, this used to define HAVE_LIBRUBY=0.
    However this meant that the later test -n "$HAVE_LIBRUBY" would
    be successful, whereas it should fail in this case.

commit 75539542d0566aa5b52449f0c9468f7d84728be0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 08:49:40 2012 +0100

    virt-format: Don't call wipefs unless API is available.
    
    This API is optional.  Don't call it unless it's available
    in the appliance.

commit 55a1df7bf5c41b875bc0028e39fa7de55140cd2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 22 08:41:14 2012 +0100

    tests: Add SKIP_TEST_* variables to allow these tests to be skipped.
    
    By setting these variables, we can skip tests that fail on
    RHEL 5.

commit 1b466cb2b4371670127c77f469edc6b5e05bffa0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 19 08:31:25 2012 +0100

    FAQ: Mention update-guestfs-appliance (thanks Steven Dake).

commit 52de6b3f65f11fe79cb792f9741ad10deb2ef207
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 18 22:21:05 2012 +0100

    build: Workaround for AC_PROG_SED not existing.
    
    This didn't exist on ancient autoconf in RHEL 5.

commit 0c68fffeb9bf4024f68e26c66e33aa8b56904ae9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 18 21:42:44 2012 +0100

    build: Define abs_builddir if not defined already.
    
    This is missing on RHEL 5.
    
    This updates commit 50aa9533e4a505e1c64dbedddb30491bfbb755d6.

commit b4960a12d96c078e822ef97b01e8faccb41715c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 18 16:33:15 2012 +0100

    Version 1.19.9.

commit cb759b4f3ec22f71b009df702e0a143d94b5eaaf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 18 13:05:35 2012 +0100

    fuse: Skip 'truncate' tests if this command is missing.

commit d69b9a7b86d9d6b263ff530d2a2e1007faae5855
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 18 13:04:46 2012 +0100

    tests: Replace truncate command with 'guestfish sparse'.
    
    RHEL 5 didn't have the truncate command, but we can replace:
    
      truncate -s SIZE FILE
    
    with the roughly equivalent command:
    
      guestfish sparse FILE SIZE

commit 68031df2561105643405c1a1b6acdd2c41d2a34d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 18 10:11:19 2012 +0100

    fuse: Add replacement for fuse_opt_add_opt_escaped.
    
    RHEL 5-era FUSE didn't have this function.
    
    I copied the function out of upstream FUSE, since the license is
    compatible.

commit 7a3ee16af7bc89c0b47d33bf8c2a6f2e92dd135a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 17 22:59:46 2012 +0100

    build: Define builddir and abs_srcdir when they are missing.
    
    RHEL 5-era autoconf did not define these, so define them manually
    when they are missing.
    
    Define builddir as '.'  The scripts require this.  It won't work
    in the srcdir != builddir case, but we don't care about that for
    RHEL 5.
    
    This commit also moves the builddir / abs_srcdir variable setting
    above the include of subdir-rules.mk, in case that include uses
    these variables.
    
    Useful script:
    
      for f in $(find -name Makefile.am | xargs fgrep '$(abs_srcdir)' -l) ; do
        if ! grep -q '^abs_srcdir' $f; then
          echo missing in $f
        fi
      done

commit 342ef5d4fa45f20244a53d97305217cf176263a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 17 23:13:22 2012 +0100

    ocaml: Use OCAMLOPTFLAGS when compiling .cmx (ie. native code) files.

commit a5f685afec4bed77f3eaf8e42cc3bdcd4d4f3b2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 16 10:19:04 2012 +0100

    configure: Look for mkisofs as well as genisoimage.
    
    For our purposes, the two tools are compatible.

commit 0e1bef590532b260389f16c4ae75ae43f96127f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 14 17:37:11 2012 +0100

    Ignore .gdb_history file.

commit eed6531c4099f13a7efec7bb14567077f9cd15b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 14 17:36:17 2012 +0100

    ppc64: is_openable function needed on all platforms now.
    
    This fixes commit 295d6af48d1d8c5238d1536b0c6a2ece42b0b445.

commit b34615dacc9badc602e90c8b2f78dbb451437758
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 14 16:21:09 2012 +0100

    Version 1.19.8.

commit 4b1586fcfb4f02bb06dc62b0d5394d679941711e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 14 12:38:01 2012 +0100

    tests: Add tests for extended attrs and SELinux, direct and via FUSE.
    
    Note that the SELinux + FUSE test is disabled because of:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=811217
    https://bugzilla.redhat.com/show_bug.cgi?id=812798#c42

commit bde2732b8b19dc43190e0e756bf04f0892b1b42f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 14 14:21:16 2012 +0100

    virtio-scsi: Increase udev timeout.
    
    In Koji, when you've got 200+ disks, udev times out before all the
    udev events have been processed.

commit b443cdd8b6642c0aef8f32619e0f227d2ebbfebf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 14 12:22:26 2012 +0100

    virt-edit: Document CVE-2012-2690.

commit cf97dcfca63aca46fa4238ba91ae95d3307d16b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 14 09:57:28 2012 +0100

    Require febootstrap >= 3.17.

commit d480d3dfd3a548a086b495d5b0bb44b164338318
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 23:25:50 2012 +0100

    Version 1.19.7.

commit 1188b7120e802d799f1c5168cf4c03d314fe8a71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 16:24:29 2012 +0100

    tests: Add a test which adds the maximum number of disks and uses them.

commit 7a5e3be21d52f3edec4b8d16119d9763fbb4d0e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 14:49:06 2012 +0100

    virt-df: Use guestfs_max_disks instead of hard-coding limit of 25.
    
    And comprehensively fix it so it works with > 26 disks.

commit c7b96cc24841325616efa51fc6d87c5544a0ba26
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 22:09:13 2012 +0100

    New API: device-index.
    
    This returns the index of the device, eg. /dev/sdb => 1.
    Or you can think of it as the order that the device was
    added, or the index of the device in guestfs_list_devices.

commit b364e7605354e47505fe82b8a0bfd5724bc11633
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 20:36:40 2012 +0100

    New API: guestfs_canonical_device_name.
    
    This API makes device names canonical, eg. /dev/vda1 -> /dev/sda1.

commit cc2216a14249b339f317f7d0b96c45487fc67a95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 18:28:22 2012 +0100

    lvm-filter: Make it work with > 26 devices.
    
    Thanks Alasdair Kergon.

commit e2a15139b826d53c7d2e6dcec7d4f24e919d35dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 17:27:56 2012 +0100

    daemon: Fix order of devices in guestfs_list_devices when > 26 disks.
    
    Sort the device names correctly, not just treating them as
    strings.  As a result, /dev/sdz < /dev/sdaa.

commit 8c173788248bfc0db46eb2844de01c9e291ebc7d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 14:42:21 2012 +0100

    New API: guestfs_max_disks.
    
    Returns the maximum number of disks that may be added to a handle.

commit c0c1d680a763f5cef637e7dac30e0036d5e9654b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 14:34:59 2012 +0100

    Update documentation on maximum number of disks.

commit 6d0e2944f9f289a80d1fbe9e9f3580e1aca91217
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 12:07:54 2012 +0100

    appliance: Add lsscsi to package list.

commit 333c612165dcbfee02220e9bd50d682ed204f6df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 17:26:49 2012 +0100

    virtio-scsi: Fix disk name calculation.
    
    This fixes commit 0c0a7d0d868d153adf0600189f771459e1068b0a.

commit f7c53f1f0a8756fe480cf3b73e0fef5f1a70a8da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 13 11:27:50 2012 +0100

    Require febootstrap >= 3.16.

commit e28dfffdb7715d0e249ed4aae5256d5c1ea5eeeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 23:04:16 2012 +0100

    Version 1.19.6.

commit 995436823512fa1ee05fae87ce1b1222e0201dfd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 19:17:25 2012 +0100

    tests/md: Don't hard code /dev/vda in expected output of tests.
    
    Use a small sed script to canonicalize the device names.

commit 1665489dcaf9f3b91cecb5069dbf219079f83f11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 19:49:45 2012 +0100

    tests: Fix spelling in comment.

commit 09463d7f811e8b160530eac90b11186fe94f8eeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 18:51:59 2012 +0100

    tests/lvm: Don't hard-code /dev/vda in test.
    
    Hard-coding it breaks virtio-scsi because the devices are called
    /dev/sda etc.

commit 479823e0bed20a5b0b664bdb79401324bcca10cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 18:50:22 2012 +0100

    daemon: Always pass -F option to mke2fs.
    
    Apparently e2fsprogs only knows that "/dev/sda" is a whole device, but
    doesn't think that "/dev/vda" is.  On switching the default device
    over to virtio-scsi, that causes mke2fs without -F option to complain
    and ask for an interactive prompt.  Adding -F forces it to go ahead
    anyway.
    
    This caused several less-used APIs to break with virtio-scsi.

commit 43cb2eb9b8634b2c0da738cb0733abda02f172d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 18:02:55 2012 +0100

    appliance: Add support for virtio-scsi.
    
    This requires febootstrap >= 3.15.

commit 2ce2eb6225d4ffd43e02f5f9d4156ea168bc4792
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 14:52:43 2012 +0100

    Record output of qemu -device '?'.
    
    This allows us to find out what qemu devices are supported
    at runtime.

commit a1fe5770b592b4c82b7e087516bf8345877e3b12
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 15:31:35 2012 +0100

    Require QEMU >= 1.0.
    
    QEMU 1.0 was released at the end of 2011.
    
    Remove all the cruft about detecting broken -machine type which
    was only required for QEMU 0.15.
    
    This also reverts commit 30ecbf3ec2ada68f7e125a180553e31b069033b7.
    Even on ARM you can pass -machine accel=kvm:tcg and qemu does the
    right thing, so I'm not sure why we wanted to disable that.

commit ca74b249a78f4cc68d883de46e61079a83c103d8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 14:38:28 2012 +0100

    Remove ./configure --with-drive-if and --with-net-if options.
    
    These were used to select the default drive and network interface.
    They both default to 'virtio'.
    
    These were added back in the day when virtio was buggy, so that
    packagers could revert to using ide/ne2k_pci to work around distro
    bugs.  However virtio has been stable in qemu for a very long time, so
    it seems unlikely that any packager would need to use these, and in
    any case it would be better to do this detection at runtime (cf. for
    virtio-scsi).

commit 27023856489e788ef332c30f08f4fbafc564b8d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 12 14:20:34 2012 +0100

    New API: fstrim - allow filesystem trim.

commit 91357de6d6344ecb5bb524b7fbf68de53d1ee1d0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 9 22:00:46 2012 +0100

    Version 1.19.5.

commit 37041c496668254854ae9754d7612ac8f5f1fa92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 9 21:13:09 2012 +0100

    tests: Allow regression test for bug 690819 to be skipped.

commit eda9f58f13ac03d746e3380fec9334dc5d75541c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 9 20:50:25 2012 +0100

    blockdev_getbsz: Remove test.
    
    The output of this test depends on page size, so on ppc64
    it returns 64K.

commit c224cd0a0cb24bcc9107a3c6e99258fb563d333f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 9 20:18:09 2012 +0100

    fish: Change test-escapes so test is not endian-sensitive.
    
    The test used the external 'od' command to compare the output of
    guestfish with what it's supposed to be.  Unfortunately by default
    this outputs groups of 2-byte words, with the words' endianness
    affected by the current hardware endianness.  For example:
    
    x86-64$ echo -n ab | od
    0000000 061141
    0000002
    
    ppc64$ echo -n ab | od
    0000000 060542
    0000002
    
    By using 'od -b' instead we can output bytes instead of words, and
    there is no endianness issue, and the output is clearer:
    
    x86-64$ echo -n ab | od -b
    0000000 141 142
    0000002
    
    ppc64$ echo -n ab | od -b
    0000000 141 142
    0000002

commit 6de6b58aa15f116e6bcce0679fddeb6fd897ee9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 9 14:47:11 2012 +0100

    btrfs: Modify test to correctly detect btrfs availability.

commit 9fd8e8e89a3253bdfa1c5982d100052287937d00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 9 14:46:07 2012 +0100

    btrfs: Modify btrfs availability to test if the kernel supports btrfs.
    
    This is closer to the real meaning of "availability of btrfs", since
    just having the btrfs tool doesn't help much if it's not supported by
    the kernel too.

commit 19513e41842df96a6bdb9629ddfa8f4a4251fcdd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 9 13:42:13 2012 +0100

    New API: filesystem-available: tests for filesystem availability.
    
    This also creates an internal filesystem_available function within the
    daemon.

commit 3e1068123170ea5039a1b0cb7adcf8be3820b88b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 8 19:34:53 2012 +0100

    ppc64: Update README with notes about ppc64 support.

commit 41617b07e8ef2f5c60f6c26f6bb94167386b9476
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri Jun 8 01:23:55 2012 +0200

    out-of-tree build/install fix for translations

commit 241e6c3e2127e680e3c9d9a1d3ee5abf45d6d593
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 7 14:42:13 2012 +0100

    Version 1.19.4.

commit efa16494b04d0270cde80aaccc960e700ba18cd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 7 09:18:12 2012 +0100

    Enhance BUGS script.
    
    Since RHBZ was updated, the old python-bugzilla program broke.  When
    it was fixed, I found the (undocumented) ordering of the results from
    the old tool was no longer true.
    
    This commit adds a small Perl script to sort the output predictably.
    Now bugs are sorted by both bug state and bug number, so the output
    should be more stable than before.
    
    Re-enable creation of the BUGS file in 'make dist'
    (this reverts commit 91f3456244e7843768da659e24ce0aeeb4ebe4b0).
    
    Also the BUGS file has been updated.

commit 81c3ff30cb2badb1064b5aedb5aa13b12421f23a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 6 23:09:47 2012 +0100

    arm: Use #if defined instead of #ifdef.
    
    No functional change.

commit fcd86af8ed369ecc9ba8333c23d4e4e460e0bad9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 6 13:42:17 2012 +0100

    ocaml: Fix parameters to ocaml_guestfs_create.
    
    The first parameter (not used) is a unit, so declare it properly.

commit 3ce031263b382fbd295dd985697f4bd5f1e7b5e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 2 10:35:06 2012 +0100

    ppc64: Avoid "defined by not used" warning for is_openable function.

commit 7c19e46f5675629966c090be8cf1138f5b9f3351
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 31 23:24:22 2012 +0100

    Version 1.19.3.

commit 7a69822c19976fe8b8ce7b67e7222401109e3f1c
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Wed May 23 22:51:31 2012 +0200

    Split off GObject tests that require an appliance

commit 8d14e54f4220439c0b9242bffabdafa55b3d6cbb
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Wed May 23 22:49:35 2012 +0200

    Fix out-of-tree build for GObject bindings

commit 59e3373afe9bfeaca42a38d8dcac8c3d3cae6997
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 28 17:55:07 2012 +0100

    xattr: Refuse to set or get oversized extended attributes.
    
    See:
    https://www.redhat.com/archives/libguestfs/2012-May/msg00152.html

commit ec75ab1b93aa26164d74bd592b849add2d83596d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 28 16:09:15 2012 +0100

    appliance: 'udevd' has been renamed, since it joined systemd.

commit cbee10ff72298f313fb5c9752bd91586315e13ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 28 10:01:45 2012 -0400

    appliance: Move udev (common package name) to the common section.
    
    This should be just code motion.

commit a227bbd0616a7f404c9ecb66260281b46308dcc5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 27 21:53:21 2012 +0100

    Version 1.19.2.

commit 0b70ec2eaa34ab7fe275e62aaf73991180aa3eaa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 26 23:07:03 2012 +0100

    Update to latest gnulib.

commit 6f70730914db7dba558b219e85a4d7074498e78c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 25 16:52:19 2012 +0100

    Version 1.19.1.

commit bbf6e6f9009d8210931627f3cd7478b9bf6a4757
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 25 14:03:24 2012 +0100

    tests: Add a test of non-ASCII character fidelity on various filesystem types (RHBZ#823887).
    
    Thanks Laszlo Ersek.

commit 3bde0ebf717d5ee6ee669e25974aef14cdb8f499
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 25 13:09:10 2012 +0100

    doc: Add documentation covering use of utf8 option when mounting vfat (RHBZ#823887).

commit 20c0e0ac561ee49ef6babb31eb71f9bb69acdbfe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 25 15:42:02 2012 +0100

    trace: Fix display of non-printing characters.
    
    Previously the code would drop the first character in any sequence of
    non-printing characters that occurred within a string.
    
    Fix for commit e6f18c59d577dd0b443bc6a1d76f699c4e0dde9f.

commit dde478199b3a14919e8db2ee47adcf430c694ebb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 25 15:08:27 2012 +0100

    trace: Fix escaping of non-printable signed characters.
    
    Fix for commit e6f18c59d577dd0b443bc6a1d76f699c4e0dde9f.

commit 06bc0e2423303c5047aaf60bdcbff9ccacdb80da
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri May 25 14:56:53 2012 +0800

    sysprep: remove the data and log files of puppet
    
    Remove the data(keys) and log files of puppet.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit fd56b94d38a6c0b1658d5d6c3482b61cb2c8c3bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 24 15:40:36 2012 +0100

    inspection: Don't fail if /etc/HOSTNAME or /etc/hostname are empty files (RHBZ#823821).
    
    Change guestfs___first_line_of_file so that if the file is empty this
    returns an empty string instead of an error.  This is consistent with
    the behaviour of this function in the case where the file starts with
    a \n character, where it would previously have returned an empty
    string.
    
    Change all callers so that they handle this case.
    
    Then change the hostname parsing code so that it doesn't give up when
    /etc/HOSTNAME is empty, but falls through to the next alternative, and
    similarly for /etc/hostname.
    
    Thanks Todd Mummert for finding and diagnosing this bug.

commit f6b1fea00c83b760bf021af7dfea8c9a6860378a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 24 15:38:46 2012 +0100

    inspection: Use parse_release_file to parse ttylinux release file.
    
    parse_release_file should be used to set fs->product_name, instead of
    calling guestfs___first_line_of_file directory, although currently the
    two are equivalent.
    
    This is code motion and fixes
    commit b648b1813fc8e55db790435b5414d9be3ec765d2.

commit 731d8561a1d2c948191b6cbe47e0dccb9af9241e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 24 14:50:20 2012 +0100

    fish/mount: Add better error message when -m (mount) fails (RHBZ#824043).

commit 4fa5f83c4402c015d93f52c60ded584ef7054dd3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 24 14:50:00 2012 +0100

    fish: Remove inaccurate comment from code.

commit 39b028739100367f4e1715190be9468505f95213
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 24 14:40:52 2012 +0100

    virt-make-fs: When writing vfat, add utf8 option to mount (RHBZ#823885).

commit 9a9600ce54f50b7f00af1482fc6cfe11f07bb2ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 24 12:30:50 2012 +0100

    virt-make-fs: Provide a clearer error message when mkfs fails (RHBZ#823883).

commit 509ab164fc31d0bbcfa537d31e9d6a8361be1c9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 24 08:48:51 2012 +0100

    appliance: Include 'bzip2' in appliance (RHBZ#824716).
    
    Missing package caused this error in compress-device-out:
    
    libguestfs: error: compress_device_out: compression type bzip2 is not supported
    
    Thanks Mohua Li.

commit 9651f50bd55c244cbc12ad0ac6bab5ecd8ba8ecb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 23 11:46:23 2012 +0100

    FAQ: Add section about using libguestfs in closed source programs.

commit 6dbde87bd5925505d847839a4bed6493c16744f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 23 11:19:34 2012 +0100

    FAQ: Add a note about "child process died unexpectedly".
    
    This is a common search term on the main website, and there is no good
    information provided by Google at present.

commit 878762faec2ffc3890ce0dc2ca22ff48245bea4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 23 11:08:52 2012 +0100

    FAQ: Update Ubuntu instructions.

commit 05d0b754297b2fa4c536990d36b6b2bfad188da4
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue May 22 22:22:20 2012 +0800

    TODO: sysprep todo list clearance
    
    Remove the implemented features from TODO list.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit c8b0eec6b0934bcee71d70c37e3cfede6b767379
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 22 14:53:57 2012 +0100

    java: Remove unnecessary imports from the generated Java code.

commit a04d2596f404aca7618a5fccc2b79eada4176e0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 22 13:50:19 2012 +0100

    debug: Add setenv debugging command.

commit a9be28166ac9656f865e406e55c713b03d3eae98
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 16:27:04 2012 +0100

    Version 1.19.0.

commit af0a6b18ab51aae2b689d68ee16e8e4902256d1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 16:18:24 2012 +0100

    New stable branch: Version 1.18.0.

commit 6852ef92696614925211edb53e0daaa03d346903
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 15:24:32 2012 +0100

    build: Temporarily disable generation of 'BUGS' file.
    
    Red Hat Bugzilla is broken: RHBZ#823510.

commit 1f64b1465a790937ba1ec5b556877b735e53959a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 14:35:07 2012 +0100

    Update API support.

commit ee9ba561f4afce4d01ac7a741e6497ae802de371
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 14:34:46 2012 +0100

    Update PO files from Transifex.

commit 9949811f56f9e8633ef5ae21e283e5679c321b3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 14:18:43 2012 +0100

    Update road map for 1.18 branch.

commit ce0afecccaf0dc5905cc95968b99120f4b958403
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 21 13:45:58 2012 +0100

    Update release notes for 1.18 branch.

commit e9ccec3a26a8163e495fccfe6811a324088ee6a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 18 11:14:34 2012 +0100

    sysprep: Credit Wanlong Gao, Fujitsu under 'AUTHORS' section.

commit 6b47973c0c8491105536a1e8796e4a6df15a4119
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri May 18 17:20:04 2012 +0800

    sysprep: remove kerberos data in the guest
    
    Remove the generated kerberos data in the guest.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 71661f9b7973f5927a0e36e2ff40ba8082251fa0
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri May 18 10:49:56 2012 +0800

    sysprep: remove ca certificates in the guest
    
    Remove the ca certificates.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 5d6db4a761b50badbde395ae6a5235943a2e9ac1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 17 19:52:03 2012 +0100

    Version 1.17.43.

commit aaf596a030d8365aaa0caf9b5797f5fd459a4bc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 17 17:19:09 2012 +0100

    virt-ls: Don't initialize path = NULL.

commit d2ace5ffd03bada96679b12b911743a052e29082
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 17 17:11:16 2012 +0100

    virt-ls: Fix --checksum option (RHBZ#822490).

commit 0adfc74bcddbcf0a5c2e444d539ec0a8512faf3e
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue May 15 22:29:19 2012 +0800

    NEW API: add new api btrfs-fsck
    
    Add the new API btrfs-fsck to check the btrfs filesystem.
    Btrfs is currently under heavy development, and not suitable for
    any uses other than benchmarking and review. But it'll be useful
    in the near future.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit cf00ab7ddd2a33dbfdf12ba7578fb8980e439a0d
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue May 15 22:29:20 2012 +0800

    btrfs: change the return value of btrfs-set-seeding
    
    Change the return value from "r" to "0".
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit a89e1d81a54d3461725afd12f037640c65fb2a12
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue May 15 16:02:08 2012 +0800

    gobject: remove old generated files further
    
    also remove guestfs-gobject.c
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit f88487fed65d8f241b5aea8c1768b12e1a2acc50
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 15 08:38:46 2012 +0100

    gobject: Remove old generated files.

commit 7d6bb4fdcaba56877e8c37cccd5ee793d2a67fbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 14 23:03:54 2012 +0100

    sysprep: Add missing 'utils.mli' to SOURCES.
    
    Consequently this file was also missing from the tarball.

commit fd16084be06cd3b8a550c345e36867cccdd2f1b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 14 17:47:57 2012 +0100

    doc: Add notes on how GPT works on 4k sector disks.
    
    I used scsi_debug to create a 4k sector virtual disk:
    
      modprobe scsi_debug dev_size_mb=128 sector_size=4096
    
    I then used 'gdisk' to create lots of partitions, and used 'hexdump'
    to examine what was written to disk.

commit 6a9e920a1f05fefc29ea0c5e9ce9a8c0c61564bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 14 15:32:08 2012 +0100

    todo: Notes about partitioning tools.

commit db120e1f60964c33f99574a950be8dd2ea4b2c4b
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon May 14 18:38:25 2012 +0800

    New API: add new api btrfs-set-seeding to enable or disable seeding.
    
    Add the new API btrfs-set-seeding to support the seeding-device
    feature for btrfs.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 33486b27d76486ef34afa8f202706141a1871b26
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon May 14 18:38:24 2012 +0800

    TODO: add note for libblkid
    
    Add the note about compatible in TODO for libblkid.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 15c8e9a544f2870b6a88f17365e399d0bb558304
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 14 12:01:24 2012 +0100

    examples: Further fixes to mount-local example program.
    
    * Set PS1 prompt properly for bash shells.
    * Touch a file into the root directory of the new filesystem.
    
    This fixes commit 46b6766156ace142443b36e20e55074c544ae6cc.

commit fe879caea972d42da7e9e513f1bcf4b9bf7b9357
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 14 10:49:09 2012 +0100

    example: Various fixes to mount-local example program.
    
    * Move MOUNT_OPTIONS to #define at top.
    * Move SIZE_MB to #define at top.
    * Set PS1 in subshell (doesn't work - why?).
    * Hide libguestfs errors from guestfs_mount_local_run.
    
    This fixes commit 46b6766156ace142443b36e20e55074c544ae6cc.

commit 68371ad9a5cfa82e5d4684dd1e468bd57fb91552
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 14 08:22:03 2012 +0100

    debian: examples: Don't break when O_CLOEXEC is not defined.
    
    This affected Debian 6.
    
    This fixes commit 46b6766156ace142443b36e20e55074c544ae6cc.

commit 38950bda74c085a5a38bdfbbbc8d25b3fe06ef06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 13 23:18:44 2012 +0100

    Version 1.17.42.

commit f3c320067b7d8e84d748500b1465e3b40ed0b054
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 13 23:01:15 2012 +0100

    examples: Add mount options "acl,user_xattr" to mount-local example.
    
    This fixes commit 46b6766156ace142443b36e20e55074c544ae6cc.

commit 2ca5ebf83129c5ddeb750ffe24ba306c386615ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 13 22:53:01 2012 +0100

    examples: Add an example of using the mount-local API from C.

commit ae8c3d7f22f61a88bbefbad7e0505bc6263c5661
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 13 22:20:32 2012 +0100

    examples: Add if HAVE_HIVEX ... endif around virt_dhcp_address example.

commit 3c1c81aa497419a41d0adae862e14b38bb7b7979
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 12 17:22:36 2012 +0100

    qemu: Move -nodefaults etc logically together.
    
    This is just code motion.

commit d827a73a18337ce7e0a0ff385cef0c3dcd943e56
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 12 14:18:05 2012 +0100

    arm: Add configure flag '--with-qemu-options'.
    
    This flag allows extra QEMU options to be passed on the command line.
    
    This is useful mainly on arm (see the notes in the updated README
    file).

commit 93d98a5aa68768cca8e29191c8b9a69de4664e2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 11 21:32:39 2012 +0100

    arm: Disable -machine, -enable-kvm options except on x86, x86-64.
    
    Presently KVM is only applicable to x86 and x86-64 (although that will
    change in future, and there are rumoured to be implementations for
    some current non-x86 architectures).  In any case having these options
    breaks ARM, so disable them for non-x86 architectures at the moment.

commit 0cae0d1095e2079d92bcab243d8c4683a22798a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 11 21:33:50 2012 +0100

    arm: On Linux ARM kernels, the serial console is ttyAMA0.
    
    Cope with unnecessary lack of standardization.

commit bae762a7afeb393178eb5695628f2f65b589127d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 27 11:05:08 2012 -0400

    arm: Disable test for -no-hpet during launch.

commit 4afe3c02fbcf8c6cc737068288ad07c5dbe3e192
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 11 22:39:45 2012 +0100

    arm: Set minimum LIBGUESTFS_MEMSIZE at 128.
    
    For ARM Versatile ("versatilepb") architecture, memsize must be set to
    256 (megabytes) else the appliance is unable to boot.  Previously
    setting LIBGUESTFS_MEMSIZE=256 was not allowed.
    
    Versatile Express has larger limits.

commit 20a870e3e58ecfa225d48aa34567b46ea48ff56a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 12 13:40:45 2012 +0100

    configure: Fix valgrind --vgdb test.

commit 2964bf9845d33099d5fbc963af055945bab9988f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 12 13:14:42 2012 +0100

    configure: Add a comment about vmchannel_test.

commit 9afb8b88a58bba4fc7d703ae119be993f6af7b93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 11 14:20:23 2012 +0100

    Version 1.17.41.

commit d780305d1ae61b4e7d5e8cf0bce5cc2fbcdb90bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 11 13:49:21 2012 +0100

    doc: Add a note about compiling under clang.

commit 27e4fd92dcc50b34b4f3744035233493e0ceb668
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 11 13:47:29 2012 +0100

    configure: Allow systemtap/DTrace userspace probes to be disabled.
    
    './configure --disable-probes' will disable these probes.  Otherwise
    they are autodetected as before.
    
    The <sys/sdt.h> produces lots of errors when you try to compile with
    these probes enabled under clang, so it is necessary to provide a way
    to disable them for clang users.

commit 30104f6046ecc37ad2aaf6f0e1805a4837484b11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 10 22:58:50 2012 +0100

    FAQ: Fix typo in download (thanks badnews@IRC)

commit ce299ae0553598c7fddbbec1e05f9eccba061e04
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Thu May 10 23:18:22 2012 +0800

    sysprep: remove blkid tab in the guest
    
    Remove blkid tab cache in the guest.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 27660d33926ce6225a652c229bdcaf73da3aae16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 9 16:29:39 2012 +0100

    configure: Replace 'echo -n' with 'AS_ECHO_N' macro (thanks Eric Blake).

commit 7a2917a96d40bb0acedc64e53add76706ad8461b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 9 16:11:08 2012 +0100

    Update to latest gnulib.

commit f352e8b08e934cbbfd5f922b48e7b231f7db709d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 9 16:12:55 2012 +0100

    bootstrap: Remove autopoint, po stuff from bootstrap script.
    
    It's not needed since we no longer use gettextize cruft.

commit 782669bfa4ab22c03b312e7cca59f9334a6edc9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 8 22:58:05 2012 +0100

    Version 1.17.40.

commit 632773b5ad41be10944524b57e032a2912a561db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 8 17:32:49 2012 +0100

    Updated PO files from Transifex.

commit e92b2f1ffdfd332390cd7e9ea90563e0f21f9869
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon May 7 22:44:39 2012 +0800

    sysprep: remove pam data
    
    Remove the generated pam data in the guest.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit d9e6c602e7bafb70e16aab9995d83b09e4fa6799
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat May 5 14:55:03 2012 +0100

    test-tool: Implement -V / --version option.

commit c82ff8adf8fa590fac55d250f7f9c44204da483c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 18:05:32 2012 +0100

    Update API support.

commit f8931324da03525d9d7048fe8399275d70277ae7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 16:50:25 2012 +0100

    Version 1.17.39.

commit a77d2e80939e32895b3aa6bc8b69a03d2d005877
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 15:38:08 2012 +0100

    virt-df: Don't fail immediately if a disk is not accessible (RHBZ#789504).

commit c0dbc8f63eafff942c814042ad62e0b343e2d460
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 15:37:59 2012 +0100

    virt-alignment-scan: Don't fail immediately if a disk is not accessible (RHBZ#789504).

commit 87168d4511cf92e87a040c8fc0cf7915dd5a7945
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 15:23:14 2012 +0100

    virt-alignment-scan, virt-df: Add newlines after error messages.

commit f91e724748b48d15aebf9cae78b44832b7d60fa8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 14:21:21 2012 +0100

    virt-make-fs: Add a test of btrfs (regression test for RHBZ#816098).

commit 2debcda812460cea97ac0069443e9d53a0528244
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 13:44:49 2012 +0100

    virt-make-fs: Simplify test code.
    
    This is just code motion.

commit 2306a9e0f0f4511b95885c1fb3fb90bafc0f23fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 14:31:37 2012 +0100

    virt-make-fs: Fix estimation when making btrfs (RHBZ#816098).
    
    This also disables data and metadata duplication, which is not very
    useful on a constructed filesystem on a virtual disk.

commit 0bf5b99f935f42cb7bb52771d8bf8eb3075e3b2f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 14:30:49 2012 +0100

    virt-make-fs: Use mount instead of mount_options.

commit bbcb298d4d12ed85124e000363e1d542172b11c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 14:30:09 2012 +0100

    virt-make-fs: Fix filesystem type check when estimating ntfs.

commit 1677430c2adb8cc82e0da0fb0bcee293e25922f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 12:15:27 2012 +0100

    tests: Regression test for RHBZ#701814.
    
    This commit adds a tests/xml directory, and an LD_PRELOAD module which
    can fake arbitrary libvirt XML from an external file (and is therefore
    a much more flexible test than using the libvirt test:// driver
    alone).
    
    Also added is one regression test for:
    https://bugzilla.redhat.com/show_bug.cgi?id=701814
    
    Loading the given libvirt XML using Sys::Guestfs::Lib::open_guest
    used to fail with the error:
    
      format parameter is empty or contains disallowed characters at /home/rjones/d/libguestfs/perl/blib/lib/Sys/Guestfs/Lib.pm line 256.
    
    Thanks to Tom Horsley for supplying the test data.

commit c167942037ee21a54f2b534577fc14482be94da5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 3 12:25:54 2012 +0100

    perl: Don't fail if 'type' (disk format) attribute is missing in libvirt XML (RHBZ#701814).
    
    Old versions of libvirt allowed you to define disks like this:
    
        <disk type='file' device='disk'>
          <driver name='qemu'/>
          ...
    
    Since the <driver> element does not have a 'type' attribute (which
    defines the format), we are supposed to do autodetection, so the
    format should be undefined.
    
    However what actually happened was that the code in
    Sys::Guestfs::Lib::open_guest received format as an empty string from
    the xpath query, causing libguestfs to give an error.
    
    If the xpath query returns the format as an empty string, undefine it.

commit 6c4a28ea41db1d90f931a383c96223c75d9b9137
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 2 16:33:40 2012 +0100

    fish: Add a regression test for the 'glob' command.

commit 35a37e3c9b261934dbc6abc697ca8464501aa2a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 2 16:14:41 2012 +0100

    fish: glob command now expands /dev/ patterns (RHBZ#635971).
    
    For example:
    
    ><fs> glob echo /dev/*
    /dev/vda
    /dev/vda1
    /dev/vda2
    /dev/vda3
    ><fs> glob echo /dev/v*/*
    /dev/vg_f16x64/lv_root
    /dev/vg_f16x64/lv_swap

commit 66caa97f8429fdafa1717a00d35baccc653bd8ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 2 15:34:02 2012 +0100

    fish: Move 'feature_available' function to global.
    
    This is just code motion.

commit ff83f6847cbf1160b9f3d27e4bc878e180adfeab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 2 14:44:54 2012 +0100

    fish: Clean up glob code and make it return error if malloc fails.
    
    This commit tidies up the code for the 'glob' command.  It also makes
    the command return an error if malloc fails (previously it would just
    print a message but not return any error indication).

commit 0ce1af47b8af7740eede6cc15c15c66c9b20410f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 2 13:55:18 2012 +0100

    fish: Add --pipe-error flag to allow detection of errors in pipe commands (RHBZ#803533).
    
    For a test case, see:
    https://bugzilla.redhat.com/show_bug.cgi?id=803533
    
    In guestfish, we use the gnulib closeout module which sets up an
    atexit handler to detect if there were any errors on stdout when the
    program exits.  This is so we can fail correctly in out of disk space
    cases like:
    
     guestfish [...] > output
    
    However the atexit handler just checks that there was any error on
    stdout (using ferror).  If a pipe command such as:
    
     ><fs> command_with_lots_of_output | head
    
    ran at any time during the session, the error flag would be set
    (because the underlying writes failed with EPIPE errors).
    
    So the commit first adds a test for ferror (stdout) after each command
    that we issue.  This brings error handling closer to the point of
    failure, and so is generally a good thing.
    
    Secondly we reset the error flag after detecting and dealing with the
    error, so that avoids the redundant 'guestfish: write error' message
    produced by gnulib closeout.
    
    Thirdly we add a --pipe-error flag which causes guestfish commands to
    fail on pipe commands line the one above.  The default is off for
    backwards compatibility reasons.

commit 876b824aa309a6cd10ba0fd8d13cfd26a0f612ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 1 19:49:54 2012 +0100

    Update release notes.

commit 58a64c2817fb27e97359070e63825948b633e3df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 1 14:08:39 2012 +0100

    Version 1.17.38.

commit a6ab10b2d1ac09850819be9d759902a1e5864ad1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 1 13:27:45 2012 +0100

    Turn libguestfs FAQ into a man page: guestfs-faq(1).

commit c8e26c43a7b0fd70bc1f3bae738ede883d2d41ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 1 11:18:57 2012 +0100

    doc: Rewrite description section in man page guestfs(3).
    
    Make the introduction in the man page shorter and punchier, so it
    leads readers directly to other pages of interest.

commit 78b3a8dfee1d1a46c2b0c5ed18301ff1e9e333be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 1 08:57:41 2012 +0100

    Version 1.17.37.

commit 1980c3afa156a810ac22464fa1b2435d185c972a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 30 11:33:19 2012 +0100

    Add gettext support for OCaml tools (virt-resize, virt-sparsify, virt-sysprep).
    
    Note that this support is optional: To enable it, install the
    ocaml-gettext library from
    http://forge.ocamlcore.org/projects/ocaml-gettext .  If this library
    is not installed, then configure detects this and inserts dummy
    gettext functions that do nothing.

commit afa0a6ab753c93b4610177d79a6df83b516ab11c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 30 16:04:51 2012 +0100

    Remove gettextize.
    
    Replace the sociopathic nonsense in gettextize with a simple
    Makefile.am which does the same ... and is faster.

commit aab18f2d8638db948268872e00051d999004bcf0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 30 16:23:05 2012 +0100

    Remove "convenience header" "gettext.h" and use <libintl.h> instead.
    
    gettextize provides a local file called "gettext.h".  Remove this and
    use <libintl.h> from glibc headers instead.
    
    Most of this change is mechanical: #include <libintl.h> in every C
    file which uses any gettext function.  But also we remove the
    gettext.h file, and adjust the "_" macros.
    
    Note that this effectively removes the ./configure --disable-nls
    option, although we don't know if that ever worked.

commit df2eb768d1f4f303be4e2f2c0ab7d2d1ba628322
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 30 10:18:37 2012 +0100

    configure: There are now more OCaml tools than just virt-resize.
    
    virt-resize, virt-sparsify, virt-sysprep are all OCaml tools, so
    change what is printed in the report.

commit 7c5adb64fb894fae1ac82431cea6561938bfb6f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 30 10:12:33 2012 +0100

    configure: Comment fix.

commit c762d3beaa50a73fa26a4d715c912bb9d80daf96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 30 15:03:24 2012 +0100

    Move 'libguestfs.pc' (pkgconfig file) to src/ directory.
    
    Since it describes the C library, it's better in the src/ directory.

commit 6d40a8d8acd2882b2df5570820d4fe1ba7a6ac77
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 30 09:42:36 2012 +0100

    todo: virt-sparsify whitelist option.

commit 4b8e1d2299d251fddf428c4506a1a46d7797cbdc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 27 15:35:50 2012 +0100

    debug: 'progress' (unsupported debug command) now checks argument is reasonable (RHBZ#816839).
    
    Thanks Yuyu Zhou.

commit 61133414d3473d5ac331381671ddb6713cae9de6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 27 09:10:43 2012 +0100

    gobject: Fix installation of headers.
    
    RPM build errors:
    error: Installed (but unpackaged) file(s) found:
       /usr/include/optargs-add_domain.h
       /usr/include/optargs-add_drive_opts.h
       /usr/include/optargs-btrfs_filesystem_resize.h
       /usr/include/optargs-compress_device_out.h
       /usr/include/optargs-compress_out.h
       /usr/include/optargs-copy_device_to_device.h
       /usr/include/optargs-copy_device_to_file.h
       /usr/include/optargs-copy_file_to_device.h
       /usr/include/optargs-copy_file_to_file.h
       /usr/include/optargs-e2fsck.h
       /usr/include/optargs-inspect_get_icon.h
       /usr/include/optargs-md_create.h
       /usr/include/optargs-mkfs_btrfs.h
       /usr/include/optargs-mkfs_opts.h
       /usr/include/optargs-mount_9p.h
       /usr/include/optargs-mount_local.h
       /usr/include/optargs-ntfsclone_out.h
       /usr/include/optargs-ntfsfix.h
       /usr/include/optargs-ntfsresize_opts.h
       /usr/include/optargs-set_e2attrs.h
       /usr/include/optargs-test0.h
       /usr/include/optargs-tune2fs.h
       /usr/include/optargs-umount_local.h
       /usr/include/session.h
       /usr/include/struct-application.h
       /usr/include/struct-btrfssubvolume.h
       /usr/include/struct-dirent.h
       /usr/include/struct-inotify_event.h
       /usr/include/struct-int_bool.h
       /usr/include/struct-isoinfo.h
       /usr/include/struct-lvm_lv.h
       /usr/include/struct-lvm_pv.h
       /usr/include/struct-lvm_vg.h
       /usr/include/struct-mdstat.h
       /usr/include/struct-partition.h
       /usr/include/struct-stat.h
       /usr/include/struct-statvfs.h
       /usr/include/struct-version.h
       /usr/include/struct-xattr.h
       /usr/include/tristate.h
    
    We want to put these headers into the subdirectory, but not
    guestfs-gobject.h.  This isn't easy with automake.

commit 32b0dab34a0b50cc2f6c72b0c2b342e8a7306e2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 27 09:10:29 2012 +0100

    gobject: Fix whitespace in Makefile.am.

commit 43c40e413afe99f524fbd1896c04b472bd41e319
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri Apr 27 14:18:53 2012 +0800

    sysprep: Remove the data of dovecot
    
    Remove the data of dovecot.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit c535920fd41d812a53a155ce195d7f2d913c9b30
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri Apr 27 14:18:52 2012 +0800

    sysprep: remove the logfiles configured by logrotate
    
    Remove the logfiles configured by /etc/logrotate.d/*.
    Omit the logfile of "samba" and "sssd" which we removed
    them separately .
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit d14a88dcee9806609f7e4fd878da994b855ddb32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 26 18:03:58 2012 +0100

    Version 1.17.36.

commit d5ca922c1a9b954b4369cc83e1a1ceea75c5b50d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 26 17:55:54 2012 +0100

    btrfs: Fix btrfs test so it works with btrfs-progs in Rawhide.
    
    See: http://bugzilla.redhat.com/816346

commit 6de71a3fb36d9cffa140ba407e6caec2063629e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 26 15:33:12 2012 +0100

    lib: Remove the BUSY state.
    
    Originally this state was intended so that in some way you could find
    out if the appliance was running a command.  However there was never a
    thread-safe way to access the state of the handle, so in effect you
    could never do anything useful safely with this information.
    
    This commit completely removes the BUSY state.
    
    The only visible change is to the guestfs_is_busy API.  Previously you
    could never call this safely from another thread.  If you called it
    from the same thread it would always return false (since the current
    thread can't be running a libguestfs command at that point by
    definition).  Now it always returns false.

commit d84467e7ec39f9b9585b9df8a82725c9c0ce74c1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 26 15:52:23 2012 +0100

    gobject: Use generator_built macro to ensure generated files are rebuilt properly.

commit 624370fef3a81dcd0c9a9cc2d52d74fd5fbd3dd0
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Apr 26 13:30:31 2012 +0100

    gobject: Move headers into a subdirectory
    
    The gobject bindings generate a large number of header files, which pollute
    /usr/include when installed. This patch moves them all into a guestfs-gobject/
    subdirectory. guestfs-gobject.h remains in the same place.
    
    This change also moves generated source files into src/, because it makes the
    gobject directory a bit tidier.

commit dbab0aa52ac707b85335b04a0f47c0a22e21cfeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 26 13:55:30 2012 +0100

    btrfs: Fix docs for btrfs_subvolume_set_default (thanks Matt Booth).
    
    This fixes commit 87ea7a04094d5ed40f3f047ff2b7a613d4d530d4.

commit 08a4484a93b91392718f1954d419555394088d55
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Apr 12 09:29:45 2012 +0100

    gobject: Implement libguestfs events as signals
    
    Implement libguestfs events as GObject signals. Callback arguments are passed in
    a boxed object.
    
    Note that this patch fixes the length of the uint64_t array in the callback
    arguments at 16, whereas it is actually arbitrary length. This is to make it
    introspectable. There is currently no way to pass an arbitrary length array to a
    callback, and have its type introspected.

commit 8dce78c2090fabe95ad00c381ea60d83f64143c7
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Apr 4 16:49:17 2012 +0100

    gobject: Wrap literal sections in POD in CDATA sections

commit 52f988e6012625b3c05614d7d6eddeb552e57902
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Apr 3 16:28:47 2012 +0100

    gobject: NFC generated code formatting fix

commit 982d97f541be1418e87b11d2263c1176dbf82dde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 26 12:56:34 2012 +0100

    rescue: Add --scratch option.
    
    This lets you create temporary scratch disks.

commit 2232f10cc2abde3cfa86271ac7270cdc79ad2af3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 26 12:56:01 2012 +0100

    fish: Add opaque field to the drives list for programs to use.
    
    Not used at present.

commit 9203431fbc028baa8bbb845ac4b6e1d3a9224d68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 25 23:08:24 2012 +0100

    Version 1.17.35.

commit f6c6b35da22a5d386394ff5c24f77b13a94c8ba9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 25 22:58:25 2012 +0100

    appliance: Remove some unnecessary errors.
    
    virt-rescue prints errors such as:
    
      rm: cannot remove `/proc': Is a directory
      mkdir: cannot create directory `/proc': File exists
      rm: cannot remove `/sys': Is a directory
      mkdir: cannot create directory `/sys': File exists
    
    People have reported these errors (which are nothing to worry about)
    as bugs in the past, so avoid them where possible.

commit faaa6ab40506bec83eb9fe3cc7ef47f877a9f503
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 25 19:42:01 2012 +0100

    btrfs: Enhance the btrfs device test.
    
    This enhances commit 87ea7a04094d5ed40f3f047ff2b7a613d4d530d4.

commit 64bbd7cdc65aa603d415d22fae3c1f81afad9b4f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 25 19:26:57 2012 +0100

    tests: Add some more substantial test data.
    
    The two tarballs:
    
      8252 bytes   tests/data/filesanddirs-10M.tar.xz
     41152 bytes   tests/data/filesanddirs-100M.tar.xz
    
    contain, as their names suggest, highly compressed files and
    directories, with unpacked size respectively around 10M and 100M (the
    precise size after unpacking depends on the filesystem).
    
    These can be used for testing purposes.

commit 3d5ff3135d2cef77b6ad7d9082700e2705498ff5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 25 19:08:56 2012 +0100

    btrfs-device-delete: Use correct (sysroot-prefixed) path to filesystem.
    
    This fixes commit 87ea7a04094d5ed40f3f047ff2b7a613d4d530d4.

commit 692074707b0cc146f47bf50a9d33686745e6b3bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 25 16:35:12 2012 +0100

    New btrfs APIs.
    
    Bind the easy parts of the 'btrfs' program.
    
    The new APIs are:
    
    btrfs-device-add: add devices to a btrfs filesystem
    btrfs-device-delete: remove devices from a btrfs filesystem
    btrfs-filesystem-sync: sync a btrfs filesystem
    btrfs-filesystem-balance: balance a btrfs filesystem
    btrfs-subvolume-create: create a btrfs snapshot
    btrfs-subvolume-delete: delete a btrfs snapshot
    btrfs-subvolume-list: list btrfs snapshots and subvolumes
    btrfs-subvolume-set-default: set default btrfs subvolume
    btrfs-subvolume-snapshot: create a writable btrfs snapshot

commit 55593d1f853cf093eac1e978cedb822da82d49e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 25 16:33:31 2012 +0100

    btrfs: Modify mkfs-btrfs API so it takes a list of devices.
    
    btrfs filesystems can span multiple filesystems.
    
    Note this changes the API, but this API has not yet been released in a
    stable version of libguestfs.

commit 098aba364092b2a405e29805fea93370e4d56c73
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Apr 25 10:29:52 2012 +0800

    TODO: remove sssd and samba in sysprep
    
    remove the TODO of sssd and samba in sysprep.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 93eb5dc267ed58b6816ebec25227f62088f9d12a
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Apr 25 10:25:11 2012 +0800

    sysprep: fix typo of the object
    
    Fix the typo of the OBJECT.
    I'm sorry for the copy and paste typo.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit b9ea0ec52a965e5006d32461f0dbdbc456a0ed47
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Apr 25 10:25:10 2012 +0800

    sysprep: remove the db and log of samba
    
    Remove the db and log of samba.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 726567b7782ec583cd6a7837a60bad3105d3a49a
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Apr 25 10:25:09 2012 +0800

    sysprep: remove the db and log of sssd
    
    Remove the db and log of sssd.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 16b3cd7615b7c6fc40498cf5749bfb8f439684bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 24 19:36:33 2012 +0100

    todo: Suggest 'virt-customize' tool.

commit 4cff4de5e290e1a26ac5deebdf89321c85e7a0b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 24 19:26:09 2012 +0100

    todo: Debian APT cache is now removed (thanks Wanlong Gao).
    
    This updates commit 7fc7c3aa5b8088abc52b5cc39b682cdaedd1ba84.

commit 903b8e5c74ae3c7b202a825a41a0907078c294db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 24 19:24:10 2012 +0100

    bugs: Update BUGS file.

commit 80a2233b384698b55d0b44553e4c4726ec6320e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 24 19:24:00 2012 +0100

    bugs: Print count of bugs in each section.

commit 4dd2566e9c7a37edf721f0e9da0fbfa3408c4050
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 24 17:38:45 2012 +0100

    generator: Add explicit types to pod memoization code.
    
    This is just code motion.

commit 602b88a96a46ef5ce86599dca073437d96945320
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 24 17:17:59 2012 +0100

    Version 1.17.34.

commit 7f1b151a8cb040f9a966e3d2822472aea3abfb5f
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue Apr 24 15:23:48 2012 +0800

    sysprep: remove the cache of package manager
    
    Remove the cache of package manager like yum and apt.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
    - Small code cleanup.

commit c3c6571dd0317832ec947e76f19e9f1a69ee76fc
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Apr 23 16:41:51 2012 +0800

    sysprep: flag the system for reconfiguration
    
    Flag the system for reconfiguration by touching /.unconfigured .
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
    - Updated so this is disabled by default, since it requires
      user intervention at next boot.

commit feeae0fea0c9c76b1a76145f265fe40b6bcb1cd9
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Apr 23 08:58:44 2012 +0800

    sysprep: remove user accounts
    
    Remove user accounts from /etc/passwd, /etc/group,
    /etc/shadow, and the home directory of the user,
    except the root user.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
    - Updated to use Augeas to delete accounts.
    - Disable this by default, since it is very invasive.

commit 09b94933411cbb1496b2b2361a5ef00f204eaf44
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 22 23:22:56 2012 +0100

    Version 1.17.33.

commit fe7052b667902c2e9820948b5f0452d62d70cfc9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 21 22:27:39 2012 +0100

    sysprep: Don't enable every option by default.
    
    All current operations are enabled by default.
    
    Also:
    
    * The POD description is split into a heading and the description body.
    
    * An 'enabled_by_default' flag is added to the structure.

commit 90ea676dadc478dc9a9aee136ebe53465dc269aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 21 21:43:32 2012 +0100

    build: Change comment above OCaml tools.

commit 10e0569dbe3d911c3e2fb71609f4d16eb1a40252
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 21 15:37:43 2012 +0100

    guests: Add /etc/shadow file to fedora.img.
    
    This is used for testing file permissions and SELinux contexts.

commit f5c58431dc60771a15f974bc244250587ff6f889
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 21 14:39:21 2012 +0100

    tests: Space before parens in perl code.

commit 804eb83322d75d339b87dd479b6ca28dd6ccfd5c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 19 22:46:07 2012 +0100

    Update release notes.

commit 171d714ea27a94af7f783fcf36e91a15f045c9e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 19 10:50:44 2012 +0100

    configure: Test for tgetent, tputs and 'UP' symbols (from libtinfo).

commit 52569cd2f5bb6b73ef9268637aaef0eb68878f1c
Author: Jim Meyering <jim@meyering.net>
Date:   Wed Apr 18 11:18:19 2012 +0200

    maint: fix doc typos
    
    Fix typos spotted by http://github.com/lyda/misspell-check.
    * configure.ac: As above.
    * ocaml/examples/guestfs-ocaml.pod: Likewise.
    * fish/guestfish.pod: Likewise.

commit f9a55e40f9fc671bc92bd1103e004125f64cd2e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 18 17:29:13 2012 +0100

    Remove obsolete valgrind rule from C API tests.

commit 34ebd98fc8eb68e839f90aea8873d3f13e3a39c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 18 17:28:47 2012 +0100

    extra-tests: Check if valgrind supports --vgdb=no option.
    
    This option didn't exist in RHEL 6 valgrind.

commit 16aa5900a60dd41f4884551a3c147293a77d786e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 18 14:23:57 2012 +0100

    Check library still compiles without libvirt.

commit 481ed5accb293ea390169537555d81d96203f759
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 18 10:50:32 2012 +0100

    sparsify: Add a note about sparsify on tmpfs.

commit 32fe751b2c10d794d8370141a5378c8ccbfec646
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Apr 17 10:17:58 2012 +0100

    Don't abort inspection if mdadm.conf ARRAY doesn't have a uuid

commit 638a062f852f6c53b4af04d04f04c4aec5a85a10
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 17 18:33:23 2012 +0100

    Version 1.17.32.

commit ac2d545a7a0c7e741e50b9a958a817d52b4560c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 17 17:41:43 2012 +0100

    python: Remove 'del g' from the docs, replace with 'g.close ()'.
    
    'del g' is a trap for the unwary.  If the handle has any other
    references, it does nothing (in fact, it can be actively dangerous if
    the user was expecting the appliance to go away).  In non-CPython it
    can be delayed arbitrarily long.
    
    Using 'g.close()' on the other hand is always safe.

commit 5827f991903154267725e5f54f34e0ff6fd1171d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 17 17:41:33 2012 +0100

    todo: Note about -cpu host.

commit b034b5b148e759fd8d788b42766f6f633e600d55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 17 16:24:27 2012 +0100

    virt-alignment-scan: Fix error code.
    
    This fixes commit fb401ebff837f9df7c06acb8467b2c03d5b8ced0.

commit a70cc10f81bb5e80ddf357b34117a5eb7d321c5a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 17 15:03:02 2012 +0100

    resize, sparsify: Add a simple-minded check to stop indisk = outdisk.

commit 0a82ab8c3b81d608bae4fb0c5a595f2a9eb49a24
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 17 14:54:48 2012 +0100

    sparsify: Fix comma/colon and quoting in qemu-img command.
    
    Colon characters are not allowed in qemu/qemu-img filenames.  There's
    no way to quote them.
    
    Comma characters CAN be used.  However they must be quoted (by
    doubling) when used in the '-o' option.
    
    Fix general quoting problems in the external command.

commit e4e83565920abe32d8b7ee63b487be8769cea6d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 17 10:38:07 2012 +0100

    virt-alignment-scan: Add ability to list all domains.
    
    The output looks like this:
    
     F16x64:/dev/sda1      1048576         1024K   ok
     F16x64:/dev/sda2      2097152         2048K   ok
     F16x64:/dev/sda3    526385152         2048K   ok
    
    If the --uuid option is used, then UUIDs are shown instead of names.

commit 16e761eb1ddb55b7b826ffcf359060dc52567a39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 16 15:53:34 2012 +0100

    gitignore: Move cscope.out to second section.
    
    This fixes commit 3c843e2129d7ce2d6b9bbc6c294cacf7385aa5e3.

commit a9fcd0f2c4dd6c0b91ed7e9b790e5e6a4762bc85
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Apr 16 15:48:16 2012 +0100

    .gitignore: cscope.out isn't always at the top-level

commit 995a1c89b464ce553d3bfc43d617b837d3b57e34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 16 13:30:07 2012 +0100

    fuse: Improve reporting in mount-local when verbose is enabled.

commit 279b7dc2b0a722e13cbba700607c200080dc2448
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 15 21:53:43 2012 +0100

    Version 1.17.31.

commit f8e6d52a6b4afee828d569e037e46f5af6906206
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 13 13:13:50 2012 +0100

    New APIs for reading and writing ext2 file attributes and file generation.
    
    The new APIs are:
    
      get-e2attrs: List ext2 file attributes of a file.
      set-e2attrs: Set or clear ext2 file attributes of a file.
      get-e2generation: Get ext2 file generation of a file.
      set-e2generation: Set ext2 file generation of a file.
    
    These are implemented using the lsattr and chattr programs from
    e2fsprogs.

commit b78ab6ed5a6c8c7a40012336895442d3e526bace
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 13 12:41:04 2012 +0100

    todo: Remove obsolete sections from the TODO file.

commit 735fddf031f0d1050cf8251fbcc99ada7c6c55fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 13 09:35:08 2012 +0100

    sysprep: Make the tests run quietly.

commit 08dfe106bc784bbbb5078d3e25aff5d454f12142
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri Apr 13 15:36:28 2012 +0800

    sysprep: bash_history: fix copyright
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit d6cbff1c86fa5881daf371ac4ddb1db143b076fd
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri Apr 13 15:36:27 2012 +0800

    sysprep: remove .ssh directory in users' directory
    
    Remove the .ssh directory of user "root" and any other
    users who have a .ssh directory in their home directory.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 1bad42328b404c8250acd50a3c0ace1dcab1d297
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 13 08:43:37 2012 +0100

    Version 1.17.30.

commit c507d7d7b6ef96fda2af0bc7cf496f024d726f60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 13 08:31:01 2012 +0100

    tests: Fix reference to guestfish in test for RHBZ#811649.
    
    This fixes commit a9bd90abfb3d4519278dfff305b8b7033ae6d76a.

commit 58a99e447d7c9079d2fe7b3995d44feceb562343
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 21:35:14 2012 +0100

    Version 1.17.29.

commit 861aaf9d43547b1308ff2691d8233254fa986b96
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 16:49:58 2012 +0100

    Add regression test to test funny filenames (RHBZ#811649).

commit eb733c89d5f823126bdbadc64bdd693ea450ee59
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 17:07:49 2012 +0100

    lib: Escape , as ,, on qemu command line (RHBZ#811649).

commit 783e8b658e5cc0e416fb96fadedd3675f671c980
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 16:57:30 2012 +0100

    lib: Remove check_path function, limitation is colon, not comma (RHBZ#811649).
    
    Remove the bogus check_path function and move the functionality into
    the two places where it was being used.
    
      qemu -cdrom ,
    
    works fine, I tested it.
    
    Colon cannot be used in a block device filename anywhere, since the
    qemu block driver interprets it as a prefix.  There is no known way to
    work around this problem.  I checked this is true with kwolf.
    
    Comma is fine in -drive options, provided it is escaped by doubling it.

commit 30552e81634760dbae43ec9efdf8c70542cda173
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 16:52:50 2012 +0100

    Revert "launch: don't add a drive twice"
    
    This reverts commit be47b66c3033105a2b880dbc10bfc2b163b7eafe.

commit ade78fc2f5aba26eb4f7e33296372bb1758f1687
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 18:59:04 2012 +0100

    extra-tests: Add suppression for memory leak in FUSE.

commit 4fb72d37516dff9625fc3d9bc11368a75a066ecb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 18:43:59 2012 +0100

    extra-tests: ocaml: Use a short delay instead of Thread.yield.
    
    On the new faster computer, Thread.yield wasn't yielding, so the
    second thread would block the main test from proceeding (only when run
    under valgrind however).

commit 35e51a398cfaa5fd34fe2ded2bc83b22a5cda44e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 10:20:58 2012 +0100

    inspector: Update example XML.

commit 64cde255ba26c981962ea629e278ce56798a3e1c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 10:15:35 2012 +0100

    inspection: Remove spurious warning for Ubuntu 10.04 with encrypted swap (RHBZ#811872).

commit d744e3fd24a8fe0788e8d8606b686854c6bd213f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 10:20:39 2012 +0100

    inspector: Fix incorrect arch in example-ubuntu.xml.

commit 1d71962badb45319a776d2e6fc1345804eb5b36d
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Thu Apr 12 16:27:16 2012 +0800

    sysprep: remove the bash history of users
    
    Remove the bash history of users in home directory,
    and history of root.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 15aa713ec5c2ce542301a879d84573c7d5f5eb94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 12 08:22:53 2012 +0100

    website: typo: guestfs-performance.3 -> guestfs-performance.1

commit 22f12ca068f8e6eddf2bd0050c3ec5915cda003f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 23:00:39 2012 +0100

    Version 1.17.28.

commit fabdc95ad67ed600d4f4ef766d7df601814e6750
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 8 16:53:00 2012 +0100

    New man page: guestfs-performance(1).
    
    This contains tips for engineering libguestfs for greatest performance.

commit b999ef985a7ae8a29b8cdb151ac24fecab3b0798
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 22:02:19 2012 +0100

    docs: Add libguestfs-test-tool(1) and libguestfs-make-fixed-appliance(1) to guestfs(3) man page.
    
    Inexplicably these were not included before.

commit df445d13457559383e5d613c983939e57e3378c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 18:37:14 2012 +0100

    po-docs: Allow parallel builds in po-docs directory.
    
    The first time the directory is checked out from git, there are no
    *.pod files.  In a parallel build, the first thread notices this and
    runs the 'make -C .. update-po' rule, but the other threads also try
    to run at the same time and fail.

commit 41ed1557f614b74cbaf4aaa8fab7208e01751e85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 18:36:24 2012 +0100

    po-docs: No need to touch virt-sysprep.1 output file.

commit 81f92dc7037f3779dcb727b68112566aadeae3de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 18:20:10 2012 +0100

    extra-tests: Add suppression for libvirt/gnutls leak.
    
    https://www.redhat.com/archives/libvir-list/2012-April/msg00322.html

commit 3dd2e158d02415ccbc37edbcd2c5f6ee278d68ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 17:53:46 2012 +0100

    python: Add a regression test for RHBZ#811650.

commit 8f85f458f19790cda3c4f37f44066e4979c47c19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 17:43:47 2012 +0100

    launch: Set error when qemu fails early during launch (RHBZ#811650).
    
    This caused the Python bindings (and probably others) to
    segfault because guestfs_last_error(g) would return NULL.

commit e579972fa5e65200ee84efbaa511ed272c2d46ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 17:24:55 2012 +0100

    python: Add PYTHONPATH to './run' script.
    
    Also:
    
     - tidy up the script
     - use the ./run script when running Python tests

commit cd8a0be9fd941c6a30455641b52c4788448baaa4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 16:21:06 2012 +0100

    sysprep: Sort and align all arguments (thanks Wanlong Gao).

commit a438fc365d6fdcba65e7ea4a93e68b0da31f71ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 16:20:23 2012 +0100

    sysprep: Make a common Utils.compare_command_line_args function.
    
    This isn't quite code motion, since the new function also ignores case
    (which previously we didn't ignore).

commit 77ba955f5028a02888a60677d65fc928d00fc9ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 16:18:29 2012 +0100

    sysprep: Move skip_dashes function into Utils module.
    
    This is mostly code motion, but I also changed the function to use
    String.unsafe_get and raise Invalid_argument on failure.

commit 1382454339f33d0ceb2e702bf11e535121a03f4f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 16:14:57 2012 +0100

    sysprep: Add utils.mli (interface) file.

commit 0c61b57e78cae6ba857f7bc920caa1ebe10fa76c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 11 13:25:36 2012 +0100

    sysprep: Print some logging by default.
    
    It can be disabled using the --quiet option.
    
    The logging looks like:
    
    Examining the guest ...
    Performing "cron-spool" ...
    Performing "dhcp-client-state" ...
    Performing "dhcp-server-state" ...
    Performing "hostname" ...
    Performing "logfiles" ...
    Performing "mail-spool" ...
    Performing "net-hwaddr" ...
    Performing "random-seed" ...
    Performing "rhn-systemid" ...
    Performing "script" ...
    Performing "smolt-uuid" ...
    Performing "ssh-hostkeys" ...
    Performing "udev-persistent-net" ...
    Performing "utmp" ...
    Performing "yum-uuid" ...
    
    Reviewed-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 2e3296706fde9a9c1f100c4491b144a993792be0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 10 18:14:04 2012 +0100

    extra-tests: Disable valgrind vgdb.
    
    This leaves files called 'vgdb-pipe-*' in .

commit 8d0f7334096683a8076f71c993c7e9370d89e032
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 10 14:23:19 2012 +0100

    Version 1.17.27.

commit 0f91b716b0e0d1731b6183803e5e8e902cbbf730
Author: Qin Guan <qguan@redhat.com>
Date:   Tue Apr 10 14:14:21 2012 +0100

    sysprep: Allow hwaddr to be removed on other Red Hat derivatives (RHBZ#811117).

commit ab29fb101651dce63d3582d82a19e71c4b169172
Author: Qin Guan <qguan@redhat.com>
Date:   Tue Apr 10 14:13:40 2012 +0100

    sysprep: Allow hostname to be set on other Red Hat derivatives (RHBZ#811112).

commit f06251a7e2be8ef3ffeeeb51c3cbf7d4baea49fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 9 16:53:04 2012 +0100

    Use posix_fadvise when uploading or downloading files.
    
    But ignore it if the call fails, since the file descriptor could be a
    non-file (eg. /dev/stdout).

commit de3df9993bc3219d5234b5c0f59462638909618e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 9 15:53:19 2012 +0100

    Fix libguestfs-make-fixed-appliance --help option so it displays usage.
    
    Previously it printed 'Internal error!'

commit ac80965c790856d06d5005b983e3b7059ee2eaa3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 6 20:09:18 2012 +0100

    gobject: Remove guestfs-gobject.c from POTFILES.in.
    
    This file no longer exists after the sources were split across
    multiple files for the benefit of gtk-doc.

commit 9f7b00b07b5fc389fbd658344a44e7c307d3d343
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 6 18:49:45 2012 +0100

    tests: Fix guest building so parallel 'make -jN check' works.
    
    This means renaming various temporary files (eg. fstab.tmp) that
    several of the scripts were using so they don't conflict
    (eg. fstab.tmp.$$).
    
    Also the rule:
    
      fedora-md1.img fedora-md2.img: guest-aux/make-fedora-img.pl
    
    causes the script to run twice in parallel when using 'make -jN'.
    Replace this with a stamp file so it runs once:
    
      fedora-md1.img fedora-md2.img: stamp-fedora-md.img
      stamp-fedora-md.img: guest-aux/make-fedora-img.pl

commit 2d7539dfa9fd8c4c02896ccaeafd4ddc593ca6a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 6 18:48:58 2012 +0100

    tests: Don't print "4" when running make-windows-img.sh
    
    The return value of the pwrite-device command -- 4 (bytes) -- is
    printed out.  Hide it instead.

commit 711fdff642a2ccd390352c0c18fb52995d77de4c
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Apr 4 14:01:22 2012 +0100

    fuse: Add missing #include to guestmount.c
    
    Fix compilation failure on F17

commit dd022db6960b4d979274643e7302f61d95e99b2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 4 12:46:40 2012 +0100

    debian: Suggest 'apt-get build-dep' to install dependencies.

commit ca360f46d4ee598953e1e29f62e9e67be3ab6ec6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 3 23:10:05 2012 +0100

    Update RELEASE-NOTES file for future 1.18 release.

commit 95fbeb2a2f8bd746e76fc91c98245caf636afef0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 3 12:58:24 2012 +0100

    Version 1.17.26.

commit c0b61c2f65c350d9d2bac27e2749e0b42a24f116
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 3 10:52:27 2012 +0100

    parallel mount-local test: Don't run more than 12 threads.
    
    On the Koji builder that has lots of memory, this was trying to run
    something like 20 threads.

commit 002e548baa1620792e53b6132653c2380c431862
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 3 10:48:55 2012 +0100

    Use absolute paths where necessary in .gitignore file.

commit a58cd9dff913ce52fa4b7ceebe4c1a57b46b3af1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 3 10:24:23 2012 +0100

    inspection: Support Fedora 17+ (RHBZ#809361).
    
    Recognize grub2 as a bootloader, and /bin being a symlink to
    /usr/bin (ie. UsrMove feature added in Fedora 17+).

commit 7d5c211ad3376ad84310055fd23666d3858a0a02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 3 09:54:50 2012 +0100

    sysprep: Add GDM and session preferences to logfiles.

commit 8423989790c5464f73a6e1c6da722a7ebf85cc0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 3 09:47:18 2012 +0100

    sysprep: Remove installation logfiles in /root.

commit 371df0fd38096f2e7199b6591a10daa5f7502d3f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 3 09:43:12 2012 +0100

    sysprep: Include logfile glob list in the man page.

commit a4f62d07932b5e5992f3d3d892c72bba02beec90
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 2 19:09:52 2012 +0100

    Version 1.17.25.

commit 85ba1dc31f0f761825e04522e9b58ef067d836ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 2 10:12:38 2012 +0100

    New API: mkfs-btrfs for creating btrfs filesystems (RHBZ#807905).
    
    This allows all parameters from btrfs to be accessed.

commit 283ca99c5685cd6588d1546392f9c4dcaf6bded6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 2 08:46:23 2012 +0100

    mkfs: Don't allow blocksize to be set on btrfs (RHBZ#807905).

commit 1a1af01788b41314e97e7947bcf9f522a383158e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 21:55:09 2012 +0100

    extra-tests: Test virt-sysprep.

commit e337eef0115c8dadb60e89f14538e2833abb29ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 20:02:25 2012 +0100

    sysprep: Add a test of the --script option.

commit 02491e15ba27ced881ee4452837cf4c8b0f5f37f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 20:01:08 2012 +0100

    sysprep: Simplify and tidy up the test.

commit 282c99b79f55e27f56613a88c9412ebb1ef4030b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 20:00:36 2012 +0100

    sysprep: script: Documentation fix.

commit f23f3eed70d59b03eeb9c9203393e1e0b72ecfc3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 20:00:28 2012 +0100

    sysprep: script: Miscellaneous fixes and cleanups to shell script.

commit cb8dac84059f7a80654bb33b249d56a443f2630e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 20:00:06 2012 +0100

    sysprep: script: Wait for child process to exit.

commit 9754ee0daa12e8bf9b9063ddbbeed5142b19fa3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 19:59:32 2012 +0100

    sysprep: script: Remove useless check that script is executable.
    
    This check will fail if the script is on the path.  Also document
    that script must be on the path or else the full path to the script
    must be given.

commit 63bf80b5e5af3eef062e468ad7b5565fd10d1c41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 19:57:41 2012 +0100

    sysprep: Add some debug code when performing operations.

commit edf80a0feb45af7b5974c3dc8a4badf4b9efe27d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 16:06:54 2012 +0100

    Version 1.17.24.

commit 332fcc453716b5b2a400e0046a971c871bff9489
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 13:17:32 2012 +0100

    sysprep: Add more files to CLEANFILES.

commit 02217163d604ba6d91dcadfe7de60615e16a7030
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 13:15:56 2012 +0100

    sysprep: When generating man pages, use 'run' script.

commit 91e2bd53b4e8e6fb65871b49f62f46bd5d3e4c99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 1 09:28:24 2012 +0100

    Add po/remove-potcdate.sin to git and EXTRA_DIST.
    
    This file is produced by gettextize and required by 'make dist'.

commit 5a03ab559ceff1d31348acfac9aebc58f46e20e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 31 23:15:04 2012 +0100

    Version 1.17.23.

commit 580f76ae582e5a17fcafecb12429bdbc40571547
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 31 23:17:05 2012 +0100

    Ensure that SOURCES are always in EXTRA_DIST, even if OCaml not available.

commit 3664f3de58a74abe74378c4b673c950e95f46815
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 31 21:41:10 2012 +0100

    sysprep: Implement 'script' operation for running general scripts against the guest.

commit ad3ab07a3043268dd1197c21e3263e581529d470
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 31 11:44:00 2012 +0100

    Rewrite virt-sysprep.

commit 088e7b6040905b77a6103008e58eec504a798127
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 31 10:28:49 2012 +0100

    fish: Add a regression test for mount-local, mount-local-run commands.

commit 7021412251dcdf55b91e4bc3f4aeb365e1049968
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 30 18:42:02 2012 +0100

    Update translations from Transifex.

commit b3dafc434a3eca698b9fe56d239c96de79fdc307
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 30 18:27:26 2012 +0100

    Update API support.

commit 82c2e46f809a0e6fd3d7a1ac9aec17f9d18cc858
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 29 20:31:54 2012 +0100

    Version 1.17.22.

commit f40a4cc5a8211f48c9b517ab3cff2daeaa373a50
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 27 10:25:17 2012 +0100

    Add test of parallel mount-local calls.

commit c1fd0eab0a7756f68d7a3660bbc67289db4db841
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 08:44:41 2011 +0000

    New APIs: mount-local, mount-local-run, umount-local (FUSE support in the API).
    
    Add FUSE support directly to the API.  Instead of needing to use the
    external 'guestmount' command, you can mount the libguestfs filesystem
    space on a local mountpoint using an API call from any language.
    
    Note that although mount-local-run is marked as Cancellable, the
    current implementation does not support it, but it would be relatively
    simple to add it.

commit e201fadaf9868e2e1183897beca5d36b30a8ecd2
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Mar 29 13:40:49 2012 +0100

    gobject: Ignore generated guestfs-sections.txt

commit cf6d12d420e5cbaed2abb2dd6214fa15c4a7de48
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Mar 29 13:40:22 2012 +0100

    gobject: Add split-out files to POTFILES.in

commit c6705c8f47118faa7ae935f1bfdc2bbc3ca427cc
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Mar 29 13:33:26 2012 +0100

    test: Thread function is a candidate for attribute noreturn.
    
    The start_test_thread function never returns, it is always
    cancelled by the main thread.

commit c4bdea3a520af8d1dad23d251c8af3e381df5bc1
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Mar 29 09:29:47 2012 +0100

    Partially revert "generator: Fix unescaped '<' and '>' in api descriptions"
    
    Don't escape < and > in verbatim sections.
    
    This partially reverts commit 09a4e7664b59789f90b6674f640f9d688e4f8b43.

commit 822004ff72123face6105015d6ec4f85dc961c34
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Wed Mar 28 23:30:59 2012 +0200

    Fix out-of-tree build for GObject bindings
    
    guestfs-gobject.h (in the source directory) was not found.
    
    In file included from <stdin>:4:0:
    /path/to/libguestfs/gobject/guestfs-gobject.h:23:37: fatal error: guestfs-gobject-session.h: No such file or directory
    compilation terminated.
    Error while processing the source.
    make[2]: *** [Guestfs-1.0.gir] Error 1

commit 0176218af40bd8033199f7a35eff686b777cf929
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Mar 27 21:57:56 2012 +0200

    Fix out-of-tree build for Java bindings

commit 98119db2f6af147b8885f1e9575f2b4306213767
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Mar 27 21:57:22 2012 +0200

    Fix out-of-tree build for appliance

commit 29c49a1fdaa53775fe8528ee3f2b9dad8ea2f07e
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Mar 28 17:28:32 2012 +0100

    gobject: Remove gtk-doc from TODO

commit 3faaf33998f2d9ef1a8a07d1ae3d816ec72240d6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Mar 27 13:44:55 2012 +0100

    gobject: Split sources into 1 file per class
    
    This greatly improves the usability of the generated gtk-doc.
    
    Although there is a lot of churn in generator_gobject.ml, this is almost
    exclusively code motion.

commit 94a544cd7a72f876e368dca08881c53c6a1c8a4a
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Mar 27 10:01:01 2012 +0100

    gobject: Add gtk-doc for GuestfsSession and GuestfsSessionClass

commit af02bfa8e81570b52f85d257e02b6bccb73cb142
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Mar 27 09:50:42 2012 +0100

    gobject: Add gtk-doc field descriptions for generated structs

commit 9adeb0bad0f1259201a42304dec92c09ad6c3d41
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Mar 26 17:49:25 2012 +0100

    gobject: Add gtk-doc for optarg wrapper classes

commit 4dd8e2f0328ab14707d701f89ec669760844f12d
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Mar 26 17:22:27 2012 +0100

    gobject: Drop references to Guestfs::<foo> in comments

commit 11c3b7eeebb940e1be90fb0b048e64b173639f6d
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Mar 23 16:18:22 2012 +0000

    gobject: Handle various problem content in gtk-doc API descriptions
    
    Produce better gtk-doc for:
    * URLs
    * RHBZ# references
    * CVE references
    * API cross-references
    * Parameter references
    * Escaped characters

commit 9b7b9dfaaf6d951c63ef6bf598aef2e7829accc6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Mar 26 16:23:45 2012 +0100

    gobject: Add basic gtk-doc for all parameters

commit 9edf9be53f07437f5479885b99d067897711729c
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Mar 26 15:58:53 2012 +0100

    gobject: Add basic gtk-doc for properties

commit fbdcc197e24471ca0c5dbc8dc3a9ae01f518cad7
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Mar 26 15:58:25 2012 +0100

    gobject: gtk-doc SECTION must be named after a source file

commit 10589f6733f29eed8fdc50766d03db66a20fa8d4
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Mar 23 14:49:36 2012 +0000

    gobject: Include explicit types for all parameters

commit 82ac3b0ac7ee08ee46894a09336d75959424c387
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Mar 23 13:04:07 2012 +0000

    gobject: Add infrastructure to build gtk-doc

commit a7d74da0e8827a4c2da5efcac37acbfe1e682ffb
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 28 19:19:58 2012 +0100

    java: Delete target file before running javah.
    
    javah from old GNU classpath won't overwrite the target *.h file,
    instead leaving the old one which results in a predictable build
    failure.  Delete the target so this won't happen.

commit 43474a9621e10a4eb7f7fda76ed1766568ea5390
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 28 19:06:01 2012 +0100

    fish: Fix compilation when libconfig is not available.

commit 52b0e27bf58375a61462c78062b6ae559d80b6c0
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 28 19:02:58 2012 +0100

    Don't provoke -Wstrict-overflow warning from map_app_md_devices function.
    
    Unclear if this is a real bug or not.

commit 5648698e37000b64f9055734501c82398dce308b
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 28 19:01:56 2012 +0100

    Work around -Wstrict-overflow warning on gcc 4.5.1.

commit 01c328fbc27c3959f7c5cf0d438f2aa16ff2f5b2
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 28 18:55:38 2012 +0100

    m4: Update .gitignore for old Fedora.

commit e13c5b9611544b9c9aec4fe5b88d56b3d1ac7bb2
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 28 18:19:54 2012 +0100

    configure: Don't fail if GOBJECT_INTROSPECTION_CHECK is not defined.

commit f4e06ef0613d01f528ac528c492fb4bf3f7e2324
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 27 17:39:59 2012 +0100

    tests: Don't include internal guestfs header in tests.

commit 9626b84be3aaf345d14b5b478101eac61612a285
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 27 15:06:56 2012 +0100

    generator: Allow functions with no requires args, and with some optional args.
    
    Previously the generator disallowed such functions.

commit 0081d76516ce6d239aa7c11805646cf8f01d3ad8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 27 17:26:48 2012 +0100

    Ignore guestfs.pyo.
    
    This fixes commit e8ef35df267de6fd6308d0c49a6bdef41113cf19.

commit 4222f38c43634cbf64fefa031b9e661609d0257f
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Mar 23 12:53:31 2012 +0000

    Only ignore guestfs.* at the top level
    
    The guestfs.* rule appears to be for temporary appliance directories, which are
    only at the top level. It was matching more than that.

commit dd057cfa888576eed98cd8df98099e2495a3fa3b
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Mar 27 15:38:41 2012 +0100

    generator: Remove doc reference to non-existent guestfs_inotify_watch_all

commit f2e4598590e13c0a726e45e86cb37993aa706ea6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Mar 27 15:24:50 2012 +0100

    generator: Fix unescaped '<' and '>' in api descriptions

commit 12f6ecaec66834361fd3525e63de1f6499bdd34d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 26 18:28:00 2012 +0100

    fuse: Fix documentation for call to virt-filesystems.
    
    virt-filesystems requires -a/-d option.

commit 4a6b836a4fd372b4e56d78a69b38815532031833
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 25 19:35:43 2012 +0100

    df: Avoid a compilation error if libxml2 is not available.
    
    virt_df-domains.o: In function `add_domain':
    /home/feeliwood/Downloads/libguestfs-1.17.21/df/domains.c:274: undefined reference to `guestfs___for_each_disk'
    
    guestfs___for_each_disk is only available when libvirt _and_ libxml2
    dependencies are available at compile time.
    
    Thanks Tho Huynh.

commit a2cc9d4affb50c08052382f52617585bd359aafd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 25 19:20:07 2012 +0100

    Revert "ruby: Replace deprecated rdoc/task and rake/gempackagetask."
    
    This reverts commit fd7a5a8bbdc69b9d2a92f6d05ac555334d0516bf.
    
    This breaks Ruby 1.8.7 in Fedora 16.

commit e461b98b56920fb4055a4d8a075401487613a222
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 22 10:05:27 2012 +0000

    Remove references to obsolete directory appliance/debian.
    
    This directory has not existed for a long time.

commit 41a1a6e7197034b18baa8303e7e3b9b22a895500
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 22 10:00:26 2012 +0000

    Remove debian/ subdirectory.

commit cfbd693a7c7b15919b5ad0793d372055a63d786a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 21 12:34:01 2012 +0000

    Version 1.17.21.

commit d340db23dc314593a1bd70ed5111e3b3dc126043
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 21 10:55:23 2012 +0000

    filesystems: Implement parents of MD and VG devices (RHBZ#805070).

commit fbb5bbded138c89e3e5223417116ec68bb3f180a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 20 19:14:32 2012 +0000

    filesystems: Allow the parents column to contain multiple parents.
    
    A list of parents is passed for this column.
    
    This column is rendered as an (internally) comma-separated list.

commit c397b79c6503d3274475b00196ed2a70194d4780
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 20 17:17:02 2012 +0000

    New API: md-stat.
    
    This returns information about the underlying devices of an MD
    (software RAID) device.

commit 75e0abcc66f22d205b227b782b9a1c726374bb87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 20 17:14:56 2012 +0000

    generator: Generate a .gitignore file specifically for java structs.

commit 8d133d1707aee89258026254b12cc2e00a831c79
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 20 12:27:14 2012 +0000

    daemon: Set last errno to ENOTSUP when APIs are not available.

commit 361e9f8930040c26265726e4e86c9adf4dfa36ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 20 12:25:40 2012 +0000

    daemon: Add reply_with_error_errno function.
    
    This function allows you to pass an explicit errno back to the
    library.  reply_with_error is redefined as a macro that calls
    reply_with_error_errno with errno == 0.

commit b7d04a99cad53a39a39591ede0ee7db15d73ff38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 19 16:32:10 2012 +0000

    inspection: Set last errno to ENOTSUP when inspection APIs are not available.
    
    Previously there was no programmatic way to tell if inspection APIs
    were unavailable because they are not compiled in (because hivex isn't
    around).  This contrasts with daemon APIs where the availability is
    covered by the guestfs_available API.
    
    Change the inspection APIs so that when they are not available, the
    last errno is set to ENOTSUP.  (Note that ENOTSUP must be defined on
    all POSIX platforms).
    
    This allows programs to detect if they are using a version of
    libguestfs that was compiled without support for inspection, without
    having to parse error messages.

commit b16b2edbab695a5c54d382d10bd182e050f3956a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 20 09:11:16 2012 +0000

    todo: Document proposed attach-method fd:N

commit bb2423d444f6d216e53698001cf241b178b2b6d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 19 10:20:08 2012 +0000

    po-docs: Rename LINGUAS -> linguas (RHBZ#804464).

commit d16817b441d6f5f7165581b0f532605870cedbd4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 17 22:11:32 2012 +0000

    Make HTML from libguestfs-test-tool man page.

commit e7c973198a7884c6d228e9ffb781941cda879bcb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 17 20:39:54 2012 +0000

    Version 1.17.20.

commit 47dafc7a56e2cd28ea78a58396414dfd7c4cb338
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 17 14:36:28 2012 +0000

    New API: vgmeta: Download volume group metadata.

commit 7600bac5763e0c716e89371985f1487c05575a7e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 17 09:26:20 2012 +0000

    appliance: Add a tool to make fixed appliances.

commit ffb7146333adb77f28e23aa558774f043a956d57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 22:14:44 2012 +0000

    ruby: Replace deprecated rdoc/task and rake/gempackagetask.

commit 3379618dfd7ea6d7d3f823b85d9355322bef969e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 18:27:52 2012 +0000

    todo: Suggestion for virt-sysprep.

commit 625b5377226035aa71b30ed80d086047bd407466
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 15:18:48 2012 +0000

    Version 1.17.19.

commit 46dcf51a9c987da92dc5f9cc12ca9bac1fdebb34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 14:42:30 2012 +0000

    generator: Sort camel-case structs.

commit c9bad57cefb10b90ddd88a06fc35ae4e0468bb48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 13:28:13 2012 +0000

    New APIs: isoinfo and isoinfo-device.
    
    Get ISO primary volume descriptor information for either ISO devices
    or ISO files.

commit 980585e8249b25146b6c2f438dabc027299f7261
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 11:05:42 2012 +0000

    appliance: Include genisoimage in the appliance.
    
    This is mainly useful for the 'isoinfo' tool, but 'genisoimage'
    itself may be interesting to have in future.

commit 9a3bd5a3aa893d100165a4b79a2224f365963e60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 14:10:40 2012 +0000

    generator: Fix CompareWithString test.
    
    This type of test was not used, and in fact the generated test
    simply didn't work.

commit 7de39e335abe67dd001dfe851e946366157fe316
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 14:10:00 2012 +0000

    generator: Fix FUInt{32,64} struct field types.
    
    We were not using an unsigned type in the XDR.  This doesn't
    affect data integrity or the protocol, but it makes it more
    complicated for the daemon to set these fields.

commit b09f8237f8b634a80cf0d9010f775fc18bfb0c7b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 12:40:16 2012 +0000

    daemon: Don't call reply_with_* after split_lines fails.
    
    split_lines already sets reply_with_*, so calling it again would lose
    protocol synchronization.

commit 390dce6807c7c48ee4268ecc9c5c9f1fc6732014
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 10:44:04 2012 +0000

    inspect: Fedora/RHEL CDs are multipart if totaldiscs > 1, not > 0.

commit 7f92d51e57fd3e2ed58d4eff9ccaaa531f140aee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 10:43:40 2012 +0000

    inspect: Parse isolinux menu title from RHEL 6.2 Live CD.

commit c649d938a9b3fa9eb92a36eb5b0fc6bd7b42f78d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 16 10:42:46 2012 +0000

    inspect: Add comment documenting findings of RHEL 5, 6 install CDs.

commit 7880f6678c8f2afce98a41ebd1bdcb5ff1276e3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 16:45:37 2012 +0000

    Version 1.17.18.

commit f039944701f37d61f30df9f70e72930073161ae5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 10:50:52 2012 +0000

    todo: Document further virt-sparsify improvements.

commit 7e57a159629dda12e62b16fd5df9fc06e1c9cb15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 16:07:08 2012 +0000

    sparsify: Implement --zero option.
    
    This unconditionally zeroes the named partition or filesystem.

commit 77033a4b314abcfff49f334775778ef64e1ffe72
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 16:01:51 2012 +0000

    sparsify: Add a note about encrypted disks to the man page.

commit 5370505dc6346e99b5651948ac3c54903d70f657
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 15:49:22 2012 +0000

    sparsify: Unlink temporary overlay file if user presses ^C.
    
    Add a signal handler so this potentially large temporary file
    is removed when the user hits ^C.

commit d13d587bb57cfa129b113a99b2e5e9ff0f381049
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 15:25:06 2012 +0000

    sparsify: Support sparsifying Linux swap partitions.

commit dddf261d02a738a9364d5370f8a946215661b7d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 10:32:27 2012 +0000

    sparsify: Use zero-device instead of dd if=/dev/zero to zero device.
    
    zero-device is more efficient in general, and avoids writing to blocks
    which are already zero.

commit cb3e587aa20a0e90b7520ee068ae971452a1f039
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 10:30:21 2012 +0000

    Use the new lvcreate-free API to create largest possible LVs.

commit 442ca506a70f003fc01ac08413877732d496ff4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 10:25:26 2012 +0000

    New API: lvcreate-free: Create logical volume as % of free space.

commit 70dd36afffe95d3aff59dc42602176cbf413bc4c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 10:07:26 2012 +0000

    sparsify: Use new zero_free_space API.

commit ce91cccf4ee727c487d84863bff045b62d0f65c1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 09:43:04 2012 +0000

    New API: zero_free_space: zero free space in a filesystem.
    
    Add an API for doing what virt-sparsify was doing: freeing up free
    space in a filesystem.
    
    The current implementation is simple-minded: we create a file, fill it
    with zeroes until we run out of space, then delete the file.  However
    the description leaves it open to do a better implementation, eg.
    using sparsification support that is currently being worked on in ext4
    and qemu.
    
    The implementation also sends progress notifications, which is an
    advantage over the old 'dd' method.

commit 4b54fdcb6c40cdcb776e3af68048bb0f8e53003b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 16:07:28 2012 +0000

    sparsify: Only print qemu-img command if verbose.

commit c50cf495577efbdc8d29e2b96d63bc393f3a4374
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 15 13:53:32 2012 +0000

    inspect: Ignore missing HKLM\SYSTEM\MountedDevices (RHBZ#803664).
    
    When a Windows guest doesn't have a HKLM\SYSTEM\MountedDevices node,
    inspection fails.  However inspection should not completely fail just
    because we cannot get the drive letter mapping from a guest.

commit e137ef5f62ad2cd404bcbae54f928c2006475deb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 23:06:44 2012 +0000

    inspector: Update man page to describe how to access inspection info from other languages and guestfish.

commit 3705667e9e2ad179d694f557ed4866c4870be791
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 21:13:43 2012 +0000

    Add guestfsd.suppressions file to EXTRA_DIST.

commit f62dbce29deddf4132ba8eff08956174e61b6550
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 19:57:36 2012 +0000

    Version 1.17.17.

commit ea4505f6b4f2a0def67c543499d870998d5e993e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 19:30:46 2012 +0000

    Use O_CLOEXEC / SOCK_CLOEXEC for almost all file descriptors.
    
    The presumption is that all file descriptors should be created with
    the close-on-exec flag set.  The only exception are file descriptors
    that we want passed through to exec'd subprocesses (mainly pipes and
    stdin/stdout/stderr).
    
    For open calls, we pass O_CLOEXEC as an extra flag, eg:
    
      fd = open ("foo", O_RDONLY|O_CLOEXEC);
    
    This is a Linux-ism, but using a macro we can easily make it portable.
    
    For sockets, similarly:
    
      sock = socket (..., SOCK_STREAM|SOCK_CLOEXEC, ...);
    
    For accepted sockets, we use the Linux accept4 system call which
    allows flags to be supplied, but we use the Gnulib 'accept4' module to
    make this portable.
    
    For dup, dup2, we use the Linux dup3 system call, and the Gnulib
    modules 'dup3' and 'cloexec'.

commit 2b2886e669858790d714a1a94279c75a04046869
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 19:29:52 2012 +0000

    java: Make sure generator is rerun when necessary to rebuild generated files.

commit bf9a7f56f4667a792ffcdccabfdf61421d001b2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 19:29:11 2012 +0000

    java: Enable -Xlint:all and fix all warnings.

commit d7637ef448dda83e24a292b0e92241ca09f0af3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 19:28:13 2012 +0000

    todo: More ongoing code cleanups.

commit b58bb50051ec9d7ec30b78ff39a626c1207fa70f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 16:13:40 2012 +0000

    appliance: Enhance --enable-valgrind-daemon with a suppressions file.
    
    This lets us suppress errors in system libraries.

commit 91c1f7c36bdeeeda3c03edeb5947e317af1913c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 16:12:54 2012 +0000

    daemon: When copy subprocess fails, print return code.
    
    Useful for debugging.

commit ffb741edbe82134cb9601d5c8fb91b8996da5361
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 12:53:37 2012 +0000

    todo: Document ongoing code cleanups.

commit 7951537dc4cb655b574ae3a693afc491156bfdba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 14 12:52:55 2012 +0000

    daemon: labels: Memory leak in 'set_label'.
    
    This fixes commit d1711dae9dbd7f516469f88807604894c1304228.

commit d62f63026c4dac18453bc5c738868dc741deae68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 13 08:45:49 2012 +0000

    Version 1.17.16.

commit 14e350444cb7082e97080ded2704190c987fea7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 13 08:23:56 2012 +0000

    Replace 'int' with 'size_t' passim.
    
    Analyze all uses of 'int' in the code, and replace with 'size_t' where
    appropriate.

commit 8d8030c18ad2f7c06ec6c06b2e4c2f6f536b4335
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 13 08:19:11 2012 +0000

    daemon: Implement a growable strings buffer type.
    
    Previously a lot of daemon code used three variables (a string list,
    'int size' and 'int alloc') to track growable strings buffers.  This
    commit implements a simple struct containing the same variables, but
    using size_t instead of int:
    
      struct stringsbuf {
        char **argv;
        size_t size;
        size_t alloc;
      };
    
    Use it like this:
    
      DECLARE_STRINGSBUF (ret);
    //...
      if (add_string (&ret, str) == -1)
        return NULL;
    //...
      if (end_stringsbuf (&ret) == -1)
        return NULL;
      return ret.argv;

commit 7bf1ff40361d00e7a67f4124289886033e0fe8db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 16:27:10 2012 +0000

    Fix strict-overflow bugs and reenable this warning.
    
    In two places, we were counting things in an array using an 'int'.  In
    theory, the int could overflow, so gcc determines this to be undefined
    behaviour.
    
    The fix is to use size_t or ssize_t instead.

commit ae61b0bde7045354d7334f68188c44a13291f4d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 15:14:54 2012 +0000

    fish: remote: Output from close event now passed over stdout (RHBZ#802389).

commit a38909601e9fb88b510d378d4d48149808186e00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 15:13:29 2012 +0000

    fish: remote: Make sure global cleanups are called for guestfish --listen.
    
    Return to the main program ('fish.c') and perform global cleanups when
    the guestfish remote server exits.

commit 76332c60771f142eb3eda350e82efe42f67a3f34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 15:11:33 2012 +0000

    fish: remote: Move close_stdout just before accept() call.
    
    This is just code motion.

commit 08ec3f8cd8f98ec0b255d0f18af55dfd601009f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 15:09:15 2012 +0000

    fish: Rename tests and make test paths relative.
    
    When these tests were originally in the old regressions/ directory,
    they used to refer to guestfish via the path '../fish/guestfish'.
    Some of the tests were also called 'test-guestfish-*'.
    
    Now that the tests have been moved into the fish/ directory, neither
    of these things make sense.  So change the relative path to
    './guestfish' and rename all 'test-guestfish-*' as 'test-*'.

commit 357d362982461e72fb981e8b8752796dfcef88ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 14:10:05 2012 +0000

    tests: Remove/fix unused variables warnings.

commit b7b15852531edc1a2cd40132c16267d2f15acd0a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 12:04:46 2012 +0000

    Version 1.17.15.

commit ef27f360bf6806b905301e5ad2799152cbb5cf52
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 12:19:59 2012 +0000

    tests: Remove unused variable.

commit 9c80db6aeb41eb1510665829f38a570f6224430a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:22:40 2012 +0000

    configure: Enable more warnings, and some cleanup.
    
    However -Wstrict-overflow is still disabled, see:
    http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52560

commit 2792cff897cf73d08e0cddc7b39e65289bb42283
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:47:21 2012 +0000

    erlang: Remove unused variables.

commit 52826713bdf2ef9fe9fdf2581dcc0140b8612cb3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:47:09 2012 +0000

    format: Remove unused variables.

commit eb0207b2375770b16bef80154325ceec2377f0b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:46:49 2012 +0000

    daemon: Remove unused variables.

commit 754459d209a5d1b3f98db55dd82b7b50e9286cbb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:29:06 2012 +0000

    inspect: Move variable decl to top of function.

commit a9bf717569133b250f9af6604472ef906f37a5f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:27:32 2012 +0000

    inspect: Use 1/0 instead of true/false, and fix a bug in UUID parsing.
    
    UUID parsing returned 'false' (ie. 0 == OK) when the UUID contained
    illegal characters.  Now it returns -1 == failure.

commit ee9290409fda10f66aea98089b2d0a1c00df42ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:26:55 2012 +0000

    lib: Remove some unused variables.

commit 64f4bc184693cb7cd9b5c2f8bd8cc47345002964
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:26:29 2012 +0000

    lib: Use size_t instead of int for array iterator.

commit f69f3ca1b736f7c9fb26b3aaf229e427bd5864b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:25:13 2012 +0000

    inspect: Use uint64_t for maximum file size in bytes.

commit 540c0c3d0969aee968d30be510052318eb4eed93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:24:51 2012 +0000

    lib: Use size_t for allocation size in safe realloc function.

commit 0c723d25d6b4d18c6cbd3917e8344b1c222a18f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 12 11:23:57 2012 +0000

    bindtests: Use size_t instead of int for array iterators.

commit 71345012d8616acd867161cfe38a1504187f7230
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 11 20:12:41 2012 +0000

    Coalesce printable characters in debug and trace messages (RHBZ#802109).

commit f13cbc24370739a750b6368b152320990063e1fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 9 17:26:19 2012 +0000

    Document error message from resize2fs (RHBZ#755729, RHBZ#801640).

commit 9483a9cbccea661d9a80932fb9589eabba26a7d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 9 16:53:02 2012 +0000

    resize2fs: Run 'e2fsck -f' automatically if filesystem is not mounted.

commit a214a4bacac8d58782f626fb02dd28d46b8f3453
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 9 16:52:28 2012 +0000

    e2fsck: Comment, whitespace, error message cleanups.

commit 523d377030a8d614b292345623133b4455f8c836
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 9 16:15:41 2012 +0000

    Mark e2fsck-f as deprecated, replaced by e2fsck API.

commit d234940483cf808ef2f134b420c6e841f99e33d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 9 16:13:49 2012 +0000

    Revert "ext2: tweak the error returned message of resize2fs-M(BZ755729)"
    
    This reverts commit 0eaf06e673833bc25673d5c3d2487fffae310285.

commit 2dafa18649e4d0143679704f9e86dcb34777c605
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 9 16:01:17 2012 +0000

    Version 1.17.14.

commit f0effd05a0a388b1073962849cdb62b9ea915d36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 9 10:37:06 2012 +0000

    example: Copying a directory between two guests using threads.

commit ff9fa33e9c5137eeed3b2022375b14ce9a398d2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 9 12:05:43 2012 +0000

    Close all file descriptors and remove all signal handlers in the recovery process.
    
    If the parent process uses a pipe (or any fd, but pipes are a
    particular problem), then the recovery process would hold open the
    file descriptor(s) of the pipe, meaning that it could not be fully
    closed in the parent.  Because the recovery process doesn't use
    exec(2), this wasn't avoidable even using FD_CLOEXEC.
    
    Avoid this by closing all file descriptors when starting the recovery
    process.
    
    After discussion with Dan Berrange, he points out that it's also a
    good idea to set signal handlers to the default after forking, so that
    any signal handlers set up in the parent don't affect the child.

commit 0a1c6ce01d160391fc3894b104b2ac8cbe16980b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 19:27:37 2012 +0000

    extra-tests: Export LIBVIRT_DEFAULT_URI to pick-guests.pl.
    
    This fixes commit 2912e4e1173226f461517a0008664e01b5d3066d.

commit 5933bf1f0fd2e26ec375103e314a5168b7377866
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 17:39:11 2012 +0000

    Version 1.17.13.

commit b1cb721e450dcb26856df525d166cce4f93f145a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 16:19:20 2012 +0000

    extra-tests: Check that guests are accessible before picking them.

commit ae4b7156f7d55d0e4179aca81fae385cc999f100
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 15:01:55 2012 +0000

    fish: Document that guestfish sets pgroup to true (RHBZ#801273).

commit 16dbf75b3122f9a4201d3d2284d3a4a5e1459637
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 14:49:23 2012 +0000

    inspect_apps: Avoid double-close on error path (found by Coverity) (RHBZ#801298).
    
    Error: USE_AFTER_FREE:
    /builddir/build/BUILD/libguestfs-1.16.5/src/inspect_apps.c:392: freed_arg: "fclose" frees "fp".
    /builddir/build/BUILD/libguestfs-1.16.5/src/inspect_apps.c:404: deref_arg: Calling "fclose" dereferences freed pointer "fp".

commit 76c7fbacdd13ec0929f7b880677571feb7f4380c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 14:36:25 2012 +0000

    dbdump: Avoid double-close on error path (found by Coverity).
    
    Error: USE_AFTER_FREE:
    /builddir/build/BUILD/libguestfs-1.16.5/src/dbdump.c:132: freed_arg: "pclose" frees "pp".
    /builddir/build/BUILD/libguestfs-1.16.5/src/dbdump.c:142: deref_arg: Calling "pclose" dereferences freed pointer "pp".

commit b18ddd00ee32af941032e8914398640f266b4050
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 14:30:10 2012 +0000

    daemon: glob: Initialize glob buffer (quiet Coverity warning).
    
    Error: UNINIT:
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/glob.c:32: var_decl: Declaring variable "buf" without initializer.
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/glob.c:36: uninit_use_in_call: Using uninitialized value "buf.gl_offs" when calling "rpl_glob".
    /builddir/build/BUILD/libguestfs-1.16.5/gnulib/lib/glob.c:557: read_parm_fld: Reading a parameter field.
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/glob.c:36: uninit_use_in_call: Using uninitialized value "buf.gl_pathc" when calling "rpl_glob".
    /builddir/build/BUILD/libguestfs-1.16.5/gnulib/lib/glob.c:557: read_parm_fld: Reading a parameter field.

commit 71efd8164f1a5327f71c1c42e8fab162ac27eecf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 14:11:18 2012 +0000

    comment: Note time-of-check to time-of-use race found by Coverity.

commit 28973afe259cfa1ea9331d6be15b3ac9d8c98415
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 13:53:04 2012 +0000

    daemon: inotify: Check event->len in inotify struct is reasonable.
    
    The Coverity error is this (which I think is wrong):
    
    Error: TAINTED_SCALAR:
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/inotify.c:211: tainted_data_argument: Calling function "read" taints argument "inotify_buf".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/inotify.c:232: var_assign_var: Assigning: "event" = "(struct inotify_event *)&inotify_buf[n]". Both are now tainted.
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/inotify.c:258: lower_bounds: Checking lower bounds of unsigned scalar "event->len" by "event->len > 0U".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/inotify.c:272: var_assign_var: Compound assignment involving tainted variable "16UL + event->len" to variable "n" taints "n".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/inotify.c:228: lower_bounds: Checking lower bounds of unsigned scalar "n" by "n < inotify_posn".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/inotify.c:281: tainted_data: Using tainted variable "n" as an index into an array "inotify_buf".
    
    Adding a sanity check of event->len is prudent.

commit ecf9809eb3cd75fa9ea335754bb27eb496adb3c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 13:23:15 2012 +0000

    daemon: debug: Close fd along error path (found by Coverity).
    
    Error: RESOURCE_LEAK:
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/debug.c:469: open_fn: Calling opening function "open".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/debug.c:469: var_assign: Assigning: "fd" =  handle returned from "open("/proc/sys/kernel/core_pattern", 1)".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/debug.c:474: noescape: Variable "fd" is not closed or saved in function "write".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/debug.c:476: leaked_handle: Handle variable "fd" going out of scope leaks the handle.

commit 31ebdd96d74f03d0a6221ea6612458748cf00681
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 12:21:09 2012 +0000

    fish: Properly free up strings, lists along all error paths (found by Coverity).
    
    This also includes some tidying up of the generated code.
    
    Error: RESOURCE_LEAK:
    /builddir/build/BUILD/libguestfs-1.16.5/fish/cmds.c:13254: alloc_fn: Calling allocation function "parse_string_list".
    /builddir/build/BUILD/libguestfs-1.16.5/fish/fish.c:1386: alloc_fn: Storage is returned from allocation function "realloc".
    /builddir/build/BUILD/libguestfs-1.16.5/fish/fish.c:1386: var_assign: Assigning: "argv_new" = "realloc(argv, 8UL * argv_len)".
    /builddir/build/BUILD/libguestfs-1.16.5/fish/fish.c:1392: var_assign: Assigning: "argv" = "argv_new".
    /builddir/build/BUILD/libguestfs-1.16.5/fish/fish.c:1396: return_alloc: Returning allocated memory "argv".
    /builddir/build/BUILD/libguestfs-1.16.5/fish/cmds.c:13254: var_assign: Assigning: "devices" =  storage returned from "parse_string_list(argv[i++])".
    /builddir/build/BUILD/libguestfs-1.16.5/fish/cmds.c:13271: leaked_storage: Variable "devices" going out of scope leaks the storage it points to.
    /builddir/build/BUILD/libguestfs-1.16.5/fish/cmds.c:13288: leaked_storage: Variable "devices" going out of scope leaks the storage it points to.
    /builddir/build/BUILD/libguestfs-1.16.5/fish/cmds.c:13293: leaked_storage: Variable "devices" going out of scope leaks the storage it points to.
    /builddir/build/BUILD/libguestfs-1.16.5/fish/cmds.c:13311: leaked_storage: Variable "devices" going out of scope leaks the storage it points to.
    /builddir/build/BUILD/libguestfs-1.16.5/fish/cmds.c:13316: leaked_storage: Variable "devices" going out of scope leaks the storage it points to.
    /builddir/build/BUILD/libguestfs-1.16.5/fish/cmds.c:13334: leaked_storage: Variable "devices" going out of scope leaks the storage it points to.
    /builddir/build/BUILD/libguestfs-1.16.5/fish/cmds.c:13349: leaked_storage: Variable "devices" going out of scope leaks the storage it points to.
    /builddir/build/BUILD/libguestfs-1.16.5/fish/cmds.c:13355: leaked_storage: Variable "devices" going out of scope leaks the storage it points to.

commit 14969aacd72dd563cb863428627b4e76f0e913d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 11:44:31 2012 +0000

    daemon: proto: Close fd along error paths (found by Coverity).
    
    Error: RESOURCE_LEAK:
    /builddir/build/BUILD/libguestfs-1.16.5/src/proto.c:894: open_fn: Calling opening function "open".
    /builddir/build/BUILD/libguestfs-1.16.5/src/proto.c:894: var_assign: Assigning: "fd" =  handle returned from "open(filename, 0)".
    /builddir/build/BUILD/libguestfs-1.16.5/src/proto.c:903: noescape: Variable "fd" is not closed or saved in function "read".
    /builddir/build/BUILD/libguestfs-1.16.5/src/proto.c:911: leaked_handle: Handle variable "fd" going out of scope leaks the handle.
    /builddir/build/BUILD/libguestfs-1.16.5/src/proto.c:918: leaked_handle: Handle variable "fd" going out of scope leaks the handle.

commit d588f4884487e6ae013604d11b5d3a9218e639d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 11:41:13 2012 +0000

    daemon: upload: Close fd along error path (found by Coverity).
    
    Error: RESOURCE_LEAK:
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/upload.c:225: open_fn: Calling opening function "open".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/upload.c:225: var_assign: Assigning: "fd" =  handle returned from "open(filename, 0)".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/upload.c:233: noescape: Variable "fd" is not closed or saved in function "lseek".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/upload.c:235: leaked_handle: Handle variable "fd" going out of scope leaks the handle.

commit 0e6024100a3ea19cd30293c9a2132c2950f375f8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 11:39:50 2012 +0000

    daemon: 9p: Close fd along error paths (found by Coverity).
    
    Error: RESOURCE_LEAK:
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/9p.c:130: open_fn: Calling opening function "open".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/9p.c:130: var_assign: Assigning: "fd" =  handle returned from "open(filename, 0)".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/9p.c:142: leaked_handle: Handle variable "fd" going out of scope leaks the handle.
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/9p.c:149: noescape: Variable "fd" is not closed or saved in function "read".
    /builddir/build/BUILD/libguestfs-1.16.5/daemon/9p.c:153: leaked_handle: Handle variable "fd" going out of scope leaks the handle.

commit eee34bfc8a85a7229f331ed2798d0917b05ff3a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 11:32:43 2012 +0000

    proto: Close file along error and cancel paths (found by Coverity).
    
    Error: RESOURCE_LEAK:
    /builddir/build/BUILD/libguestfs-1.16.5/src/proto.c:1125: open_fn: Calling opening function "open".
    /builddir/build/BUILD/libguestfs-1.16.5/src/proto.c:1125: var_assign: Assigning: "fd" =  handle returned from "open(filename, 833, 438)".
    /builddir/build/BUILD/libguestfs-1.16.5/src/proto.c:1133: noescape: Variable "fd" is not closed or saved in function "xwrite".
    /builddir/build/BUILD/libguestfs-1.16.5/src/proto.c:1146: leaked_handle: Handle variable "fd" going out of scope leaks the handle.
    /builddir/build/BUILD/libguestfs-1.16.5/src/proto.c:1173: leaked_handle: Handle variable "fd" going out of scope leaks the handle.

commit 3bfd85b83b634adb02958c2857ae2331f512fef1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 11:17:27 2012 +0000

    Check return values of guestfs_inspect_get_{type,distro} (found by Coverity).
    
    Error: NULL_RETURNS:
    /builddir/build/BUILD/libguestfs-1.16.5/examples/virt-dhcp-address.c:129: var_assigned: Assigning: "guest_distro" = null return value from "guestfs_inspect_get_distro".
    /builddir/build/BUILD/libguestfs-1.16.5/examples/virt-dhcp-address.c:131: dereference: Dereferencing a pointer that might be null "guest_distro" when calling "__coverity_strcmp".
    [...]
    /builddir/build/BUILD/libguestfs-1.16.5/examples/virt-dhcp-address.c:126: var_assigned: Assigning: "guest_type" = null return value from "guestfs_inspect_get_type".
    /builddir/build/BUILD/libguestfs-1.16.5/examples/virt-dhcp-address.c:128: dereference: Dereferencing a pointer that might be null "guest_type" when calling "__coverity_strcmp".

commit 3ac8e33edfe79c10680135caa2442a3078b83781
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 11:06:46 2012 +0000

    Check return values from calloc (found by Coverity).
    
    Error: NULL_RETURNS:
    /builddir/build/BUILD/libguestfs-1.16.5/src/inspect.c:417: returned_null: Function "calloc" returns null (checked 67 out of 81 times).
    /builddir/build/BUILD/libguestfs-1.16.5/src/inspect.c:417: var_assigned: Assigning: "ret" = null return value from "calloc".
    /builddir/build/BUILD/libguestfs-1.16.5/src/inspect.c:418: dereference: Dereferencing a null pointer "ret".
    [...]
    /builddir/build/BUILD/libguestfs-1.16.5/src/inspect.c:374: returned_null: Function "calloc" returns null (checked 67 out of 81 times).
    /builddir/build/BUILD/libguestfs-1.16.5/src/inspect.c:374: var_assigned: Assigning: "ret" = null return value from "calloc".
    /builddir/build/BUILD/libguestfs-1.16.5/src/inspect.c:375: dereference: Dereferencing a null pointer "ret".

commit 1510a54b2608782c131d3ca2eca1c822fdf25b4a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 10:53:59 2012 +0000

    Dead code: Remove comma-check in first if-clause (found by Coverity).
    
    Error: DEADCODE:
    /builddir/build/BUILD/libguestfs-1.16.5/fish/event-names.c:65: dead_error_condition: On this path, the condition "comma" cannot be true.
    /builddir/build/BUILD/libguestfs-1.16.5/fish/event-names.c:57: const: After this line, the value of "comma" is equal to 0.
    /builddir/build/BUILD/libguestfs-1.16.5/fish/event-names.c:57: assignment: Assigning: "comma" = "0".
    /builddir/build/BUILD/libguestfs-1.16.5/fish/event-names.c:65: dead_error_line: Execution cannot reach this statement "fputc(44, fp);".

commit 99027c0775b86cde2e828a3dd8200fa56fd11020
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 10:51:02 2012 +0000

    Dead code: 'lvs' cannot be true here (found by Coverity).
    
    Remove dead code; however only comment it out since if we change the
    preceeding code we may need this line again.
    
    Error: DEADCODE:
    /builddir/build/BUILD/libguestfs-1.16.5/src/listfs.c:107: dead_error_condition: On this path, the condition "lvs" cannot be true.
    /builddir/build/BUILD/libguestfs-1.16.5/src/listfs.c:54: const: After this line, the value of "lvs" is equal to 0.
    /builddir/build/BUILD/libguestfs-1.16.5/src/listfs.c:91: const: After this line, the value of "lvs" is equal to 0.
    /builddir/build/BUILD/libguestfs-1.16.5/src/listfs.c:54: assignment: Assigning: "lvs" = "NULL".
    /builddir/build/BUILD/libguestfs-1.16.5/src/listfs.c:91: new_values: Noticing condition "lvs == NULL".
    /builddir/build/BUILD/libguestfs-1.16.5/src/listfs.c:107: dead_error_line: Execution cannot reach this statement "guestfs___free_string_list(...".

commit 422c50a6f595381c1d7dbbe7cadaa9735a13f971
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 10:48:21 2012 +0000

    Ignore return values from some functions in guestfs_close (Coverity warning).
    
    Error: CHECKED_RETURN:
    /builddir/build/BUILD/libguestfs-1.16.5/java/com_redhat_et_libguestfs_GuestFS.c:9552: example_assign: Assigning: "r" = return value from "guestfs_internal_autosync(g)".
    /builddir/build/BUILD/libguestfs-1.16.5/java/com_redhat_et_libguestfs_GuestFS.c:9555: example_checked: "r" has its value checked in "r == -1".
    /builddir/build/BUILD/libguestfs-1.16.5/ocaml/guestfs_c_actions.c:5584: example_assign: Assigning: "r" = return value from "guestfs_internal_autosync(g)".
    /builddir/build/BUILD/libguestfs-1.16.5/ocaml/guestfs_c_actions.c:5586: example_checked: "r" has its value checked in "r == -1".
    /builddir/build/BUILD/libguestfs-1.16.5/perl/Guestfs.xs:5990: example_assign: Assigning: "r" = return value from "guestfs_internal_autosync(g)".
    /builddir/build/BUILD/libguestfs-1.16.5/perl/Guestfs.xs:5991: example_checked: "r" has its value checked in "r == -1".
    /builddir/build/BUILD/libguestfs-1.16.5/python/guestfs-py.c:13702: example_assign: Assigning: "r" = return value from "guestfs_internal_autosync(g)".
    /builddir/build/BUILD/libguestfs-1.16.5/python/guestfs-py.c:13707: example_checked: "r" has its value checked in "r == -1".
    /builddir/build/BUILD/libguestfs-1.16.5/ruby/ext/guestfs/_guestfs.c:16000: example_assign: Assigning: "r" = return value from "guestfs_internal_autosync(g)".
    /builddir/build/BUILD/libguestfs-1.16.5/ruby/ext/guestfs/_guestfs.c:16001: example_checked: "r" has its value checked in "r == -1".
    /builddir/build/BUILD/libguestfs-1.16.5/src/guestfs.c:191: check_return: Calling function "guestfs_internal_autosync" without checking return value (as is done elsewhere 5 out of 6 times).
    /builddir/build/BUILD/libguestfs-1.16.5/src/guestfs.c:191: unchecked_value: No check of the return value of "guestfs_internal_autosync(g)".

commit 3121509f35f4dc078666c4fcf15ce4b86e775817
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 13:13:24 2012 +0000

    tests/md: Number the errors so we can easily see which test fails.

commit 39c634336ce4698f9efce8ff3c90153234286ca7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 8 10:46:13 2012 +0000

    Update translations from Transifex.

commit 67d44a7b9a846702efb10011329a27f7be24fcab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 22:32:14 2012 +0000

    Update API support.

commit ab93dae33de8de428a360130a80c634acb5a79c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 19:21:14 2012 +0000

    dist: Distribute all tests, even when configured with --disable-appliance.

commit 1b3e65b222a81db81c9ded87a16fb59dea021107
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 17:36:48 2012 +0000

    Version 1.17.12.

commit 478fef885e5672bf65c6e3bee366283c0ed4cf4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 18:11:08 2012 +0000

    inspection: Add detection of FreeDOS install CDs (RHBZ#786188).

commit cd09f1977e7299a26e546adc26a0b3770893ea8f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 18:09:59 2012 +0000

    inspection: Add detection of FreeDOS (RHBZ#786215).
    
    FreeDOS is returned as type="dos", distro="freedos".  No version or
    application information is returned at present.

commit 0aeecc442b1406ec92a578e23cdbefdc1eb1b052
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 17:30:48 2012 +0000

    Add 'display_icon' example program.
    
    Running this on a disk image displays the guest icon
    (using external 'display' program).

commit d976fba3b3dd9ad43967262ba76ddcfe9680d9fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 17:30:17 2012 +0000

    Comment change.

commit 46202b1657141e0841b11dc504c4b538c414114a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 17:29:38 2012 +0000

    Hide stderr of bmptopng.
    
    This program is noisy on stderr.  Send that to /dev/null.

commit 052f0133aa724850c4521c453d81fbe486261c67
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 15:07:37 2012 +0000

    build: Make netpbm and icoutils into proper optional dependencies.
    
    Netpbm and icoutils (wrestool) have always been dependencies.  Since
    they are not always present, make these into optional dependencies
    (which they were, sort of, before).
    
    Also document these dependencies in the README file.

commit 47c9e3224a1a443dd4190597d807c5d804a4bf71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 14:11:53 2012 +0000

    Add support for Buildroot and Cirros distributions.

commit 33ff28a07de6aa75e31601ad11fe8e6f25ebff06
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 7 14:11:38 2012 +0000

    Whitespace change.

commit 3b9a2523fe3ae08a4d05359131f1df984e3778cf
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Mar 6 14:48:41 2012 +0000

    gobject: Update TODO with details of inspect_get_type fix

commit a2315eac422a2cb4ed4d1f240eaea18c2390b85c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 5 09:36:34 2012 +0000

    Version 1.17.11.

commit 2dfc3d671f4cd5783424de2ec7c32362cf5412c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 5 08:58:00 2012 +0000

    Remove ConfigOnly flag from set-autosync.
    
    guestfs_set_autosync sets a flag which affects guestfs_close, and so
    this call can be made at any time before the handle is closed, not
    just in the config state.

commit 9f8678e6a784a14cd9614b01157bae04b4c0c098
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Mar 4 14:41:37 2012 +0000

    Test header file under C++.

commit a38be3731a636657693680ed31a9d896862a525c
Author: Marcin Gibula <m.gibula@e24cloud.com>
Date:   Sun Mar 4 11:54:19 2012 +0000

    Make "template" a reserved word.
    
    Function guestfs_mkdtemp uses c++ keyword "template" as a parameter
    name. In result, attempt to use guestfs.h header in c++ program
    results in compile error.

commit 068af1a5e6ec574086e4b267c1f8d0c4793c030b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 3 18:41:01 2012 +0000

    Version 1.17.10.

commit eeda807d807d61fb68259918412efcd846d588aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 3 18:40:42 2012 +0000

    ruby: Use RbConfig instead of Config.
    
    I have checked, and this works with Ruby 1.8 as well.

commit ea4e6aa4e781f6a51254cebde6a9a1c38509d150
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 3 16:58:48 2012 +0000

    Add a 'fixed' style of appliance.
    
    This is just the 'kernel', 'initrd' and 'root' files, copied from one
    machine to another, along with a 'README.fixed' file which is also
    used for identification.
    
    This allows the appliance to be copied from one machine to another,
    making it easier for us to distribute a starter appliance for people
    who cannot get febootstrap or appliance-building working.

commit cd1d6d7e700ba5b581a92ae6a75bb933be1bd2ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 3 16:58:05 2012 +0000

    Rebrand 'ordinary appliance' as 'old-style appliance'.
    
    This is just code motion.

commit 7569d1db6bc991a8fed8a89583ad2bce19d4875b
Author: Nikos Skalkotos <skalkoto@gmail.com>
Date:   Thu Mar 1 21:00:36 2012 +0200

    Test fails in arch linux
    
    --20cf303ea4a84a7a7c04ba331375
    Content-Type: text/plain; charset=ISO-8859-1
    
    Hello Richard,
    
    I found what the problem was and the udev symlinks where not created. The
    init script in the appliance uses a full paths for udevadm (/sbin/udevadm)
    which in my case was wrong. In Arch Linux udevadm is hosted under /usr/bin,
    not /sbin. When I fixed this, libguestfs was able to communicate with the
    appliance VM.
    
    Since PATH variable is defined and exported in init, there is no need in
    using full paths for external programs. As far as I've seen this affects
    all the git branches in libguestfs's repository. Please find attached a
    patch for the master branch.
    
    Nikos Skalkotos,
    Athens, Greece
    
    On 24 February 2012 10:25, Richard W.M. Jones <rjones@redhat.com> wrote:
    
    > On Thu, Feb 23, 2012 at 08:50:12PM +0200, Nikos Skalkotos wrote:
    > [...]
    >
    > I don't know specifically why it fails with ArchLinux, but the problem
    > is caused by the /dev/virtio-ports/* symlinks not getting created by
    > udev.
    >
    > /dev/vport0p1 exists:
    >
    > > crw------- 1 root root 252,   1 Feb 23 18:17 vport0p1
    >
    > but udev doesn't make the corresponding /dev/virtio-ports symlink:
    >
    > > /dev/virtio-ports/org.libguestfs.channel.0: No such file or directory
    >
    > The symlink is supposed to be created by this udev rule:
    >
    > /lib/udev/rules.d/50-udev-default.rules:KERNEL=="vport*",
    > ATTR{name}=="?*", SYMLINK+="virtio-ports/$attr{name}"
    >
    > So I'd start by looking to see if that rule exists in the udev rules
    > that Arch is using.  Secondly if it does exist, is the corresponding
    > *.rules being copied into the appliance?  (Check appliance/supermin.d/
    > hostfiles)
    >
    > In an old Ubuntu that has udev that predates having this rule, we add
    > the following patch:
    >
    >
    > http://libguestfs.org/download/binaries/ubuntu1004-packages/0002-ubuntu-10.04-Use-dev-vport0p1.patch
    >
    > Rich.
    >
    > --
    > Richard Jones, Virtualization Group, Red Hat
    > http://people.redhat.com/~rjones
    > virt-p2v converts physical machines to virtual machines.  Boot with a
    > live CD or over the network (PXE) and turn machines into Xen guests.
    > http://et.redhat.com/~rjones/virt-p2v
    >
    
    Hello Richard,<br><br>I found what the problem was and the udev symlinks where not created. The init script in the appliance uses a full paths for udevadm (/sbin/udevadm) which in my case was wrong. In Arch Linux udevadm is hosted under /usr/bin, not /sbin. When I fixed this, libguestfs was able to communicate with the appliance VM.<br>
    <br>Since PATH variable is defined and exported in init, there is no need in using full paths for external programs. As far as I&#39;ve seen this affects all the git branches in libguestfs&#39;s repository. Please find attached a patch for the master branch.<br>
    <br>Nikos Skalkotos,<br>Athens, Greece<br><br><div class="gmail_quote">On 24 February 2012 10:25, Richard W.M. Jones <span dir="ltr">&lt;<a href="mailto:rjones@redhat.com">rjones@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
    On Thu, Feb 23, 2012 at 08:50:12PM +0200, Nikos Skalkotos wrote:<br>
    [...]<br>
    <br>
    I don&#39;t know specifically why it fails with ArchLinux, but the problem<br>
    is caused by the /dev/virtio-ports/* symlinks not getting created by<br>
    udev.<br>
    <br>
    /dev/vport0p1 exists:<br>
    <div class="im"><br>
    &gt; crw------- 1 root root 252,   1 Feb 23 18:17 vport0p1<br>
    <br>
    </div>but udev doesn&#39;t make the corresponding /dev/virtio-ports symlink:<br>
    <div class="im"><br>
    &gt; /dev/virtio-ports/org.libguestfs.channel.0: No such file or directory<br>
    <br>
    </div>The symlink is supposed to be created by this udev rule:<br>
    <br>
    /lib/udev/rules.d/50-udev-default.rules:KERNEL==&quot;vport*&quot;, ATTR{name}==&quot;?*&quot;, SYMLINK+=&quot;virtio-ports/$attr{name}&quot;<br>
    <br>
    So I&#39;d start by looking to see if that rule exists in the udev rules<br>
    that Arch is using.  Secondly if it does exist, is the corresponding<br>
    *.rules being copied into the appliance?  (Check appliance/supermin.d/<br>
    hostfiles)<br>
    <br>
    In an old Ubuntu that has udev that predates having this rule, we add<br>
    the following patch:<br>
    <br>
    <a href="http://libguestfs.org/download/binaries/ubuntu1004-packages/0002-ubuntu-10.04-Use-dev-vport0p1.patch" target="_blank">http://libguestfs.org/download/binaries/ubuntu1004-packages/0002-ubuntu-10.04-Use-dev-vport0p1.patch</a><br>
    
    <br>
    Rich.<br>
    <span class="HOEnZb"><font color="#888888"><br>
    --<br>
    Richard Jones, Virtualization Group, Red Hat <a href="http://people.redhat.com/%7Erjones%0Avirt-p2v" target="_blank">http://people.redhat.com/~rjones<br>
    virt-p2v</a> converts physical machines to virtual machines.  Boot with a<br>
    live CD or over the network (PXE) and turn machines into Xen guests.<br>
    <a href="http://et.redhat.com/%7Erjones/virt-p2v" target="_blank">http://et.redhat.com/~rjones/virt-p2v</a><br>
    </font></span></blockquote></div><br>

commit 90886e7f2c0ba028daf3f033f40a3e83d6695b7d
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Feb 29 14:37:37 2012 +0800

    virt-sysprep: add the hostname and net_hwaddr support for rhel
    
    Add the support for rhel.
    Change the hostname and delete the HWADDR for rhel.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 30c8f7c6f3b28759d2e4c803000dad082b25d043
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 28 10:31:23 2012 +0000

    Version 1.17.9.

commit 6c3bd491694caa7a65986250ed3779ab2219808c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 28 10:25:26 2012 +0000

    resize: Fix --output-format flag (RHBZ#798196).
    
    Update the test to use the --format and --output-format flags.

commit 0c8b049342c9d0a83b82338429261dbe2a80e898
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 27 19:39:11 2012 +0000

    resize: Document steps to avoid UNMOUNTABLE_BOOT_VOLUME BSOD (RHBZ#797986).
    
    (Thanks Grant Williamson for finding and fixing this problem)

commit fdcf0d2bc94b7c61c53d12dba121aa367bc799ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 27 14:05:38 2012 +0000

    New API: set-label, for setting a label on any filesystem.
    
    Currently only ext2/3/4 and (newly) NTFS are supported.
    
    This change also deprecates set-e2label.

commit 13f8df02d9fe9a133260230f7d28908781fc6219
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 27 12:00:57 2012 +0000

    New APIs: ntfsclone-in, ntfsclone-out.

commit f32dd51dd4dd228018f4e5290150d2ad0a9ab444
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 27 11:13:45 2012 +0000

    New API: ntfsfix for fixing problems on NTFS.
    
    Note this is not a "chkdsk" equivalent tool.

commit 95d91be703306d8e1a50f3c0487e043c68ff1c74
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 27 10:51:45 2012 +0000

    Update TODO.

commit 2e051ce7f4ecd142ab49bdf667efc475083f4657
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Sat Feb 25 10:02:20 2012 +0800

    set-smp: limit the number of cpus below 255
    
    Limit the number of cpus below 255, since qemu can't support.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 952adde1d3bc859074deaed202b3d0c38a4b9008
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Thu Feb 23 23:41:53 2012 +0800

    Add a flag to make some functions called only at CONFIG state (RHBZ#796520).
    
    Add a flag "ConfigOnly" to make sure that some non-daemon functions
    should be called only at CONFIG state (RHBZ#796520).
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 96da64c2509e8310a2ad5e6bb5a1b7ad49a71755
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 15 20:58:47 2012 +0000

    Version 1.17.8.

commit 1b7ef323e89265eb2eebc0745740cef965a75b03
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 15 19:25:52 2012 +0000

    sysprep: Try unmounting the filesystem a few times when busy.
    
    tracker-miner-fs jumps into newly mounted filesystems.  This prevents
    the filesystem from being unmounted, so retry a few times.

commit d6de4443dada1e212c09a5cc292af7fbe9a5f330
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 15 16:54:05 2012 +0000

    appliance: Make appliance building thread-safe (RHBZ#790721).
    
    Appliance building can be called from multiple processes, but this is
    only safe if each process holds a lock on the 'checksum' file.
    However threads within a process are not excluded by a file lock, and
    so this strategy completely failed for a multithreaded program calling
    guestfs_launch in parallel.
    
    Since it makes no sense for threads in a single program to race each
    other to try to create the appliance, add a lock around appliance
    building.
    
    This serialises building the appliance, but the rest of guestfs_launch
    (eg. starting up qemu) can run in parallel.

commit 50692be42d9bb895ef235460d454fba226d3f786
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 15 10:40:57 2012 +0000

    tests: Test parallel launch from multiple threads.

commit 54f72671b57b641e5632d86cda2096321fd4398b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 15 10:39:50 2012 +0000

    test-user-cancel: Add \n to fprintf error messages.

commit 73edb91f8443a48cc3dc14b96fb961401bb945c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 13 14:44:03 2012 +0000

    Version 1.17.7.

commit d2bf310d483de9bf3fff20281788a5c9f17c062f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 13 13:48:02 2012 +0000

    tests: Add a regression test for RHBZ#789960.
    
    Test all the ways that the 'mount' command can fail.  Ensure that none
    of them result in failures or desynchronization.

commit f5b0922838d915569b536241043835138a93e60e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 13 13:46:40 2012 +0000

    regressions: One test is not being run.
    
    rhbz727178.sh exists, but historically was never added to the list of
    tests, so it doesn't run.  Create a special variable for this test and
    ensure it is added to EXTRA_DIST.
    
    Test was originally added in
    commit d7356a2801130907997acd5c7502e8417566e782.

commit f3778c7d4c4035d180de3a7300df63c846a860de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 13 13:44:18 2012 +0000

    daemon: Return error properly when user tries to mount appliance root (RHBZ#789960).
    
    In the case where the caller attempts to mount the "hidden"
    appliance root device (eg. /dev/vdb if /dev/vda is the only
    normal block device added), we were calling reply_with_error
    but not actually returning immediately, resulting in protocol
    desynchronization.
    
    This commit fixes this obvious mistake.

commit e79a4c282e4d97c6f5c5e9c4be9073c6a75ed85e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 13 08:58:04 2012 +0000

    daemon: Don't xdr_free uninitialized args struct on error paths.
    
    For stubs of functions that had arguments, code did this:
    
    static void
    mount_stub (XDR *xdr_in)
    {
      int r;
      struct guestfs_mount_args args;
    
      if (optargs_bitmask != 0) {
        //...
        goto done;
      }
      // possibly other tests here
    
      memset (&args, 0, sizeof args);
    
      [...]
    
    done:
      xdr_free ((xdrproc_t) xdr_guestfs_mount_args, (char *) &args);
      return;
    }
    
    This caused xdr_free to be called on uninitialized 'args' struct,
    causing a segfault.
    
    The fix is to add another label, so the code looks like:
    
    static void
    mount_stub (XDR *xdr_in)
    {
      int r;
      struct guestfs_mount_args args;
    
      if (optargs_bitmask != 0) {
        //...
        goto done_no_free;
      }
      // possibly other tests here
    
      memset (&args, 0, sizeof args);
    
      [...]
    
    done:
      xdr_free ((xdrproc_t) xdr_guestfs_mount_args, (char *) &args);
    done_no_free:
      return;
    }
    
    This fixes commit 330fbea5b2d6bd7db84f7ea7afe87cf1bcd438e0
    and commit 0344248af55802bbbd816b349ec1ba9305996f6e.

commit 36bb20ac0ef1e4250f8b469a37424b41261fb404
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sun Feb 12 12:35:26 2012 +0100

    Do not run test-virt-format.sh if appliance has not been built

commit 4c7daea5739f5554c6cc63e2a9c38e85e35708ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 09:31:49 2012 +0000

    Version 1.17.6.

commit a81eb6d1b533ff200107069a9cefedc54aea5523
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 10:49:37 2012 +0000

    virt-format: Add a test.

commit 7e1550c033e81d0bd7ffa07b1a4289375cd42426
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 10:32:55 2012 +0000

    fish: edit: Preserve permissions, UID, GID, SELinux context when editing files (RHBZ#788641).

commit 18c914f9b4143b172fb80da8ecc4540dd70cfe6b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 10:12:45 2012 +0000

    fish: In edit command, upload to a new file.
    
    If the upload fails, this means we don't leave a partially
    written file.
    
    Also add a test for the edit command.

commit 2ffa49589b92c1c3b89a156180069470d9686660
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 09:31:34 2012 +0000

    fish: Refactor error handling in the 'edit' command.
    
    This is just code motion.

commit dffab527cad9500fdb8cd5a336d659278b51fdc1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 11:26:54 2012 +0000

    wipefs: Fix documentation.
    
    This fixes commit a2b3e0900ee14e5a49d526c24e22edefc3030f99.

commit 1fb40a31cfd92b3bb13792423067aa9839551179
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 10:06:08 2012 +0000

    ocaml: Ensure bindings are recompiled whenever there is an API change.

commit ba9461e9ae09ba0bfeb8dccb3095e06bd7b7ac79
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 10 09:55:51 2012 +0000

    wipefs: Include "optgroups.h".
    
    This fixes commit a2b3e0900ee14e5a49d526c24e22edefc3030f99.

commit cfe627636e07ba8b3fef1ef8449b0559e8443a79
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri Feb 10 17:10:03 2012 +0800

    virt-format: erase the filesystem signatures before erase partitions
    
    erase the filesystem signatures on each device, then erase
    the partitions, avoid to list all the partitions here.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 8e3074645cc2fdf42475e6ea65ed6dbcc3dba9f3
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri Feb 10 17:10:02 2012 +0800

    NEW API: add a new api wipefs
    
    Add the new api wipefs to erase the filesystem signatures
    on a device but now erase any data.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 6577aacb6e6d806d3bc129c5786eed193bcdc3a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 20:54:55 2012 +0000

    docs: Note that JRuby should use the Java bindings.

commit fa2d1a081dbf668fd858b4043964731e44fbd809
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 18:16:19 2012 +0000

    New API: llz: This runs ls -laZ and is useful for showing SELinux contexts.

commit cfd8a980864e78e621376c0de3fa77058fa16664
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 18:05:29 2012 +0000

    edit: Preserve file permissions, UID, GID, SELinux context on edited files. (RHBZ#788641)

commit d786b99dfcc8fa20bf7f122ae3d8c492343daf2c
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Feb 2 21:54:10 2012 +0100

    java: Make use of JAR_INSTALL_DIR, JNI_INSTALL_DIR

commit 832d6c66bb06704d6fdc21341b01fdcad0d1f0db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 14:03:19 2012 +0000

    Version 1.17.5.

commit de5a586d4b0ffcdbace34c20aaf11aa1ca7884f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 14:34:51 2012 +0000

    findfs: Remove /run/blkid/blkid.tab.
    
    See this util-linux commit:
    https://github.com/karelzak/util-linux/commit/b82590ad46acf9fe8d332b53875e24c3c31e2482

commit 8cdd61490848e2d7034111fd792ed45d2a2c4f1e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 14:02:51 2012 +0000

    extra-tests: Add suppression for uninitialized memory bug in latest glibc.

commit f8c822bf29c2893c94cb3f74121f64a846bbd0d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 8 14:02:14 2012 +0000

    extra-tests: libnl moved from /lib64 to /usr/lib64 on Fedora.
    
    Update suppressions file to match.

commit cc27d59a09fd20effce5ac96c47c41c2a243e2a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Feb 7 08:13:50 2012 +0000

    perl: Ignore perl/MYMETA.json

commit f8c46fbde7b38980922cf5743f789fab286d6ccc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 6 18:27:51 2012 +0000

    blockdev, parted: Call udev_settle before and after commands. (RHBZ#769304)
    
    See comments in the code for details.
    
    This is an alternate fix to
    commit a9c8123c72db47bcab8dd738e8d5256a9ae87f11.

commit 6a2ae839c1c887da47fbabf3457596add44205ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 6 18:24:52 2012 +0000

    Revert "daemon: Run udev_settle after pwrite-device finishes."
    
    This reverts commit a9c8123c72db47bcab8dd738e8d5256a9ae87f11.

commit 1bd125d64f8eee4002c1d28590f76ec5b0c46903
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Feb 6 15:45:45 2012 +0000

    build: Choose a virtual directory for the daemon which is not a symlink.
    
    Check /sbin, /usr/sbin, /bin and /usr/bin to ensure that neither the
    directory nor the parent (eg. /usr) is a symlink, and use this
    directory for the virtual directory used to store guestfsd in the
    appliance.

commit 865f8e1a52d20e23edf161a3cd3ab1eab96e5878
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 3 20:57:28 2012 +0000

    build: Remove 'run' from EXTRA_DIST.
    
    This file shouldn't be included in the tarball as it contains
    hard-coded paths from the maintainer's machine which cannot be
    relevant to the target machine.

commit d2bb64d046644607bd35259a9d6617a68b2bd3d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 1 17:36:19 2012 +0000

    Version 1.17.4.

commit 36353494722ec477f4628b40440cc9fb5e960bf6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 1 12:18:35 2012 +0000

    Clarify the error message when unavailable functions are called (RHBZ#679737).
    
    Callers are supposed to use the availability API to check for
    functions that may not be available in particular builds of
    libguestfs.  If they don't do this, currently they tend to get obscure
    error messages, eg:
    
      libguestfs: error: zerofree: /dev/vda1: zerofree: No such file or directory
    
    This commit changes the error message to explain what callers ought to
    be doing instead:
    
      libguestfs: error: zerofree: feature 'zerofree' is not available in this
      build of libguestfs.  Read 'AVAILABILITY' in the guestfs(3) man page for
      how to check for the availability of features.
    
    This patch makes the stubs check for availability.  The stub code
    changes to:
    
      static void
      zerofree_stub (XDR *xdr_in)
      {
      [...]
    
        /* The caller should have checked before calling this. */
        if (! optgroup_zerofree_available ()) {
          reply_with_error ("feature '%s' is not available in this\n"
                            "build of libguestfs.  Read 'AVAILABILITY' in the guestfs(3) man page for\n"
                            "how to check for the availability of features.",
                            "zerofree");
          goto done;
        }
      [...]

commit 40d63ff326c48c9eeadf09745e81426b7c97a6db
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Tue Jan 31 18:19:31 2012 +0800

    examples: code cleanups
    
    do a code cleanup by removing the tailing spaces
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 54db3efa962fef5c5956554db518c4086c76e003
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Jan 30 15:22:53 2012 +0800

    guestmount: use O_ACCMODE instead of hard coding
    
    Change hard code 3 to O_ACCMODE.
    it'll be more sensible.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 174107e02cacd445ab7da46a554ffcb2d1866517
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Jan 30 14:36:05 2012 +0800

    guestmount: remove tailing spaces
    
    just do a cleanup.
    remove the tailing spaces.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 56790d19147b99bf590b3dff4ee97897d7f4e1b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 30 10:47:47 2012 +0000

    daemon: Fix crash in aug-defnode (RHBZ#785668).

commit 31e2b64e160f66d92c954e739736b5c4b3cc3f9d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 28 19:14:57 2012 +0000

    virt-alignment-scan: Fix typo in man page (thanks yurchor).

commit 465227767a5ea7a53f6f7e7215a296a460310156
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 28 17:35:34 2012 +0000

    ocaml: Various fixes for bytecode compilation.
    
    Set LD_LIBRARY_PATH so we link against the just-built library, not
    the installed library.
    
    Use OCAMLCFLAGS instead of OCAMLOPTFLAGS where appropriate.
    
    Remove unnecessary -cclib option for bytecode linking (gcc is not used
    in this case).
    
    This fixes commit eb68a314133c88260cdf4547d7d338446488e698.

commit e2a0f61c03b561ba475ed980ca803f7128ebbb11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 28 10:24:36 2012 +0000

    Version 1.17.3.

commit 8269baa9bdd40f4be02b904a55c81ae3240fe618
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 28 10:24:18 2012 +0000

    ocaml: Sort the tests.

commit 0ff1f2523e7ae2c5629e30173f7d99fdf139f69d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 28 10:23:57 2012 +0000

    extra-tests: ocaml: Additional suppressions so we can test bytecode.

commit 20b5e2ef74f3469b7d06889ccb4e3d5f087a983b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 27 22:11:53 2012 +0000

    ocaml: Test bytecode and native code bindings.
    
    Compile each test twice, as bytecode and native code, and
    test both.

commit ad7a6749c944d9fe993cc1d795b029b33797921f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 27 21:48:35 2012 +0000

    ocaml: Fix bytecode bindings for functions with >= 6 args.

commit f04b2f30eaa4f7013d09c89a0acb7d2cad5d9150
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 27 18:43:07 2012 +0000

    Update to latest gnulib.
    
    This contains a workaround for stdalign bug:
    http://lists.gnu.org/archive/html/bug-gnulib/2012-01/msg00340.html
    http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023
    
    (Thanks Paul Eggert).

commit a3ff625f5e28b9dc063355a03199f9277a9008bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 27 15:36:31 2012 +0000

    appliance: udev >= 176 now requires /dev to be a devtmpfs.
    
    See this udev commit:
    https://git.kernel.org/?p=linux/hotplug/udev.git;a=commitdiff;h=220893b3cbdbf8932f95c44811b169a8f0d33939

commit 24be4f85a512d40b715dd4e86204f2c4baf83c32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 16:03:39 2012 +0000

    Version 1.17.2.

commit 75eddc87ba1a04c5cfe1fd3699e5908aeba8b765
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 17:05:25 2012 +0000

    build: Add gobject/TODO.txt to EXTRA_DIST.
    
    This updates commit dd25638fc14ea63cf8e8eb0940173f1c6952447f.

commit 17800355ffd86be0e5cdeb5d6a544b74d15eee85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 17:04:16 2012 +0000

    build: Add contrib/make-check-on-installed.pl to EXTRA_DIST.
    
    This updates commit 3d0c9f3fc63395083fef798ee31058a0bea8432e.

commit 44ebc45b22b92949303acfb64b8ca988a8fe8cd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 13:36:05 2012 +0000

    contrib: Add a script for running test suite on installed packages.

commit db3c70f286effb6a649270edd9499870062e4e8c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 12:24:11 2012 +0000

    contrib: Delete 'removed' sections from the README file.
    
    There is no point in continuing to document removed stuff.

commit 21d1728875af352f5a6be52018a72f2ef9e4cc29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 14:55:10 2012 +0000

    fish: Fix 'test-guestfish-escapes.sh' when running an alternate guestfish binary.
    
    The error messages would be prefixed by the path to the
    alternate binary, eg:
    
    ../fish/guestfish: invalid escape sequence in string (starting at offset 0)
    
    Fix this by normalizing the messages further.

commit 0bec2cddbe97c024cc02f11c0835126f2babe124
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 13:48:59 2012 +0000

    ocaml: Don't install bindtests.*.

commit a60861fb29abc8f7e68105dce4f0b0589d38af34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 26 13:35:38 2012 +0000

    ocaml: Don't install libguestfsocaml.a.

commit b364cc73860c0b1f5b7617cdd3e1bbb6190c3b61
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jan 26 11:55:43 2012 +0000

    gobject: Add a TODO list

commit 519a14e4fcd4c4db8f41f56ffb2d59a5c08200a4
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 25 15:10:01 2012 +0000

    gobject: Add an explicit close call
    
    This change binds guestfs_close(). It consequently results in RConstOptString
    being able to throw an error.

commit 42d7d9db2766c5f74fadd251934dce8b8002016d
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 25 13:17:39 2012 +0000

    gobject: Allow RConstOptString to return an error
    
    RConstOptString cannot return an error in the C api. This makes it a special
    case for the GObject api, as all other return types have a corresponding GError
    **err argument to return an error. This change removes this special case, and
    includes the possibility of an error return in the API. An error is indicated by
    setting *err to a non-NULL value.
    
    This change is in preparation for adding a close api. An attempt to call any
    api, even RConstOptString, on a closed handle must return an error.

commit 11d26f47f9b1a43866ca9309303e32a777fed622
Author: Jiri Popelka <jpopelka@redhat.com>
Date:   Wed Jan 25 17:16:56 2012 +0000

    appliance: Switch to using 'iproute' ('ip' command) from 'net-tools' (RHBZ#784647).
    
    Change 'ifconfig' and 'netstat' commands to use 'ip' instead.
    
    'iproute' was already included in the appliance, so this reduces the
    size of the appliance accordingly.

commit 54be30ecfe43ef0ba5855c7ea157dda0465f71a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 19:29:08 2012 +0000

    Version 1.17.1.

commit 3edfa45facdabde7fc31fa8a21779b85e5f9ea9d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 16:42:39 2012 +0000

    daemon: Fix use-after-free in case-insensitive-path (found by valgrind).
    
    This commit tidies up the code by splitting out the path
    element-searching code into a separate function.
    
    Valgrind found that 'closedir' frees the 'struct dirent *', which
    wasn't immediately obvious.  So now we do the 'closedir' after all
    operations which touch 'd->d_name'.

commit b1d5114f8c64ddbc2779f38e16e17fa4e265f07e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 16:42:31 2012 +0000

    daemon: Fix leaking error message (found by valgrind).

commit 9ceffc361ba713454800333f73746b64363956f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 16:42:13 2012 +0000

    daemon: Close inotify handle on exit.

commit 06ecf6a285a1e2784f98484c5f6563a1b27bae0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 16:42:05 2012 +0000

    daemon: Close augeas handle on exit.

commit 219613827c6605216c0be5c6e62735c51ae60d7d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 16:39:02 2012 +0000

    daemon: Fix leak of strings in md-detail (found by valgrind).

commit 039fe30d124bc5a1f981986ab96a20929f9251c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 16:38:04 2012 +0000

    daemon: md: Whitespace changes, and use size_t for i instead of pointer.
    
    This is just a code clean-up with no functional change.

commit c70859355366daa7412a17c2fdc61d74e04b9a94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 15:14:07 2012 +0000

    daemon: Fix leak of strings in blkid (found by valgrind).

commit 1b342a5779c5cec170f93bdfa61453ffb1c770bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 15:13:32 2012 +0000

    daemon: blkid: Whitespace changes, and use size_t for i instead of pointer.
    
    This is just a code clean-up with no functional change.

commit da88149fbb5f7ab4a516304c38d95bbc598b105d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 15:12:27 2012 +0000

    daemon: Return value from write syscall is ssize_t, not int.

commit 270c19ff7b88b5a946f45a61ac63e36ca03eb1e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 15:12:01 2012 +0000

    daemon: Don't leak 'cmdline' (found by valgrind).

commit aef7b4e3f5aabb3335460402c5f3c3f3fbeff7dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 15:11:21 2012 +0000

    daemon: Length of message is a 32 bit unsigned quantity.

commit 6977ad8ee9952e703b42199d2e02307616b65ec1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 15:10:43 2012 +0000

    daemon: Fix use of uninitialized stack data (found by valgrind).
    
    This uninitialized data was also sent over the protocol,
    potentially being a serious information leak.

commit f28f9f47cfc0aaed6e54e5d7d6604a3f089cf874
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 15:09:02 2012 +0000

    daemon: Fix memory leak in 'initrd-cat' (found by valgrind).

commit bc994fe7a039a54c1c55ebfca0922cbe5978c574
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 24 13:47:25 2012 +0000

    Enable running the daemon under valgrind.
    
    This commit allows you to run the daemon under valgrind.  You have to
    enable it at configure time:
    
      ./configure --enable-valgrind-daemon
    
    This should *not* be done for production builds.
    
    When this feature is enabled, valgrind is added to the appliance and
    the daemon is run under valgrind.  Log messages from valgrind are
    passed back over a virtio-serial channel into a file called
    'valgrind.log.$PID' in the top build directory.
    
    Running 'make check', 'make extra-tests' etc causes many
    valgrind.log.* files to be created which must be examined by hand.

commit 3bb76ba9768b69839e19d4a29846c7284f83c5cb
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Jan 23 23:17:37 2012 +0100

    resize, sparsify: find progress mini-library in out-of-tree builds (2)

commit 2206dd12112135913b085e7fa32401bd6770c862
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Jan 23 23:16:37 2012 +0100

    Fix --{en,dis}able-install-daemon
    
    This fixes...
    
        configure: error: conditional "INSTALL_DAEMON" was never defined.
    
    ... when specifying --disable-daemon

commit 9746841d5adab5e1bc37d153331ac0934868e1c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 23 15:32:30 2012 +0000

    API support: Fix src/api-support/added file.
    
    This fixes commit 37e07db1598b433c12ee643302712d81b2c5415d.

commit a71ae1c030b4b52fae91b768047a80d3ebe1f8e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 23 15:04:10 2012 +0000

    Version 1.17.0.

commit 489be74843c187939f3a4c69304b28f5a659c132
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 23 13:42:43 2012 +0000

    Update ROADMAP.

commit 635ea53371e1f2e55510449fbc0a17854a51f736
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 23 13:34:32 2012 +0000

    Finalize RELEASE NOTES.

commit 27acd3771e4d675e2f54b1b8b4cf45f0be760201
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 23 13:19:22 2012 +0000

    Pull translations from Transifex.

commit b74a4575a26f02f0e713e27f734c78dbcf910f70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 23 12:18:13 2012 +0000

    debian: Debian 6 blkid has -p but not -i.
    
    Fix the existing test to work correctly in this case.
    
    Other cleanups.

commit 09e7d3d6bce4721c9b535dc0f3f31dfeac2e17e9
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jan 23 10:42:27 2012 +0000

    gobject: Require minimum gobject library version of 2.26.0
    
    The GObject bindings require G_DEFINE_BOXED_TYPE, which was not added until
    2.25.15. There are probably other dependencies.

commit def836008e09815c1ee344515dc335fe29396944
Author: Jim Meyering <jim@meyering.net>
Date:   Mon Jan 23 11:35:55 2012 +0100

    maint: use $var notation rather than ${var} when possible
    
    I noticed some uses of ${srcdir} in shell scripts.
    That is almost always better written as $srcdir.
    The patch below converts most such variable references.
    Here are the few remaining candidates:
    
    $ git grep -i -E '\$\{[a-zA-Z_0-9]+\}'|grep -v Makefile.in.in
    configure.ac:        JAR_INSTALL_DIR=\${prefix}/share/java
    configure.ac:        JNI_INSTALL_DIR=\${libdir}
    debian/rules:   for TEST in ${DEBIAN_SKIP_TEST}; do \
    debian/rules:#          mv $${mod} $$(dirname $${mod})/libguestfsmod.so; \
    java/Makefile.am:libguestfs_jar_DATA = libguestfs-${VERSION}.jar
    java/Makefile.am:libguestfs-${VERSION}.jar: $(libguestfs_jar_class_files)
    perl/lib/Sys/Guestfs/Lib.pm:                      "-f", '${Package} ${Version} ${Architecture} ${Status}\n',
    perl/typemap:            croak (\"${Package}::$func_name(): called on a closed handle\");
    perl/typemap:        croak (\"${Package}::$func_name(): $var is not a blessed HV reference\");
    tests/data/Makefile.am:   echo "$${i}abcdefghijklmnopqrstuvwxyz"; \
    
    We could change all of those, too, except the ones in configure.ac
    and Makefile.am, since they refer to Make variables.  Even those
    should be changed, but to use the preferred Makefile notation:
    $(prefix), $(libdir), $(VERSION).
    
    >From a86770ecd45666232a94d76c8725c8f9b1c76e3a Mon Sep 17 00:00:00 2001
    From: Jim Meyering <meyering@redhat.com>
    Date: Mon, 23 Jan 2012 11:15:12 +0100
    Subject: [PATCH libguestfs] maint: use $var notation rather than ${var} when
     possible
    
    The only case to avoid in a shell script is when the byte after the
    "}" is word-constituent, and concatenating it would thus change the
    name of the variable.
    
    These changes were induced by running this command:
      git grep -l -i -E '\$\{(srcdir|md)' \
        |xargs perl -pi -e 's/\$\{(srcdir|md)\}($|\w)/\$$1$2/gi'
    
    The "g" was needed because there was one line with two instances.
    The "i" is to handle ${SRCDIR}.  The ($|\w) ensures that concatenating
    whatever follows the "}" won't change semantics.
    
    * gobject/run-bindtests: Use "$srcdir", not "${srcdir}".
    * haskell/run-bindtests: Likewise.
    * java/run-bindtests: Likewise.
    * ocaml/run-bindtests: Likewise.
    * perl/run-bindtests: Likewise.
    * python/run-bindtests: Likewise.
    * ruby/run-bindtests: Likewise.
    * tests/guests/guest-aux/make-debian-img.sh: Likewise, but $SRCDIR.
    * tests/guests/guest-aux/make-ubuntu-img.sh: Likewise.
    * tests/guests/guest-aux/make-windows-img.sh: Likewise.
    * tests/md/test-mdadm.sh: Likewise, but $md.

commit 0781f44ef81ce55bfacd485dc22e02788fbe1c99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 23 10:35:24 2012 +0000

    Update API support.

commit ad957269d35b9d0542d6215e7addc54b97837efc
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Jan 23 09:48:37 2012 +0000

    gobject: Run bindtests from srcdir.

commit 979baf3a612fa72ceb80393a8353edb6d40d548d
Author: Jim Meyering <jim@meyering.net>
Date:   Mon Jan 23 10:03:14 2012 +0100

    build: don't use automake-internal variable
    
    Hi Rich,
    
    I realized a day or two late that my suggestion was not quite right.
    Here's the fix:
    
    >From 5294c21cf07c4ec2f094182ba9f32696f3de2751 Mon Sep 17 00:00:00 2001
    From: Jim Meyering <meyering@redhat.com>
    Date: Mon, 23 Jan 2012 10:01:40 +0100
    Subject: [PATCH libguestfs] build: don't use automake-internal variable
    
    * ocaml/Makefile.am (mlguestfs.cma): Use the documented variable form,
    $(libguestfsocaml_a_OBJECTS), not the $(am_libguestfsocaml_a_OBJECTS)
    that I suggested for commit 1.15.16-17-g8b9eaec.

commit 4b1846d4862f46a11b67e6ee73f699a16b8cc876
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri Jan 20 08:44:46 2012 +0100

    check for febootstrap etc. even if not building appliance

commit fc5802e0fe0cab6cb4f1cf5199f492c887b8055c
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sat Jan 21 22:32:45 2012 +0100

    fish: Filter out error messages about history file in test script

commit f6605336cf171f5521342877c2beb8425c29fa07
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sat Jan 21 22:56:51 2012 +0100

    Do not run appliance-related checks if not building appliance

commit c339b3d42ce036d5f145169f9ccddb5a8d277662
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sat Jan 21 22:39:59 2012 +0100

    Replace setting of environment variables with usage of local run script
    
    (Includes fix by RWMJ)

commit f45a165b100fedd6b6bd782257be53e2ca06e072
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 22 14:47:43 2012 +0000

    php: function_entry -> zend_function_entry.
    
    function_entry was left over from PHP 3.
    
    See: http://news.php.net/php.pecl.dev/7123

commit 9061d0d56d5bed1b14460a19f60c60c558984468
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 22 14:38:07 2012 +0000

    php: Enable 'make clean' in extension subdirectory.

commit 813e69500b2c80750b6d39e1968bb943f9fb770d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 21 11:19:29 2012 +0000

    Version 1.15.19.

commit a400c771bb3e4f6588c8b23fcd25019cfb3899cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 22 11:33:01 2012 +0000

    gobject: Include bindtests-manual.js in EXTRA_DIST.
    
    This fixes commit 93b0769ec7929a909678411d75840f81bed55a81.

commit 2b1a2c4034f3d863db897624c0fb7259c64658ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 22 11:01:12 2012 +0000

    gobject: Document these bindings in guestfs(3).

commit d938f9f33c92ce48c92d564949dbfb00bd7f4596
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 22 11:00:58 2012 +0000

    website: Rebuild the HTML manual pages from scratch.

commit 3497ed08a948233623f2987e59f51413ab4a7014
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 21 11:27:35 2012 +0000

    daemon: Move internal-autosync function to new file internal.c.
    
    This is just code motion.

commit e4e65bad24d2dd353169042a23e58889b798fa64
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jan 19 16:51:01 2012 +0000

    gobject: Add bindtests for return values

commit dc9c31c3e1b00423ab88507755fe23f8c0dfc8ae
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jan 19 16:43:20 2012 +0000

    bindtests: Test optargs in test0
    
    Note that this change disables compiling and running the haskell bindtests. The
    haskell bindings do not implement optargs, and adding optargs to test0 causes
    that method not to be bound in the haskell bindings. This prevents the haskell
    bindtests from compiling. These should be re-enabled when optargs are
    implemented.

commit 68b4d284e1971fc1150c7ebe0ea0559360fcf8e5
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Jan 17 16:41:07 2012 +0000

    gobject: Add basic bindtests

commit bf356278abf44c68b210fe83508196b748654a84
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Jan 17 15:28:01 2012 +0000

    run script: Add support for gobject introspection

commit df44d2ee774585dbcf3abf7aeb19be0b5274ff0a
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 4 09:42:41 2012 +0000

    gobject: Add GObject bindings

commit 1a830e5ab67309531a1c8eaed380052f3e4bdf1a
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jan 20 10:55:24 2012 +0000

    generator: Add CamelName flag
    
    We can make a good guess at camel case names for most APIs. For example,
    add_drive_opts can be automatically transformed to AddDriveOpts. However, other
    apis don't produce a satisfactory name when transformed automatically. For
    example, we would want md_create to produce MDCreate rather than MdCreate.
    
    This change adds a CamelName flag which allows a camel case name to be specified
    explicitly when the automatic transformation isn't satisfactory.

commit d03507d15a0590c8ab8158fa8202abb6ed79abb1
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri Jan 20 08:44:47 2012 +0100

    resize, sparsify: find progress mini-library in out-of-tree builds

commit 4ea301fda5ed3859ff2c32ab0d8ebbade6578c32
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri Jan 20 08:44:44 2012 +0100

    Fixed out-of-tree compilation of OCaml code after .depend files removal

commit d20bc7e5096f92ace98444971fb7c8a32485768f
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Fri Jan 20 08:44:42 2012 +0100

    fish: Remove hard-coded path from test script

commit b366a2cf577b591c60e38f1bbb50848a6f91527c
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 18 17:33:42 2012 +0000

    c: Fix prototype generator when last argument is a BufferIn
    
    We were passing the name of the last argument directly to va_start. However, if
    the last argument is a BufferIn it expands to 2 arguments, the latter of which
    is <name>_size.

commit d70e941fcd4677f3835b02a615feb4433198e91a
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 18 16:44:10 2012 +0000

    bindtests: Add a test for RBufferOut
    
    Fixup the existing test, and add an entry in actions so it's actually generated.

commit 9e1f12b87dc4520ff54b5077cd736f77852e5332
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 18 16:26:26 2012 +0000

    bindtests: Fix sscanf test in test0rhashtable

commit 1a5b0958e6234cc753fc236cf238293c9dc18ce8
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 18 16:11:14 2012 +0000

    bindtests: Add something non-zero to the RStructList test output

commit ad93cce6a92e15b8d55b4b341efdbba2979fa84f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 20 12:16:53 2012 +0000

    Update release notes with feedback from Hilko Bengen.

commit 3657962ddf1551a8782814371536f59e165f4122
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 20 09:40:35 2012 +0000

    Revert "generator: Add CamelName flag"
    
    This reverts commit 83c20f02dc0e97b098e9de837839a3f4a4416129.

commit cccbc6d4340c5edcc3738212c4bfb5e7d092fd69
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 18:41:35 2012 +0000

    Version 1.15.18.

commit 6ab072502c161368c2b4450fc0c3f894d0b00ae4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 16:07:39 2012 +0000

    Update release notes.

commit ba06d4a88b335f7b35568be28cc54b6d1da26641
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 13:54:50 2012 +0000

    daemon: Run udev_settle after pwrite-device finishes.
    
    When you call close on any block device, udev kicks off a rule which
    runs blkid to reexamine the device.  We need to wait for this rule to
    finish running since it holds the device open and can cause other
    operations to fail, notably BLKRRPART.

commit 3bba5ec580c1be38fba7aee072f2a3174382a5eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 13:07:30 2012 +0000

    appliance: Add psmisc package to the appliance.
    
    This allows us to use 'fuser' and other ps tools.

commit ae48c0ea39abdc2cc2280d14578eab1dd3939d14
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 19 11:30:23 2012 +0000

    daemon: pwrite/pread: Don't double close on error path.
    
    In Linux, close (fd) closes the file descriptor even if it returns an
    error.

commit c40f389f0fc9b57379a52a0f1498d860c915a7ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 18 22:05:02 2012 +0000

    Tempus fugit.
    
    Update all copyright dates to 2012.

commit 31352c598ce394c52c3d5adbd7e8e71ece3ba48c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 18 21:15:37 2012 +0000

    tools: Mark obsolete tools clearly in the man pages.

commit 8b01c825b7f9889c22b4a0edae0730e4b4d7e0d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 18 16:09:20 2012 +0000

    Version 1.15.17.

commit 59d3c22ffeaf534936f7cc0db0924513cbd00a86
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 18 12:48:14 2012 +0000

    lib: Use -fvisibilty=hidden by default; only ABI symbols are now visible.
    
    http://gcc.gnu.org/wiki/Visibility

commit e653dc3d37f7610f6bc9c8b759d3f4b8b9706185
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 18 12:30:36 2012 +0000

    ocaml: Use automake to build the C part of the bindings.
    
    By arranging the C part of the bindings into a library, we can get
    automake to build it instead of using $(CC) directly.

commit 0b66177366ff3fb4b24569fbacf616bcf1429ec7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 18 10:37:47 2012 +0000

    ocaml: Don't include guestfs-internal.h directly.
    
    However since the OCaml bindings use guestfs_safe_strdup and
    guestfs_safe_memdup we need to export those two (in the private
    functions section) from <guestfs.h>.

commit 14c9362c70c90ef36b55b57c7618fd6b7ef29837
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 18 12:47:49 2012 +0000

    ocaml: Add -Wno-missing-field-initializers to avoid a warning.

commit 62011f1f2462f64bccbb8391334a72253dd0b39d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 17 17:34:24 2012 +0000

    New tool: virt-format: erase and make blank disks.
    
    This tool allows you to easily reformat a disk, creating a blank disk
    with optional partition, LVM and empty filesystem.

commit 2fe512876abb2e9dd55a2c0c18a68c5708ca533e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 17 18:28:44 2012 +0000

    fish options parsing: Allow add_drives to be called multiple times.
    
    Ensure that the drv structure is always zeroed on allocation.
    
    Don't leak old drv->device when add_drives is called multiple times.

commit 7174c010767e930a3c1fc824f8302375f4cde70f
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Jan 17 13:44:29 2012 +0000

    c: Allow NULL optargs to be passed to _argv calls
    
    Previously, passing NULL optargs to an _argv call resulted in a segfault. This
    change causes NULL optargs to be interpreted as no optargs, and to be correctly
    handled accordingly.

commit ad26fa642122db78acb386352d6011f345a9ce8f
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Jan 17 13:25:21 2012 +0000

    c: NFC Remove redundant parentheses

commit 659881e44c04271699187e5c80f04667fd0d951d
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jan 16 14:45:03 2012 +0000

    generator: Add an explicit Cancellable flag
    
    Currently any api which takes a FileIn or FileOut parameter is implicitly
    cancellable. This change make cancellable an explicit flag in anticipation of it
    being added to other apis.
    
    Note that a Cancellable function must be able to return an error, which means it
    can't return RConstOptString.

commit 276d651d8fa5abb6c8b0aa97f42919cef37e8921
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jan 13 10:00:30 2012 +0000

    generator: Add CamelName flag
    
    We can make a good guess at camel case names for most APIs. For example,
    add_drive_opts can be automatically transformed to AddDriveOpts. However, other
    apis don't produce a satisfactory name when transformed automatically. For
    example, we would want md_create to produce MDCreate rather than MdCreate.
    
    This change adds a CamelName flag which allows a camel case name to be specified
    explicitly when the automatic transformation isn't satisfactory.

commit 93e235fe273e26c263067514c5ae6a4751765c0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 16 10:15:02 2012 +0000

    resize2fs-M: fix double-free along error path (thanks Matthew Booth).

commit f0a52c4d60b10879464dcf65d0cafe846fb6a2fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 16 10:14:38 2012 +0000

    e2fsck: Tidy up the documentation for this API.

commit 3f4721a74de7dc38dcf9546639ca3a4d868b3bc4
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Sat Jan 14 00:03:45 2012 +0800

    e2fsck-f: change the internal to use e2fsck
    
    Since we implement the new api e2fsck, just change the
    internal of e2fsck_f to use e2fsck now.
    v1->v2: use optargs_bitmask
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit a14fcef642ef50242ff2fc1c8e7de8496a3574ab
Author: Wanlong Gao <wanlong.gao@gmail.com>
Date:   Sat Jan 14 00:22:09 2012 +0800

    NEW API: add a new api e2fsck
    
    m: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    Add a new api e2fsck with two options:
    correct: same as '-p' option of e2fsck
    forceall: same as '-y' option of e2fsck
    
    Thanks for Rich's idea.
    v1->v2: use optargs_bitmask
    v2->v3: change the optargs_bitmask check
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 40c183733901db9d58582bbf8b1bf3b385f1ce80
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Sat Jan 14 00:03:43 2012 +0800

    ext2: tweak the error returned message of resize2fs-M(BZ755729)
    
    Tweak the error message "e2fsck -f" and "e2fsck -fy".
    Indicate the user to use the correct and/or forceall options.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit bc8254baa942446f67d17c21f7cc604a0aec7c23
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 11 11:07:34 2012 +0000

    build: Remove .depend files from git
    
    Remove generated .depend files from source control, and don't barf when they
    don't exist while bootstrapping.

commit 87fb5b72d1588cf0535abe783824361223323634
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 11 14:03:02 2012 +0000

    Update RELEASE-NOTES.

commit 3875d61d396dbc4eb39eef86b8abb7c6e06733e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 10 18:52:53 2012 +0000

    extra-tests: Only test 5 random guests.
    
    If you have a lot of guests, running extra tests takes a lot of time,
    but (arguably) you're not really doing any more detailed testing.
    
    Thus pick up to 5 guests at random to test.  A different random
    selection is done on each run, ensuring that data-driven errors (eg in
    inspection) will still be found eventually.

commit f7337a28dce9c398cb0d1d7865e191d29ef0e89f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 10 16:53:17 2012 +0000

    Version 1.15.16.

commit 4d826675a5867ecfaa951588f7d993b9cd82e541
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 10 16:51:36 2012 +0000

    Allow /dev/null to be added multiple times.
    
    Change the test for duplicate drives so that you're allowed to
    add /dev/null multiple times.  This corresponds to traditional
    usage.
    
    This amends commit be47b66c3033105a2b880dbc10bfc2b163b7eafe.

commit 95833d29d01cb9370ede4fcb4979a4b9ed5efc48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 9 16:55:49 2012 +0000

    daemon: debug segv correct use of dereferencing NULL.

commit 75881d3642e65c90c480f101fe6266720b9ab756
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Jan 9 20:53:24 2012 +0800

    launch: move the filename checking to a wrapper
    
    Move the filename's comma character checking to a wrapper.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit fe93601392702bc592390f548a8b859d4767afa0
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Jan 9 15:22:43 2012 +0800

    launch: don't add a drive twice
    
    1. Change the g->path to restore a absolute path instead of the mixed.
    2. Check that if the adding drive is duplicated with the added drive.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ:
    
    - Make sure abs_path is NULL before it is assigned, so freeing it
      will work along the error path.
    
    - Fix the test which added /dev/null multiple times.

commit a45c3e6ee89c34d253c997c2eb2be68fac717f83
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jan 9 10:16:35 2012 +0000

    generator: Create a separate type for optional arguments
    
    Previously, optional arguments had the same type as regular arguments, but were
    constrained by various runtime tests to be only Bool, Int, Int64 or String. This
    change makes the type of optional arguments stronger by giving them their own
    type.
    
    A convenience function, optargs_to_args is defined to convert optargs in the few
    places where they are genuinely treated identically to mandatory arguments.
    
    It also allows for future changes to optional arguments which do not affect
    mandatory arguments.
    
    RWMJ:
     - removed redundant parens
     - readded the check for > 64 optargs, but changed it to > 63
     - changed the new function to args_of_optargs

commit f2bb240d230fac1317bf062d95534b88b04be176
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jan 9 10:16:34 2012 +0000

    generator: Rename java_structs to camel_structs to better reflect their purpose
    
    This map was originally included just for the java bindings, but is generally
    useful to any binding which uses camel case by requirement or convention.

commit 6220064c5a8b477c5ad6851130cf2e19561352e0
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Jan 9 15:22:42 2012 +0800

    launch: add a goto label when add_drive error
    
    Code cleanup.
    Add a goto label to simplify the code.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit a0bd8fa7b5fea41d1cf6917b8a4a7243590c4804
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 8 19:12:46 2012 +0000

    Version 1.15.15.

commit 22ab47f533e49d417b00fa76505fee3eb9db847a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 6 21:08:25 2012 +0000

    debian: Add build-dep erlang-dev.

commit 746d836f37b80dc780d4f5a0b71110f56a7efb67
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 6 18:44:41 2012 +0000

    Update to latest gnulib.

commit b7df6893677224c10fd75d308699c86a0dd36ca3
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 4 11:15:24 2012 +0000

    Tempora mutantur, nos et mutamur in illis.

commit 4c8745ed5ab24f5a152ffe3d51567b729304662c
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jan 4 09:56:16 2012 +0000

    build: Fix automake warnings

commit f8cb4ae6d6d738156c74395050fe2a99de25fad3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 4 10:16:29 2012 +0000

    Sort .gitignore (using sort -d -- dictionary order).

commit 38b87f3c14986f3ef5971f7efe0fce852deb7d5d
Author: Wanlong Gao <wanlong.gao@gmail.com>
Date:   Fri Dec 30 16:10:50 2011 +0800

    gitignore: ignore the git related files
    
    *.eml for email picked patches
    other for orginal git patch related files.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 6632fa6e077833eea587493d3baba398fc5f985f
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Dec 28 17:59:38 2011 +0800

    fish: fix the Ctrl-\ causes guestfish to abort bug(RHBZ#596761)
    
    Handle SIGQUIT by guestfish, so that it can't be terminated.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit f62db95c524d424a2e661d69bae2901198bbdd8f
Author: Wanlong Gao <wanlong.gao@gmail.com>
Date:   Tue Jan 3 23:41:43 2012 +0800

    AUTHORS: add the email address for each authors
    
    Add the email address for authors.
    It would be better.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit fab1514186559aaf1ef57acd6e904ee0aa9c4449
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 23 22:30:29 2011 +0000

    fish: mount can be used instead of mount-options with libguestfs >= 1.14

commit 78fd110fb510b778dd111c4c78447b21312b5e6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 23 22:30:09 2011 +0000

    fish: Fix --format parameter in man page.

commit 0c9370641240b407526c93a43e7e1fe838781ff2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 23 13:26:31 2011 +0000

    Version 1.15.14.

commit 8c26176335aab4c9d7b81fa6f283fbd150fd71d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 23 10:37:04 2011 +0000

    lib: Try harder to remove temporary directory along error paths (RHBZ#769680).

commit 10b4543a30a1f637a9dfccf9616569d404205fab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 23 10:33:25 2011 +0000

    lib: Add guestfs___remove_tmpdir helper function.
    
    This function does 'rm -rf <dir>' for temporary directories, safely
    working if '<dir>' contains shell meta-characters.
    
    Replace existing code for removing directories with this.

commit 4bb18b38fc1a190a013397cc45319e34627fcea2
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri Dec 23 14:54:04 2011 +0800

    gitignore: ignore the guestfs.* directory
    
    Let git ignore the guestfs.* directorys.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 49746c9e95eead65659e1e6b6a4dbada7f13a09f
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Fri Dec 23 11:46:21 2011 +0800

    extra-tests: add test-guests to prevent test error
    
    extra-tests is depending on tests-guests.
    We need guests/*.img when doing extra-tests.
    
    /work/git/libguestfs/run valgrind --log-file=/work/git/libguestfs/tests/extra/valgrind.log --leak-check=full --error-exitcode=119 --suppressions=/work/git/libguestfs/tests/extra/suppressions ../../cat/virt-cat -a ../guests/fedora.img /etc/fstab >/dev/null
    ../guests/fedora.img: No such file or directory
    make[1]: *** [test-tools-internal] Error 1
    make[1]: Leaving directory `/work/git/libguestfs/tests/extra'
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 7b04e0925b532eb670f31240a289686cd781f849
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 23 08:28:26 2011 +0000

    fish: Fix test-guestfish-events.sh so it works when LIBGUESTFS_DEBUG=1 is set.
    
    Various messages were added and changed when this variable was set
    while tests were running.

commit 0570c6218464173d43e6850cf7ff55141cc17f2a
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Wed Dec 14 17:40:56 2011 +0800

    mkfs: optimization and code cleanup
    
    v1->v2: fix a typo pointed by Matt
    
    Optimizations by reducing the STREQ operations and do some
    code cleanup.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    
    RWMJ: Whitespace changes.

commit 0a36027645253eb4fc616dc3f46bd5643861f6f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 22:17:17 2011 +0000

    tests/lvm: Contains a Perl test so we must set PERL5LIB.
    
    This fixes commit 498758faee6be7e989869bf7feba5e1026a1bb65.

commit 084cb13356b00ecd2bfc6f93c758282c44715cab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 19:12:14 2011 +0000

    tests/protocol: Contains a Perl test so we must set PERL5LIB.
    
    This fixes commit 498758faee6be7e989869bf7feba5e1026a1bb65.

commit e41e5b39cc0e0c22a31115f97aeba67c2b192d99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 18:34:22 2011 +0000

    Version 1.15.13.

commit a5d401555cf5a2f50737cd75a68a080bc1fb4c51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 17:56:47 2011 +0000

    Security: Mitigate possible privilege escalation via SG_IO ioctl (CVE-2011-4127, RHBZ#757071)
    
    CVE-2011-4127 is a serious qemu & kernel privilege escalation bug
    found by Paolo Bonzini.
    
    http://seclists.org/oss-sec/2011/q4/536
    
    An untrusted guest kernel is able to issue special SG_IO ioctls on
    virtio devices which qemu passes through to the host kernel without
    filtering or sanitizing.  These ioctls allow raw sectors from the
    underlying host device to be read and written.  Significantly, neither
    qemu nor the host kernel checks that the range of sectors is within
    the partition / LV assigned to the guest.  For example, if the guest
    is assigned host partition /dev/sda3, it would be able to read or
    write any part of /dev/sda including other partitions and the boot
    sector.  Exploits through LVs passed to the guest are also possible,
    with some limitations.  File-backed virtual block devices are not
    vulnerable.  Non-virtio block devices are not vulnerable.
    
    This patch mitigates the problem by disabling the SG_IO ioctl
    passthrough in qemu.  Thus if libguestfs is examining an untrusted
    guest and the libguestfs appliance/daemon is compromised (eg. by
    executing guest commands, or through some other compromise), then the
    compromised appliance will not be able to issue the above SG_IO ioctls
    and exploit the host.
    
    Note that this is just mitigation for libguestfs.  Users will still
    want to fully update their host kernel, qemu/KVM and libvirt, in order
    to prevent other (non-libguestfs) routes to compromise.
    
    The following versions of libguestfs (will/have) this patch applied.
    
      libguestfs >= 1.15.13
      libguestfs >= 1.14.8
      libguestfs >= 1.12.11
      libguestfs >= 1.10.12
      libguestfs >= 1.8.16
    
    Earlier versions may be vulnerable unless a downstream packager has
    applied this patch.
    
    Cc: Hilko Bengen <bengen@hilluzination.de>

commit 29264f6a693922463b3e6383519064f9761854e7
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sat Dec 10 22:16:55 2011 +0100

    Fixed checks for libpython features
    
    The python3.1 package shipped with Debian/squeeze does not have the
    'mu' suffix that was assumed before.

commit f5c9e316d7d2fe23c4b61def53df066a66533989
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 16:13:08 2011 +0000

    Version 1.15.12.

commit 21b3ad32dad3ec41c3cdaee911e76bdb7af0f349
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 15:09:19 2011 +0000

    tests: Add a simple liveness tests for qemu.

commit 9c1b2dac55e491d4a5979db9bca80fa46393e603
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 13:12:43 2011 +0000

    tests: Finalize the order we run the tests.

commit c2eae8ce3144631049d737686efa844fc74e3daf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 13:05:34 2011 +0000

    tests: Put test-tool and comment into own section.

commit 2efc5429a8b1ac444d6c32cc53bfdf6002c867ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 12:15:06 2011 +0000

    tests: Split images -> tests/data + tests/guests

commit 356d48c5a2e4b2936448c150b3adc0180459f761
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 12:00:44 2011 +0000

    tests: Rename extratests -> tests/extra.

commit 3e7ba37d136a41d5ccd913fb8b0b3e3db6118c1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 11:35:43 2011 +0000

    tests: Split regressions -> various subdirectories of tests/

commit 9afce5acdca0bd149d953d9fa9911b0d6f43d342
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 08:40:30 2011 +0000

    tests: Rename capitests -> tests/c-api.

commit 222d304b45a93f9bb3f4a7747708c84112a46780
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 08:34:57 2011 +0000

    tests: Rename caution -> tests/qemu.

commit 4c3f631187249c08548b5d44fd37f04bdd78dbe9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 08:34:08 2011 +0000

    tests: Document new tests/ subdirectory.

commit 415a51e4e4eea1a0c6f2b32ab1273e8dae010a57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 22 08:33:16 2011 +0000

    docs: Arrange directory names in alphabetical order.

commit 406dc7991ecabb5209e9991e4f2500de8b320b95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 20 18:26:20 2011 +0000

    extra-tests: Add an extra suppression for OCaml 3.11.2 in RHEL 6.

commit 7c069a274adbef5af1ace2bdba663b17016339be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 08:38:27 2011 +0000

    fish: Allow events to be processed in guestfish.
    
    Add 'event', 'list-events' and 'delete-event' commands so that event
    handlers can be registered, listed and deleted in guestfish.  The
    event handler is a shell script snippet or host command.
    
    Cc: Pádraig Brady <P@draigBrady.com>

commit 71f0046330862766b985ade7655faa06edcb0ae9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 14 12:07:31 2011 +0000

    python: Missing () in guestfs-python(1) examples.

commit 104f5b623e36b9c8ff18701d58eabb9d80a547a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 9 17:34:01 2011 +0000

    Version 1.15.11.

commit e82144a2ea7bddaafea2e9597653aeb78f9f7d8b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 9 15:30:23 2011 +0000

    fuse: Return EXIT_FAILURE if fuse_main fails.
    
    fuse_main can return any non-zero value on error.  In particular on
    certain sorts of error such as unsupported -o options it returns 1
    (not -1).
    
    Therefore make sure any non-zero return is turned into EXIT_FAILURE.
    
    (Thanks Pádraig Brady)

commit d7e5655e45e95d5abcc497ed189ac227692c416b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 9 09:49:37 2011 +0000

    fish: -i option should fail if / is not mountable, but warn about others.
    
    In particular this stops a problem with guestmount where if the -i
    option half-recognizes the guest OS, it would mount the disk (and
    fail, giving only warnings), leaving the mountpoint unusable.
    
    (Thanks Pádraig Brady)

commit a2b93072ffaa5cce837e78670287654141b6f005
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 8 11:39:58 2011 +0000

    daemon: Fix utimens so it doesn't hang on named pipes (RHBZ#761460).
    
    This also adds comprehensive tests for utimens on regular files,
    directories (RHBZ#761451), named pipes (RHBZ#761460), symbolic links,
    block and char devices.
    
    Note that there is a small change in the (previously undefined)
    semantics of this call: It now sets the time on a symbolic link
    itself, not on what the symbolic link points to.

commit a7a4e066e86e74fd0560de376ef12208573841b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 8 11:15:18 2011 +0000

    daemon: Allow utimens to work for directories (RHBZ#761451).
    
    You don't need to open the file O_WRONLY in order to call futimens on
    the file descriptor.  Opening it O_WRONLY fails for directories.
    Therefore open O_RDONLY instead.

commit 935f4a03a9b0e28fc9a55695a3c775573b3c5d0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 7 12:12:35 2011 +0000

    copy-in/copy-out: Wait for the tar subprocess only (RHBZ#760669).

commit 3331e9084ec9c4684be0b3376f31b98787168fdf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 7 11:46:43 2011 +0000

    fish: Improve error messages when no OS / multi-boot OS found with inspection (RHBZ#760775).

commit ef9353c37ee9c6e7ff89c8cc2a874088cf5b516e
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Dec 6 20:42:11 2011 +0100

    let the user explicitly choose ruby and rake programs

commit c310ba4066ef1644561b695b33e6e6d3817633aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 6 15:10:46 2011 +0000

    Version 1.15.10.

commit aba61d6ccc7ebcbb54a69e5667d6405a32d60316
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Dec 5 18:35:57 2011 +0100

    Fix rpcgen post-processing for out-of-tree builds

commit 910c9f13087e4a86d24cfb2119185b6f3ed8360a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 5 10:36:13 2011 +0000

    ruby: Use RSTRING_PTR, RSTRING_LEN for compat with Ruby 1.9 (RHBZ#760000).

commit 711b896dbf453a8bfe71ea760e218dfd4d043598
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Dec 5 18:06:43 2011 +0800

    blkid: split the RHEL5 which can't support some options
    
    RHEL5 shoult not support '-p', '-i' and '-o export' options.
    But we just split it according to the '-p' option.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 68ff0cb2126655d99f8c67782160e339a46266bd
Author: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Date:   Mon Dec 5 16:57:22 2011 +0800

    TODO: remove the implemented command blkid
    
    Remove the implemented command blkid from TODO lists.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 878d60b368b9a2dbd270a215b35b2e3120718355
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 4 16:47:37 2011 +0000

    Revert "blkid: Use -c /dev/null because RHEL 5 blkid doesn't have -p option."
    
    This reverts commit 6533491b178d18bfab8240cf093be4ef9b547548.

commit 1a2c5be53b536d149c8f7186d0537bcb13520858
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 4 16:47:29 2011 +0000

    Revert "blkid: Fix mistake in previous commit."
    
    This reverts commit c48226a5026816b115ab63b50d3601531aff59dc.

commit ec1348864466e8267fd5372d395ec18a36c45a5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 3 23:16:00 2011 +0000

    blkid: Fix mistake in previous commit.
    
    This updates commit 6533491b178d18bfab8240cf093be4ef9b547548.

commit 77ed77240c12f8d6981bafa7f641d5d7ba06e8ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 3 22:58:03 2011 +0000

    blkid: Use -c /dev/null because RHEL 5 blkid doesn't have -p option.

commit 396428655884c90bf0563320d0654fba4c8c1118
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 3 14:34:52 2011 +0000

    daemon: Use pkg-config to locate Augeas CFLAGS / libraries.
    
    Augeas 0.10 depends on libxml2, so this is now required in the
    appliance (in fact, it was already present).
    
    However this exposed two bugs:
    
    (1) In libguestfs we use a home-brewed recipe for Augeas flags,
    resulting in this error:
    /usr/include/augeas.h:24:25: fatal error: libxml/tree.h: No such file or directory
    
    (2) Augeas's own augeas.pc didn't include the libxml2 flags, so
    it was broken.  This requires a patch to Augeas 0.10, see:
    https://www.redhat.com/archives/augeas-devel/2011-December/msg00008.html
    
    Change to using pkg-config to detect Augeas.  It is still an optional
    library.

commit 63ab671298672d90a39ccfec5d9560de25b752e2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 3 12:59:27 2011 +0000

    Version 1.15.9.

commit b6b67538eee5dfa378db38ee76137ceec3ce6735
Author: Wanlong Gao <wanlong.gao@gmail.com>
Date:   Sat Dec 3 17:07:47 2011 +0800

    NEW API: add blkid command to print the attributes of the device
    
    A NEW API blkid.
    It can print the device attributes.
    Use it after list-devices, we can list ower devices and the attributes
    of each device.
    Use it like:
    blkid <device>
    It's should be a usefull function.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit d9ad75bfada6b479891394bfd224b40cc9f88358
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 2 15:03:19 2011 +0000

    extra tests: Test that valgrind and libtool are installed.

commit 446cf1d3043467ed272a04a8bb7d2b1c6675dc47
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Dec 2 14:04:20 2011 +0000

    inspection: Add a test for MD device mapping in fstab
    
    Check that we properly handle fstab entries of the form /dev/md0 and
    /dev/md/foo.
    
    RWMJ: Add a skip to test if the Augeas lens is not available.

commit 05beecdc1c5e60c7b3bba27cd046d6d71bb8a0e6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Dec 2 14:04:19 2011 +0000

    inspection: Handle MD devices in fstab
    
    This patch fixes inspection when fstab contains devices md devices
    specified as /dev/mdN. The appliance creates these devices without reference to
    the guest's mdadm.conf so, for e.g. /dev/md0 in the guest will often be created
    as /dev/md127 in the appliance. With this patch, we match the uuids of detected
    md devices against uuids specified in mdadm.conf, and map them appropriately
    when we encounter them in fstab.

commit f22fb5d8fe6a0e79e6a3e615ea4239f13a209e11
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Dec 2 14:04:18 2011 +0000

    build: Add more suppressions for valgrind tests

commit ef24a16470cabe7457e1085301f188c05d11a201
Author: Wanlong Gao <wanlong.gao@gmail.com>
Date:   Fri Dec 2 21:47:51 2011 +0800

    mkfs: enable to make xfs filesystems when the device already has a filesystem
    
    Just add the -f option to mkfs.xfs to make sure we can
    make a xfs filesystem when the device already has a
    filesystem on it.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit 7145a4748d50bcf725aa03843cc8adb060f07b72
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Dec 1 22:06:30 2011 +0100

    libguestfs: Added gnulib includes from builddir, as suggested by the Gnulib documentation
    
        Since some modules (`getopt', for example) may copy files
        into the build directory, `top_builddir/lib' is needed as well as
        `top_srcdir/lib'. -- GNU Gnulib manual, section 2.2 Initial import

commit 0c221f437e58a0af060dbf89af5b2b1d826f442c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 30 17:08:33 2011 +0000

    todo: Suggestion for UUIDs in /etc/fstab (thanks Joshua Daniel Franklin).

commit a91120b6191c2ce4e3a82080749ae0a54a521235
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 30 17:08:27 2011 +0000

    ocaml: Fix OCaml dependencies.

commit 80e870d5018a7894d79c85889e967088ce844625
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 23:31:30 2011 +0000

    Version 1.15.8.

commit a26f59877c43a225c175b64dc1cee132adbc8591
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 18:20:05 2011 +0000

    python: Memory leak: Free roots array along handle close path.

commit b464dca0f32a784af11505fefa5ebd30d379771a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 18:19:54 2011 +0000

    perl: Memory leak: Free roots array along handle close path.

commit 55aaf68855b07faae047bb9fba5ed4f29aae71af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 17:47:18 2011 +0000

    ruby: Memory leak: Free roots array along handle close path.

commit 764aa2565a057a4032f86b4d932ffc748c74c27a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 17:51:59 2011 +0000

    extra tests: Add comments about what is not tested here.

commit ff5cea99eeab2e0c2038753a5e791a907215dafa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 17:32:19 2011 +0000

    extra tests: Absolute path for 'run' command.

commit a5f1772d4b812202b508d4d556e0da42503bdb62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 17:22:56 2011 +0000

    extra tests: Split up and reorder tests more logically.

commit 0d738cc61a39f82e2aed1867af55f6005d13371e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 17:20:11 2011 +0000

    extra tests: Test virt-sparsify.
    
    This adds the virt-sparsify --debug-gc option which causes
    virt-sparsify to call Gc.compact before exiting, allowing
    GC and memory problems to be tested.
    
    Add an extratest which runs virt-sparsify under valgrind.

commit 02574b98981c6002ab2b2c4f928a9569442f96a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 17:14:18 2011 +0000

    extra tests: Test virt-resize.
    
    This adds the virt-resize --debug-gc option which causes
    virt-resize to call Gc.compact before exiting, allowing
    GC and memory problems to be tested.
    
    Add an extratest which runs virt-resize under valgrind.

commit e1db3020da1babb8cb6a8771d3f3e344c163cdda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 17:13:45 2011 +0000

    ocaml: Load test should call Gc.compact to flag memory errors.

commit 745f1e17f1c4b370f7f74492e083cb29188d27aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 17:13:17 2011 +0000

    ocaml: Fix memory leak in bindings for functions that return buffers.
    
    RBufferOut binding didn't free the buffer after copying it onto
    the OCaml heap.
    
    Found by valgrind.

commit ace2b00112150564cebd59ef145fb7a458dcc6aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 16:11:21 2011 +0000

    Version 1.15.7.

commit 847d2c417274d1ac4058fb8cb32e32ba9033524c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 13:13:44 2011 +0000

    extra tests: Run C API tests under valgrind.

commit 81e47a7f82a3d4dfbefcecbc99bc66a4816894f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 13:13:06 2011 +0000

    protocol: Memory leak: Free temporary buffer along recv_discard path.

commit ce24ce426e1e2e4ba77f4b808e0f4682d7af675d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 12:52:15 2011 +0000

    extra tests: Run OCaml tests under valgrind.

commit ef04b259b67fa986280a1879c7307bccadeb46f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 12:51:20 2011 +0000

    extra tests: Split VG variable into VG / RUN_VG.
    
    This is just code motion.

commit 7a81dafa5af23ab3394fa2176c8804ae521b5011
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 29 12:25:34 2011 +0000

    ocaml: Memory leak: Free roots array along handle close path.

commit 248d4123cc3be3e5e9a4dec44f24be791b2f7e3b
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Nov 25 13:16:54 2011 +0000

    inspection: Cleanup iteration over fstab entries in inspect_fs_unix.c
    
    Select non-comment labels using an augeas path to return the correct
    nodes in the first instance, rather than applying a regular expression
    to all results.
    
    There is no functional change to the code.
    
    RWMJ:
     - Rebased to current HEAD.
     - Move variable decls to top of function.
     - Some whitespace changes.
     - Remove check for errors from snprintf since it can never happen.

commit 5107e60fa820ca27ac520922ab2f3dc6e629f5fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 28 20:40:01 2011 +0000

    inspection: Add outline support for GNU/Hurd.

commit fbc6cc61d60dbd835fa025e8a1b4cee8144c0a03
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 28 19:12:44 2011 +0000

    fish: When -m option fails, canonicalize device names that are printed.
    
    The error message now looks like this:
    
      guestfish: '/dev/vda6' could not be mounted.  Did you mean one of these?
                /dev/sda1 (ext4)
                /dev/vg_f15x32/lv_root (ext4)
                /dev/vg_f15x32/lv_swap (swap)
    
    Note that '/dev/sda1' has been canonicalized.

commit f07850ce3923d1796bb6e8642d39d530dedfb106
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 28 19:07:30 2011 +0000

    fish: Rearrange code for displaying mountpoints when -m option fails.
    
    This also frees the list returned by guestfs_list_filesystems.

commit 8a9a18d174dc4a58e1afaa9e58130b26b9821ee7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 25 08:34:59 2011 +0000

    docs: Tidy up documentation for md-stop.
    
    This cleans up commit cbd1c45d95c530c8d94103dcc2c521bf5501ef59.

commit abf1a9cf44cad4fb02259c84a126bb72557b5ccb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 20:28:02 2011 +0000

    Version 1.15.6.

commit a9e226e03bd1f41357e0da78e72706d38dc9884c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 20:17:57 2011 +0000

    ubuntu: Add extra suppressions for libnl.1 leaks.

commit b73b055018ea83b0e29f6a669022fa98c3aa60a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 19:36:50 2011 +0000

    Update API support.

commit 235a7ef5290cd790a162f325f4cf42f55d22cb0f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 17:47:13 2011 +0000

    extra-tests: Include valgrind suppressions file.
    
    This updates commit c55bad93fbde03a3daa6058913f02098c45e55f5.

commit 1a109e2baf880219952f718308b447951b954be8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 16:54:17 2011 +0000

    regressions: Allow test-launch-race.pl to be skipped.
    
    export SKIP_TEST_LAUNCH_RACE_PL=1
    will cause this test to be skipped.

commit 7ca2c9c0b7e57259160d2c773960bab9915d0f28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 16:27:36 2011 +0000

    debian: Use mdadm -D --export instead of mdadm -DY.
    
    For compatibility with mdadm on Debian Squeeze.

commit d0d19de230cb351ac78b0ac9ab7fd5b32c1b9cc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 14:08:09 2011 +0000

    Add 'make extra-tests' rule and run extra tests.
    
    These tests are optional, and require a special environment and
    tools to run.

commit f385978cf321f4b6d70aba418e0f57bb529d7dc1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 15:50:54 2011 +0000

    lib: Fix memory leak when debugging enabled (found by valgrind).
    
    If you enabled debugging (eg. LIBGUESTFS_DEBUG=1) then every
    debug message printed would be leaked.

commit 90cf4e4a419e8f331e78bcd8459dcc6a12be2250
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 15:49:49 2011 +0000

    test-tool: Fix multiple memory leaks found by valgrind.

commit b59fda4b6af38f5c0d921ed6d37ed8fa330fce2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 15:49:27 2011 +0000

    filesystems: Fix memory leak found by valgrind.

commit 48b94200e99646d0c37ee5f9496f0bfa74c92375
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 14:39:10 2011 +0000

    part-disk: Change default alignment of this to 64K (128 sectors).
    
    This is the minimum alignment.  1MB would be better.
    
    Note that the exact behaviour is not defined in the API.

commit 039f94aff8178c163ec671f85d89e947b009eead
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 24 14:06:31 2011 +0000

    virt-alignment-scan: Add checks for when API calls return NULL.
    
    In particular, virt-alignment-scan -a /dev/null would segfault
    because of an error returned by parted.

commit 8baf9a11acf3de406219f65e9c54ff49e4c01f8f
Author: Wanlong Gao <wanlong.gao@gmail.com>
Date:   Thu Nov 24 21:06:07 2011 +0800

    New API: md-stop for stopping MD devices
    
    This API is used to stop a md device.
    When we want to move a device to another md array, we should
    stop the md device which contained this device first.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>

commit cb44f58ff9694f2c869cb0caca1e24258be9b397
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Nov 24 12:09:03 2011 +0000

    Rename mdadm_ apis to md_
    
    This change renames the following 2 apis:
    * mdadm_create -> md_create
    * mdadm_detail -> md_detail
    
    This is more consistent with list_md_devices, and removes a reference to an
    implementation detail from the api.

commit 699fde1f1d22b7dbaceefa4b78f957e8c7792db2
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Nov 23 14:00:55 2011 +0000

    NFC: Allow multiple config files in inspect_with_augeas in inspect_fs_unix.c
    
    This change is in support of the addition of MD support to fstab inspection.

commit 31992412a5ddc28f1b9bf1fda304e826f781f780
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Nov 23 14:00:54 2011 +0000

    NFC: Consolidate the error path in check_fstab in inspect_fs_unix.c

commit 646491a4997c601c1ce9ecbc29735e6ac4196e14
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Nov 23 14:00:53 2011 +0000

    md: Inspect MD devices

commit 3c4f74efde0b64e73744607c9c74ec51b94fc045
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Nov 23 14:00:52 2011 +0000

    NFC: Declare and use variables on the same line in inspect.c

commit 4c3064e5a6bca55a676308f417f8c9df154300b9
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Nov 23 14:00:51 2011 +0000

    build: Nothing under images/ should be translated

commit 41b396234b1c03b47c54d33cd6d87328b92a9b26
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Nov 23 14:00:50 2011 +0000

    build: Create an MD variant of the dummy Fedora image
    
    This change involves rewriting make-fedora-img.sh in perl. This allows the
    flexibility to write mdadm.conf containing whichever uuids where randomly
    generated when the md devices were created.

commit c53d6d50872a447cde06b310c1999b7151f81881
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Nov 23 16:35:10 2011 +0000

    run script: Don't overwrite LD_LIBRARY_PATH and PERL5LIB
    
    This change allows the run scripts of virt-v2v and libguestfs to be chained.

commit 8eeb1b1dfd785682f256aceb6b449bd1f6056612
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 22 16:03:37 2011 +0000

    gnulib: Rebase to latest.

commit bea768ab995edc14febac43fd705cca9f49288ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 22 16:40:37 2011 +0000

    Don't rely on implicit promotion of float to double in printf args.

commit 0b64c6017acbe4f952c89673eec67b6c8f45f9b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 22 16:39:37 2011 +0000

    fish: In generated code, put function names on a new line.
    
    eg:
    
    static void
    run_foo ()
    {
    }

commit d04c0ab30de3bc77380699d87a22d09dd30aefa4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 22 13:18:32 2011 +0000

    df, testing: Add notes on virt-df numbers (thanks Kashyap Chamarthy).

commit c1c6973e40e5e66d09a89ca6f85186c6976a3ef4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 22 10:11:10 2011 +0000

    sparsify: Add -o option for passing qemu-img output format options.

commit c66ec94e4ded975388381880d622b995e3082eaf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 22 09:54:52 2011 +0000

    sparsify: Add --compress option.
    
    This adds the -c option to the final qemu-img command.

commit f30e686c87821166902bc862b482e929ca9bed41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 22 09:39:54 2011 +0000

    sparsify: Add auto-detection of .vdi files.
    
    Note that for this to work properly, it requires a patch to
    the 'file' command.  See:
    https://www.redhat.com/archives/libguestfs/2011-November/msg00120.html

commit 005dfa7a52c840c9454ea9be4724c791baf498ee
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Nov 21 15:23:18 2011 +0000

    fish: Add MD devices to guestfish device autocompletion.

commit 75914e84de5bf28958280fe8d752e3f853fd62e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 21 13:25:36 2011 +0000

    Version 1.15.5.

commit bd6c963527c7cf4df9e30e8cc281b97ad7190502
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 21 13:09:59 2011 +0000

    guestfs-testing: Link to libguestfs-test-tool.

commit 0f7c1ba159f7578fc1624ae96be4ca1f25557064
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 21 11:45:54 2011 +0000

    contrib: Update introduction to libguestfs.

commit 1a23adaf2b8462afd805aef67d1e9d8e765e2919
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sun Nov 20 23:57:47 2011 +0100

    out-of-tree build: ruby

commit 02d68f4ee748c177425e3817c41fa2433dc27370
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 20 13:38:28 2011 +0000

    Add guestfs-testing(1) man page.
    
    This contains suggested manual tests that users can run.

commit cc7a23805bf98135ead1405d12610b19d56a47b7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 17 13:33:57 2011 +0000

    Version 1.15.4.

commit d83e899cbba0be184be8c3757b1f82bb96de6c3b
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Nov 17 12:43:49 2011 +0000

    New API: mdadm-detail.

commit 4bf66a4aeeed26fd899aeeeec5e374005ddc9205
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Nov 17 12:43:23 2011 +0000

    Add custom indentation config for vim.

commit 348be59186396458dcca6b3efb527a2354f17604
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Nov 15 21:28:22 2011 +0100

    out of tree build: haskell

commit efeb79ccbbba7c09fc0ce0f7d67509e8be592a54
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Nov 15 21:28:21 2011 +0100

    java: out-of-tree build, don't build static library

commit d4fbb09c4de394842efaf5ef5a7aa0c37fc14ddd
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Tue Nov 15 21:28:20 2011 +0100

    out of tree build: erlang

commit 0ffd04a6d31f3171597b3b60b1c1cfa1a9716859
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Nov 10 17:57:16 2011 +0000

    Update list-filesystems to check md devices.

commit c4d86264a957f18db0cd45d5e4b943be41fe1fab
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Nov 10 17:56:10 2011 +0000

    New API: list-md-devices.
    
    Return a list of Linux MD devices detected in the guest.
    
    This API complements list_devices, list_partitions, list_lvs and
    list_dm_devices.

commit 537657f5f1ca94a09dc9310772d1b123dcd300fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 11 11:01:46 2011 +0000

    New API: mdadm-create for creating MD devices.

commit 7977a7b3654373f997fcdaff03f9df1b0dd3b0b9
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 11 20:26:17 2011 +0000

    32 bit: Fix printf off_t.

commit 8be876d8fef5ebaf9c44ca583d3331a6f80a97df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 11 19:11:02 2011 +0000

    32 bit: Use %td for ptrdiff_t (difference between two pointers).

commit 906591a5d1e53beec756579064fc6aea368913b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 11 13:30:09 2011 +0000

    df: Disable part of virt-df test.
    
    See:
    https://www.redhat.com/archives/libguestfs/2011-November/msg00051.html

commit 52ce2d808aba4b0485529f0ad6c86309824460a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 9 17:54:38 2011 +0000

    New API: Bind the tune2fs command.
    
    Previously we bound the 'tune2fs -l' command so that we could list out
    the tunables of an ext2/3/4 filesystem.  Also commands like
    set_e2label and set_e2uuid used tune2fs.
    
    This commit binds many of the tunables that can be set using tune2fs.
    
    The coverage is not complete, but we can add more later because this
    uses optional parameters so the call is extensible without breaking
    ABI.  The current change gives us enough for using libguestfs within
    OpenStack.

commit 3b94e270a6409dd36c5ba6f82a51631e8ef6f615
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 10 16:34:57 2011 +0000

    tune2fs-l: Add a test.

commit e30a0702cc3b0a11ccb123774d89ec7f67d0cd39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 10 16:33:40 2011 +0000

    generator: Support testing the output of RHashtable functions.
    
    You can use TestOutputHashtable to test the output of RHashtable
    functions.

commit 3f811d704cbc4e5d0f3527c33967380dd79e4a40
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 10 15:53:23 2011 +0000

    daemon: Define safe ADD_ARG macro for constructing arg lists on the stack.

commit a398905ad3ba14b7e20673460000abc15b4b7d9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 9 22:44:47 2011 +0000

    Version 1.15.3.

commit 4ad5c8f92a645e154ba631b7f419dd0926a2a382
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 9 17:48:42 2011 +0000

    ocaml: Fix bindings when a function takes more than 10 parameters.
    
    If any function had more than 10 required + optional parameters, OCaml
    bindings could not be generated.  Currently there are no such
    functions.

commit 7f0f049329e6c8cdc4a0a73fa82a1f1800364e52
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 9 17:47:23 2011 +0000

    tests: Fix bitmask parameter when testing optional arguments.
    
    The bitmask was being constructed backwards(!)
    
    As a result, any test which tested optional arguments didn't work.
    There are very few such tests and they happened not to be affected by
    this.

commit 0241fa6a15779a61d11240c24fb8d84eec449423
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 9 21:21:00 2011 +0000

    fish: More informative documentation of optargs.

commit 0a9f85408704c13791cbfbfb48b538a496673047
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 9 17:53:58 2011 +0000

    ocaml: Compile OCaml bindings and tests with -warn-error.

commit a52f17c6be717c3ca8379acefb5702cf97603603
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 9 17:50:37 2011 +0000

    ocaml: Catch EVENT_ENTER case in test.
    
    For some reason we are not compiling the tests with -warn-error so
    this problem was not noticed before.
    
    This fixes commit 9420eaf44ec4067c3740b91b0be0fede08a0c515.

commit 2033eb07d405cb87192f2fb8e58219bb6faef861
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Nov 8 14:27:49 2011 +0000

    Update FSF address.

commit 374f75e6532b04e0790526c0ac749c794c404897
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 4 15:55:13 2011 +0000

    daemon: Use a private copy of /etc/lvm so we don't modify the real config.
    
    In the libguestfs live case we need to be careful not to modify the
    real /etc/lvm/lvm.conf file (when setting the filter rule).
    
    When the daemon starts, make a complete copy of /etc/lvm in a
    temporary directory, and adjust LVM_SYSTEM_DIR to point to the copy.
    All changes are made in the temporary copy.

commit 3761fa9261eef1a503e0ba43c4a25d523a40b6b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 4 15:30:12 2011 +0000

    daemon: Don't use files with fixed names in /tmp (thanks Steve Kemp).
    
    Although this doesn't matter for the ordinary (appliance) case, it
    matters for the libguestfs live case.  In that case it could cause the
    guest to be exploited by a tmp/symlink attack.

commit 17c6c1cdb8d9002eaffc2ee1ae84efb58352297b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 3 14:47:26 2011 +0000

    Version 1.15.2.

commit f336a9e3e3adbb64e0bb4b2ace76cac00844797a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 3 13:09:54 2011 +0000

    virt-sysprep: Don't use xmlstarlet.
    
    Use virt-inspector --xpath option instead.

commit 80d1d889b0a0bfb66f3948ce7b8edba131d74b5c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 3 13:06:25 2011 +0000

    Add virt-inspector --xpath to run XPath queries directly.
    
    xmlstarlet is good, but not available in Red Hat Enterprise Linux.
    
    Build a simple but sane XPath query parser into virt-inspector
    directly so that we don't need any external tools.

commit da92b2d6d91ddea3f369f004197bb026910d00f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 3 10:45:58 2011 +0000

    resize: Remove requirement for ocaml Pcre library.
    
    This library is not available in RHEL 6, and in any case removing the
    dependency is a simple change.

commit 83d7c25455ebb20533e2fd6c58cfe6f0c4fff24c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 3 10:32:02 2011 +0000

    resize: Add tests for some Utils functions.

commit 71a634b69ddfc5b4de396fc7cd1a9732f6a6a4fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 3 09:48:45 2011 +0000

    python: Use sys.version_info[0] instead of sys.version_info.major.
    
    The major/minor fields only exist in Python >= 2.7.  This works for at
    least Python 2.5 and 2.6.
    
    Thanks to Hilko Bengen.
    
    This updates commit 646142f5136da9cfe2b908703a822c53350f70e9.

commit 29b831ff3b5db23be07babf2f0951f2bbc5b79bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 2 19:43:53 2011 +0000

    python: Fixes for Python 3 (RHBZ#750889).
    
    These fixes allow libguestfs bindings to work with Python 3 (tested
    with Python 3.2)
    
    You can select which Python you compile against by doing:
    
      PYTHON=python ./configure && make && make check
    
    or:
    
      PYTHON=python3 ./configure && make && make check

commit 5e20d41f0f1237bcef5a72c544cca77a0a75bcc0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 2 19:42:29 2011 +0000

    python: Pass $PYTHON environment variable to tests.
    
    If the user set PYTHON when configuring, this variable is not passed
    through to the tests, so it is possible the tests will fail because
    they are testing the wrong version of python.  By passing $PYTHON
    through to the tests we ensure that we test against the same version
    of python that we configured with.

commit 590afc60767586ca5f8dd51508f7d43bc90ac7b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 2 18:19:15 2011 +0000

    python: Include <config.h>.
    
    Ooops ...

commit c4f5d70777ee07af555b4da0e8ba0779a479cf75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 2 18:18:14 2011 +0000

    python: Correctly check for Python major/minor.
    
    The manual for sys.version warns that you should not parse the string,
    which we were doing.  It would have failed on python "2.10" or
    similar.
    
    Do it correctly using the sys.version_info struct instead.

commit 6d005d60db3543344fc1c3dc7ca596f3dc77acea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 2 13:23:37 2011 +0000

    contrib: Use PNG images as fallback for IE compatibility.

commit 0c46404a87176b30b3fba7add6714b34af96b44f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 1 17:51:00 2011 +0000

    contrib: Update talk.

commit 6bbaadd296b0d3b0121dbbfa65e2eff12475b262
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 1 15:11:16 2011 +0000

    Version 1.15.1.

commit f63ac24fbc7cfc15e14588f4014c7c18232d8866
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 1 14:10:49 2011 +0000

    contrib: Add all contrib files to EXTRA_DIST.

commit 164960071226e9a05e08251dbe483d1006c74825
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 1 14:07:59 2011 +0000

    contrib: Add libguestfs talk.
    
    This is a short (10-15 min) talk that I give to introduce the main
    features of libguestfs.  The "slides" are in the form of a complete
    self-contained HTML page with a handful images that can be easily
    distributed before the talk.

commit 40137d594e0d8792bac8a49843d509daf642b00b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 1 09:47:25 2011 +0000

    rescue: Add --suggest option to suggest mount commands.

commit cd3cd98992143f770c9f466db539d7eb0e5253e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 1 09:47:01 2011 +0000

    fish: Use size_t instead of int when counting strings.

commit 86ad794a20bbf709809a1db723982c107d7d02ee
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Oct 31 16:47:50 2011 +0000

    Fix debug help error message.
    
    When given an invalid debug command, libguestfs responds with the
    error message:
    
      libguestfs: error: debug: use 'debug help' to list the supported commands
    
    However this command does not work, as debug requires two
    arguments. This change updates the message to prompt the user to use
    'debug help 0'.

commit 37477989b87c0cbb25104234882a519a76d94b5d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 31 16:44:55 2011 +0000

    appliance: Add 'mdadm' package.

commit 62ee0fd97bb4c66a147a42c2d7b49114192e7688
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 27 17:40:31 2011 +0100

    perl: Add %guestfs_introspection hash with introspection information.
    
    Because this is a useful introspection API, it is a candidate for
    being backported into older stable branches.

commit 0a513d3507fd738bebbce1116b9b9c0df78e73ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 27 16:06:44 2011 +0100

    Version 1.15.0.

commit 588ef1934d70c15f79b379c3095cfad6d243444a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 27 14:26:46 2011 +0100

    Pull latest translations from Transifex.

commit 287afab74a63facd8b3b29a18086a3696f10e399
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 27 13:45:22 2011 +0100

    generator: Remove DangerWillRobinson.
    
    This warning was applied unevenly.  Potentially any command can be
    dangerous or safe, so it was a needless warning.

commit ef43f7696600ccfd20dd899f52aef40ce6ae91a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 27 13:44:02 2011 +0100

    fuse: Skip guestmount test if setfacl is not installed.
    
    This dependency is optional, don't fail the test if it's not
    installed.

commit 212aea83c94218aa621c8534b54bdf264f20f652
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 27 13:36:15 2011 +0100

    virt-sysprep: Skip test if xmlstarlet is not installed.
    
    This dependency is optional, so don't fail the test if it
    is not installed.

commit 047f640b8f930eea4ec665e4b37117a24a8dd268
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 27 13:30:22 2011 +0100

    virt-alignment-scan: Add additional data for 4K sector drives
    (thanks Matt Booth).

commit 6467a52dd327b532ba49269ba4afbad0f7424942
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 27 12:28:47 2011 +0100

    test-virt-sparsify: Relax size_after constraint (for Debian).
    
    size_after on Debian was 10136K.  The host filesystem was ext3 (vs
    ext4 for Fedora where we did the original testing).  Probably indirect
    blocks (vs more efficient extents on ext4) causes the difference,
    although I did not look at it in detail.

commit 2fa3ea81b5b8659af982f0da875c7dda9a150f5c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 27 10:55:06 2011 +0100

    Update RELEASE-NOTES for 1.14 release.

commit c431d2fadd2bd5084e911cd1bef57a3004356d41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 27 10:54:55 2011 +0100

    Update ROADMAP for 1.14 release.

commit 82a18bba4ef82974121c138753ce27dee0c94abb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 26 22:22:32 2011 +0100

    Update API support.

commit 4283c553351ab2baf9f912d2b60ad06f2ff205bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 26 21:12:18 2011 +0100

    Version 1.13.26.

commit 5432afd6206bec28771fd274a7a8976a413ecd3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 26 20:53:30 2011 +0100

    guestmount: Fix --live option (RHBZ#744795).

commit 3dada05153422db33488352b84b6a5bd9fa7f05b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 26 19:30:23 2011 +0100

    fish and other tools: -d option uses readonlydisk="read" (RHBZ#747290).
    
    Tools like virt-edit would not be able to edit disks marked as
    <readonly/> in the libvirt XML.  It's not clear if this is a bug or a
    feature.

commit 8fff9bb98efa3ea971598a7b6f74e33896bca443
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 26 19:27:01 2011 +0100

    add-domain: Add readonlydisk optional argument (RHBZ#747290).
    
    This optional argument controls how <readonly/> disks in
    the libvirt XML are handled.  It can be set to one of:
    
      "write" (default) - add them R/W
      "read" - add them R/O
      "error" - throw an error if asked to add them R/W
      "ignore" - ignore these disks
    
    I have added limited regression tests for this feature.  However
    libvirt's test:/// XML does not allow you to specify that a domain
    starts off shut down, so we cannot fully test this.  Instead I tested
    it by hand.

commit 61402a93ac5643a02825978ec77309c35dbbe38e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 26 17:47:34 2011 +0100

    libvirt: Detect if a disk has the <readonly/> flag.
    
    This changes the private function guestfs___for_each_disk so that the
    <readonly/> flag on libvirt disks is detected and passed through to
    the callback function.

commit a0d7368e8de80eaea2d9cdecef9671e41d1e3136
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 26 15:55:29 2011 +0100

    test-user-cancel: Make this test choose smaller cancellation numbers.
    
    Use a Gaussian distribution for random numbers so that smaller numbers
    are chosen more frequently.
    
    This also exposes a bug in this test which only happens when small
    numbers are chosen:
    
    If the test thread starts up quickly, it can get to
    guestfs_user_cancel before the guestfs_upload command has happened in
    the main thread.  This causes the cancel to be ignored (correctly) and
    we end up in the second loop writing data until the disk runs out of
    space.  Fix this by repeatedly asserting the cancel flag in the second
    loop.

commit fc329c8397b6b386ea6fc5b8c93d959b535fd1ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 26 14:09:39 2011 +0100

    Version 1.13.25.

commit df4cfc2bfa7eba6c1034664a7f80eb2a66d840b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 26 13:56:18 2011 +0100

    virt-resize: Be much more conservative about moving first partition.
    
    Commit 2910413850c7d9e8df753afad179e415f0638d6d caused Windows 7
    resizes to break with the 0xc0000225 boot error.
    
    Change the --align-first auto (default) option so that it is more
    conservative about when it moves the first partition.  In particular
    it doesn't move it if it's already aligned (as it is for Win7), nor if
    there is more than one partition (also Win7).
    
    Tested with: Windows XP, 2003, 7, Ubuntu 10.10 and RHEL 5.

commit ecfadbbf56efde07c51c976a93f06efcde9cf705
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 26 13:55:38 2011 +0100

    Flush stdout for progress bars used by guestfish, virt-resize.

commit 3e021f652b4d101f88b8bd62988e2eb5f1a87353
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 19:03:38 2011 +0100

    virt-resize: Handle extended and logical partitions (RHBZ#642821).

commit 9c4f4c85ade56f17bad69541ecb37e6279ee1975
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 14:18:29 2011 +0100

    resize: Get the partition table type of the source disk earlier.
    
    Also we only permit MBR (DOS) and GPT partition tables.  In theory
    previously we allowed other partition table types, but it is unlikely
    that it would have worked in reality.

commit 776b181ed21a485484c9a003d4ad526a4f5d6bad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 22:49:55 2011 +0100

    New APIs: copy-{file,device}-to-{file,device}.
    
    The four new APIs:
    guestfs_copy_device_to_device,
    guestfs_copy_device_to_file,
    guestfs_copy_file_to_device, and
    guestfs_copy_file_to_file
    let you copy from a source to a destination, between files and
    devices, optionally allowing source and destination offsets and size
    to be specified.

commit f1af43bf3c4ff848471b3bd0122cf69a7fb8ac01
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 14:14:35 2011 +0100

    ocaml: Make sure virt-resize, virt-sparsify are rebuilt if Guestfs API changes.
    
    Add a dependency so these tools are rebuilt from scratch if the
    Guestfs API changes.  This prevents the error:
    "[...] make inconsistent assumptions over interface Guestfs".
    
    This commit includes the generated changes to .depend files.

commit 887636a306126cca11a23136e8b022a2c5b9501e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 12:47:16 2011 +0100

    virt-filesystems: Add MBR partition type byte to the output.
    
    This adds an extra column containing this information, looking
    like this:
    
    Name       Type        VFS   Label  MBR  Size  Parent
    /dev/sda1  filesystem  ntfs  -      -    6.0G  -
    /dev/sda1  partition   -     -      07   6.0G  /dev/sda
    /dev/sda   device      -     -      -    6.0G  -
    
    In particular you can use this to tell if a partition is an extended
    partition, because the field will contain '05' or '0f'.

commit d96a098b32bdb5c1d9b85b1a4f41b268ecfd3877
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 12:46:05 2011 +0100

    New API: part-to-partnum
    
    This converts a partition device name (eg. /dev/sda1) to a partition
    number (eg. 1).  This is useful in conjunction with the parted APIs
    that mostly take a disk device + partnum.

commit 1915daefc8e55cf6f717142a4c5c38c2788ba544
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 25 10:55:20 2011 +0100

    virt-cat: Handle Windows paths and drive letters (RHBZ#693359).

commit c70ffe73273a426d66ddb9c3c0f84baa3fa8ff70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 24 17:36:07 2011 +0100

    Version 1.13.24.

commit 7f7bca3abd6f31484929b0dfe53af347bde95b79
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 24 13:24:16 2011 +0100

    Add test for qemu broken -machine option (RHBZ#748266).
    
    Also add this option, if necessary, when testing for virtio-serial
    support.
    
    When the workaround is enabled, we specify machine type 'pc'.

commit 122f0616e16a932e55946c5c7d45dbcf6aea9d41
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 24 15:35:47 2011 +0100

    Revert "out-of-tree build: daemon"
    
    This reverts commit 025dba7f803419f510fd8f085ce693838af82878.
    
    If build and source directories are the same, you get this error:
    
    make[3]: Leaving directory `/home/rjones/d/libguestfs/generator'
    make[2]: Circular guestfs_protocol.c <- guestfs_protocol.c dependency dropped.
    make[2]: Circular guestfs_protocol.h <- guestfs_protocol.h dependency dropped.
    rm -f guestfs_protocol.h
    ln  guestfs_protocol.h
    ln: accessing `guestfs_protocol.h': No such file or directory

commit 139680c47e0c0977797578d26c69e6451c6b1c19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 22 15:55:48 2011 +0100

    virt-win-reg: Document syntax for deleting keys and values (RHBZ#737944).
    
    NB: This requires hivex >= 1.3.2 before this syntax becomes true.

commit f623fbb476f05029db9e2fabe7f3a49db3bc8de7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 21 22:48:10 2011 +0100

    virt-make-fs: Refresh man page.

commit 5c5250ba1337812db408f463be3bfbd4a17fe528
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 21 17:31:03 2011 +0100

    Fix ./configure --disable-erlang.

commit 8738991d433a1beb173439a88e40eff4fb6f15b7
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Oct 20 14:20:56 2011 +0200

    out-of-tree build: fixed bindtests and inspector

commit 99f4e22c526c9fafecb7d4c23ad114e982e19615
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Oct 20 14:20:55 2011 +0200

    out-of-tree build: fix HAVE_OCAML=false case

commit 5b5d74270511f1688e4643feed7da24af215659d
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Oct 20 14:20:54 2011 +0200

    out-of-tree build: daemon

commit 14ed9f66fe83d6fb781f2de6fda9d23251208175
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 21 16:29:20 2011 +0100

    add-drive-opts: Correctly handle unreadable and unwritable files (RHBZ#747287).

commit b1a050bb17ffc6ad802511b293736d4b35f3445b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 21 16:02:34 2011 +0100

    virt-make-fs: Set MBR partition type byte correctly (RHBZ#746295).

commit c80accef8d23246be17511de5323448891307e20
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 21 12:49:18 2011 +0100

    lib: Common code for formatting the qemu -drive parameter.
    
    This is just code refactoring.

commit c7ad51cb0bb5602da3bcf656a51ad3ae22c245d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 21 12:28:45 2011 +0100

    Allow compilation without hivex (RHBZ#723474).

commit 69bcda81cc4e873cc4eb3d528d8c5d8bad9a9eeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 21 12:15:36 2011 +0100

    po-docs: Force make update-po on first build from git.

commit 1ed4c4688af727ca4ff81f91be1e9bf1a7cec275
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 20 22:18:03 2011 +0100

    Version 1.13.23.

commit ff747fdd60931d5e4239d1af196a548a8277bfb5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 20 23:04:41 2011 +0100

    appliance: udev-174 moves udevd to /lib/udev/udevd (instead of /sbin/udevd)

commit cafc2651241c16283f34042d42f53309275a86f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 20 22:06:33 2011 +0100

    resize: Add --align-first auto|never|always option.
    
    The first partition can now be aligned.  We fix the bootloader
    correctly for Windows by adjusting the "Hidden Sectors" field.

commit b3df1caa6a5f49671ae6b26a309f27417825931b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 20 16:49:15 2011 +0100

    resize: Add --alignment flag to allow partition alignment to be picked.

commit 664c7b505a0855f45500f6c5dd099e1735995fdd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 20 14:46:11 2011 +0100

    resize: Refactor the code for creating target partitions.
    
    The old code mixed the business of planning the layout of the target
    partitions with the creation of the target partitions.  The
    replacement code separates these into two tasks: firstly we create a
    new 'partitions' list with the target layout, secondly this directly
    drives the creation of the partitions.
    
    As part of this change I have *removed* the old code that was supposed
    to handle extended/logical MBR partitions.  It simply didn't work, and
    didn't have any hope of working, and there is a separate bug open to
    fix it.

commit b541a10eb7859b45e28a5aeb5a78a32e0fa892ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 20 14:53:13 2011 +0100

    resize: Remove p_size field from partitions structure.
    
    This field simply contained a duplicate copy of p_part.part_size.
    
    There is no functional change in this commit.

commit 430c9e496699501fc130be48ee2085d844d3b326
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 20 10:58:21 2011 +0100

    Update RELEASE-NOTES.

commit ffde49d2a6c38a81e2cef83d3b72bde59104ad8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 19 17:37:25 2011 +0100

    Version 1.13.22.

commit 5b375a406b2f25657e05b67771f500e4c9b1ffcd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 19 17:12:07 2011 +0100

    Pushed and pulled latest translations from Transifex.
    
    Fixed one bug in the nl PO file:
    
    msgid "security: cached appliance %s is not owned by UID %d"
    msgstr "beveiliging: UID %d is geen eigenaar van toepassing %s in cache"
    
    should be:
    
    msgid "security: cached appliance %s is not owned by UID %d"
    msgstr "beveiliging: UID %2$d is geen eigenaar van toepassing %1$s in cache"

commit 710acafe1eb5f61c98811fe5f1e85af67183e629
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 19 15:43:37 2011 +0100

    inspection: Return root devices sorted.

commit 94bfdf670cc8b711ee0a40833733e9dce3cf786f
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Oct 18 13:42:16 2011 +0100

    inspect: Handle cciss devices in /etc/fstab

commit 9ce2b12dbeb52583d0c2d9894c213e1c3fe513f6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Oct 18 13:30:40 2011 +0100

    inspect: Don't assume number of captures in match functions
    
    It is possible for the pcre library to return a variable number of captures for
    a single regular expression. e.g.:
    
      ^/dev/(cciss/c\d+d\d+)(?:p(\d+))?$
    
    This will return either 1 or 2 captures depending on whether the device has a
    partition suffix. The current match wrappers don't allow for this, and require
    that a predictable number of matches are returned.
    
    This change updates match, match1, match2, and match3 to ignore the specific
    number of matches returned. Instead, any returned captures are assigned to the
    given arguments, and any remaining arguments are set to NULL.

commit 09d9c0e9763c8b0953cc196561f41c015f7757a1
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Oct 18 11:01:01 2011 +0100

    inspect: Add drive naming hints
    
    We currently use a heuristic to guess how drive names we find
    referenced in the guest map to drive names in the appliance. If this
    heuristic fails it can cause inspection to fail.
    
    This change adds a new 'name' option to add_drive_opts, which allows
    the user to explicitly pass the name of a drive to libguestfs if it is
    known. This change also updates the fstab-parsing inspection code to
    use this information if it is available.

commit 10d7f06abecc98abce95d721057f2f805dad9e3b
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Oct 17 16:07:31 2011 +0100

    NFC: Remove unnecessary goto

commit b5a24c6c67947d2e4f249f49609fc1d8bcae2f34
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Oct 17 15:28:47 2011 +0100

    launch: Store drive information in guestfs_h
    
    This is a NFC on its own, but provides a place-holder for drive metadata which
    can be used after launch.
    
    Fixes by RWMJ:
    
     - Fix the tests: this requires a new internal function 'debug-drives'
       that dumps out the g->drives information so it can be checked in
       two of the tests.  Previously these tests used 'debug-cmdline'.
    
     - Test file existence / use_cache_off in the add_drive_opts function,
       not when launching qemu in the child process.
    
     - Call free along error paths.
    
     - Add comments.

commit e846c2ab6ebea6134a5fbc0fcc1bb2cb9a65e781
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Oct 14 15:00:32 2011 +0100

    inspect: Fix fstab device mapping for >26 disks
    
    The regular expression matching disk name assumed that there was only a single
    letter suffix. This change handles a naming scheme for any number of disks.

commit ff8b12db2fc97944f8a8d62eead4ecb5fd3ccdf7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 19 15:20:19 2011 +0100

    launch: Ensure g->cmdline is allocated before assigning g->cmdline[0].

commit 1c2f699b899e5019be3c8e57e050b252c78bc74e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 19 13:42:59 2011 +0100

    valgrind: guestfish -i: free strings before exit.
    
    This isn't really necessary, but it keeps valgrind happy.

commit 6c1cc88a8a0d06811bacf882513c6eec0680c6ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 18 15:22:01 2011 +0100

    Ubuntu 11.10: Create /run and /run/lock if not already.
    
    In real machines these directories are a ramdisk.

commit 1e96e1b36e794d699a41e065ac58ba4e83122bf3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 17 15:26:43 2011 +0100

    virt-sysprep: Fix link in documentation.

commit d262a6f53a9c0a25c64e27ffdc295e37b420550b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 17 09:59:43 2011 +0100

    Skip guestmount and virt-sysprep tests if no /dev/fuse.

commit b012599d93e9f1566f1348c392bf90a3bc17200f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 15 17:51:16 2011 +0100

    virt-sysprep: Fix test to use guestmount and virt-inspector binaries that have been built.

commit 22ef6b9aa175136c74fac3752b2e56685034f338
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 14 22:08:20 2011 +0100

    appliance: Fedora cryptsetup-luks renamed to cryptsetup.
    
    Therefore we need both names to be listed in the file.

commit 42c715355e72469b869c2607f59a782038d637c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 14 22:08:14 2011 +0100

    roadmap: Fix Bugzilla URL.

commit 51a285343ef1f1c70e49ec8eeece3f10b81eea5e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 14 18:22:46 2011 +0100

    More TODO items.

commit 7725b90deaf71980a84dab065793eeb9fa811e8a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 14 18:14:59 2011 +0100

    Update RELEASE-NOTES file.

commit 49f1df0eb2d9a914f28ac37dc166831729235f37
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 14 15:14:57 2011 +0100

    Version 1.13.21.

commit 919fcd84433cc7a59fe355d188d2431f1d46fedd
Author: Erik Nolte <erik_nolte@acm.org>
Date:   Thu Oct 6 15:56:40 2011 -0600

    Use ArchLinux's new kernel package "linux".

commit 10600e6e2978c5855b888273cb3291f288a2d4d5
Author: Michael Scherer <misc@zarb.org>
Date:   Fri Oct 14 01:05:05 2011 +0200

    Add basic support for netbsd detection.

commit 8841408d1669251f54aac24d69b6049840f23075
Author: Michael Scherer <misc@zarb.org>
Date:   Fri Oct 14 01:05:07 2011 +0200

    Add support for pkgsrc, default NetBSD package manager.
    
    For now, only detect the tool, but support from reading
    installed package could be added later ( may require either
    a package of pkgsrc, or a smaller tool to read the db ).

commit ef7f7b46db571de625a5e2e5ac8703c5566632d6
Author: Michael Scherer <misc@zarb.org>
Date:   Fri Oct 14 01:05:06 2011 +0200

    Add support for mounting ufs from NetBSD, and fix FreeBSD detection on Fedora 16
    
    While testing on Fedora 16, I noticed that Linux will mount the disk
    without trouble by using automatically ufstype=old, and yet do not
    let us read the directories. So we should start directly with usftype=ufs2,
    and if it fail, try 44bsd, as used for netbsd and openbsd ( as seen on
    http://wiki-static.aydogan.net/How_to_mount_FFS_partition_under_Linux ).

commit 1acde7b02c3a078b48b1c9d3643414b5f0e26ba0
Author: Michael Scherer <misc@zarb.org>
Date:   Fri Oct 14 01:05:04 2011 +0200

    Add the Opensuse logo ( thanks to Vincent Untz )
    
    Like Ubuntu one, it may not be always present.

commit b9f4250b6ec39ab83bf7a44237258aa2f0148e76
Author: Michael Scherer <misc@zarb.org>
Date:   Fri Oct 14 01:05:03 2011 +0200

    Add Opensuse and zypper detection support
    
    This would also erronously detect SLES as Opensuse.

commit 9b5b43d8c0aaa918bf0722158d00527e79ed795f
Author: Michael Scherer <misc@zarb.org>
Date:   Fri Oct 14 01:05:02 2011 +0200

    Add support for Ubuntu logo
    
    Ths logo is present on Lucid Lynx, but may not always be installed, like
    in case of a minimal installation ( or server ). While Edubuntu and Kubuntu
    have different logo, I didn't check where it would be placed.

commit 3a1dd43589591c26c75d9feed335ebdc6450da93
Author: Michael Scherer <misc@zarb.org>
Date:   Fri Oct 14 01:05:01 2011 +0200

    Detect Mageia distribution

commit ce886fcf16023fdaf4f79f953c3c6aca9c105d73
Author: Michael Scherer <misc@zarb.org>
Date:   Fri Oct 14 01:05:00 2011 +0200

    Partially fix --disable-erlang
    
    Without this, configure will always enable erlang, no matter what
    argument are passed. Now, we can disable it, even if configure still
    need the erlang compiler for some obscure reason.

commit 7cf54d3fed9bff15e570e80f9fd40ccce652bb6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 14 08:36:00 2011 +0100

    virt-sysprep: Add cron-spool, mail-spool, utmp.

commit 8d133ce6ac4495d4639a9374522aacd697b24b22
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 23:30:13 2011 +0100

    virt-sysprep: Use /dev/urandom instead of /dev/random.

commit a5a6040df32500112975fa96a57dad8930e76fda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 23:29:58 2011 +0100

    virt-sysprep: More clarifications to the man page.

commit 62feb972493f13ae05bd1fe1a0fb13b92de5cd32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 23:24:28 2011 +0100

    virt-sysprep: Clarify docs on enabling operations.

commit d9e81a1cf32d30996bf3b4d1df3b92b57e13b36b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 23:20:27 2011 +0100

    virt-sysprep: Add rhn-systemid.

commit 7f8fc1fbcb4402788a503c25add5653ee865b899
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 15:37:56 2011 +0100

    virt-sysprep: Switch to using guestmount, add more features.
    
    This switches virt-sysprep to use guestmount instead of guestfish.
    This makes the script a little bit easier to modify for sysadmins.
    
    This commit also adds:
    
     - dhcp-client-state
     - dhcp-server-state
     - logfiles
     - random-seed
     - smolt-uuid
     - yum-uuid
    
    SELinux relabelling, and a section on security in the manual page.

commit 83cad7cde2c07e25377eb8fb6e7bb62c50688552
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 15:07:41 2011 +0100

    virt-sysprep: Use Augeas for config file manipulation.

commit 6bfdb44c7c91e3f258e456981cea9f3a3100e5ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 14:30:35 2011 +0100

    virt-sysprep: Add prepend_line utility function.

commit 14dac1782bd44d0c2840d7f9cb8b3778589d231e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 11:56:52 2011 +0100

    fish: docs: note how to clean up the remote process properly.
    
    Killing it is always a bad idea, because the qemu subprocess will be
    left hanging around.  The best thing is to send the exit command.
    
    This also makes the change to virt-sysprep.

commit 5aa6569b93d9f6f03e376828c963020a71954cb5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 11:54:18 2011 +0100

    fish: Close guestfs handle explicitly before exiting.
    
    NOTE this is just a cleanup.  It is NOT necessary for correctness,
    since libguestfs itself is correctly closing the handle in the exit
    handler.

commit 8ac695fe231f022c4c54ab5b56151a23b6c39032
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 11:34:04 2011 +0100

    virt-sysprep: Trap ERR as well as EXIT.

commit 4070f0d1adfe45ca00e1315fa1178dbd68354453
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 11:13:05 2011 +0100

    guestmount: Add note to man page about 'fuse' group for Debian.

commit 71a9248e4db0e2cf348cf23d62b7a1eab8610eb9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 11:09:31 2011 +0100

    virt-sysprep: Simplify calls to guestfish --remote.

commit 68086a815fce72f36bb3e983e61b7fef884ffebe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 10:36:24 2011 +0100

    virt-sysprep: Further TODO items (thanks Nikita Menkovich).

commit b19140a6cee9ead9f3ae8ab815d4aa4a40fc3360
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 13 10:36:24 2011 +0100

    virt-sysprep: Further TODO items (thanks Marko Myllynen, James Antill).

commit 3efcf16e0538b75c20468edc7384f99023877ce9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 11 20:59:29 2011 +0100

    Version 1.13.20.

commit 76f47bd800091c9c3004a3595674d9957f04c77a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 11 19:20:53 2011 +0100

    virt-sysprep: Update TODO list again.

commit 76a92b6384f6bdcdfd30abac50a1c47bc860a4da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 11 18:04:46 2011 +0100

    virt-sysprep: Update TODO list (thanks Steve Grubb, Dan Berrange).

commit 8a789959319d55fccc9f45ce890f16d9263c0215
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 10 15:13:40 2011 +0100

    TODO: More virt-sysprep suggestions (thanks librarian).

commit 07c04c66a3f94327deabbb5a8e0413e8b3295dc5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 10 13:26:15 2011 +0100

    Add systemtap/DTrace probes.
    
    Mainly this is a documentation change.  However a sample of
    DTrace-compatible userspace probes are also added.

commit d3f9e4e02bb20e3d9b024964221709ac2835300e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 10 09:51:03 2011 +0100

    Update TODO file with future plans for virt-sysprep.

commit db17c28a7414a032866b317ebe96d3960aa56ca2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 8 13:59:13 2011 +0100

    Version 1.13.19.

commit 6b40230f6684d68caebaaca011ac43a630323e70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 7 19:22:11 2011 +0100

    New tool: virt-sysprep: system preparation for guests.

commit 276babc30fc46c2a4ad3e7f674df8c8bdc9cc161
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 7 19:20:36 2011 +0100

    fish: Add man page section on calling guestfish remote robustly from bash.

commit a7a3523ba4dbe2d98ebb33cf48b0a9c28cdb018b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 7 13:52:39 2011 +0100

    virt-alignment-scan: Fix SYNOPSIS in manual page.

commit bc652bdcec9cb1c169730b66860cc241be97feb0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 7 13:42:27 2011 +0100

    Makefile.am: Fix comment.

commit d487b903db1325f4e347a63af979d28771a7d209
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 6 17:37:01 2011 +0100

    virt-alignment-scan: docs: Add link to RHEL Storage Administration Guide.

commit 56d188afdf3ed0cfe8eec8965cd9ae23dd4dabb3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 6 10:23:38 2011 +0100

    virt-alignment-scan: More information in man page.
    
    Thanks Mike Snitzer.

commit b4d5092cbe3b5dc5a63bf17b903b71e0dc373795
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 6 10:22:16 2011 +0100

    virt-resize: Align partitions to multiple of 128 sectors (instead of 64).
    
    This gives us effectively 64 KByte alignment, optimal for all current
    types of storage.

commit 7d70dfd37bf57d270d712599f3686ebd66603cfe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 5 19:12:34 2011 +0100

    Update RELEASE-NOTES file.

commit 79bee77cfbac3fbb426e524494271a0150610ee6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 5 18:13:38 2011 +0100

    Version 1.13.18.

commit 23b52a33f5c7a9085fb6dfb3e24d3bdef18c1daf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 5 15:06:10 2011 +0100

    New tool: virt-alignment-scan to check alignment of partitions.

commit 42e123b57cd45a67c29c58aad4b6145a46b42705
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 5 14:38:07 2011 +0100

    docs: Add directory sections for resize/ and sparsify/

commit 1df5d3422b6d5cc0411ff2d8c0dfd0a7febec7d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 4 22:42:42 2011 +0100

    Update RELEASE-NOTES file.

commit 4e5ee0bc63a321098d996f5c27df9034c8fc3aac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 4 20:00:42 2011 +0100

    sparsify: Fix --ignore option to work on canonical device names.

commit df699d49cdfd23157279c9604d90420e410d3060
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 4 20:00:21 2011 +0100

    docs: Clearer language in virt-sparsify man page.

commit 4d61f6a1dfa327a7eba52c9b7e5b8a1b46a548c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 4 19:24:42 2011 +0100

    Version 1.13.17.

commit d8b914ad1b51120555f006eba34391d06eb6680b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 4 11:02:30 2011 +0100

    New tool: virt-sparsify to make disk images sparse.

commit 27cfc28a294e47665db5fe3d15fba56b15874560
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 4 10:58:25 2011 +0100

    docs: Add virt-resize to list of links in guestfs(3).

commit adf87006128a740285012818e424bec529730930
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 4 10:58:02 2011 +0100

    docs: virt-win-reg is written in Perl, not virt-resize.

commit 074f4c91f3b83e65fa2849e91908c097b80d406c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 4 10:57:05 2011 +0100

    Update API support documentation.

commit 5c6d4dfb0a976ada08ae089257c40c2f080fc9c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 1 14:35:05 2011 +0100

    Version 1.13.16.

commit 16576ac42b3edc4432e763f1ad0630151fdcb557
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 1 10:42:05 2011 +0100

    mount: Not deprecated any more.
    
    This updates commit 5c2f1a2d9433eeb5aebeec26f0412c703bbe7269.

commit 9965159d973fab75fefebe5f56b7fdbc9db070a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 1 08:20:50 2011 +0100

    mount: No longer implicitly add -o sync,noatime options.

commit 55053e65d89431138cf2fa6be6c7f2ed28fe6dd9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 29 16:08:20 2011 +0100

    daemon: mkswap --help output changed, breaking linuxfsuuid group detection.

commit db1a127ac77e02b47175c84784e1f5a3d14621e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 28 22:13:27 2011 +0100

    Version 1.13.15.

commit 89684db3f52dd9683859bfc5258dfaf39dfba7b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 28 14:39:31 2011 +0100

    New API: set-smp, get-smp
    
    These calls allow you to change the number of virtual CPUs assigned to
    the appliance.
    
    This also adds a --smp option to virt-rescue.

commit 7657905a99d8ff801b0934c4a7a9285d267b47e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 28 11:14:06 2011 +0100

    New APIs: compress-out, compress-device-out.
    
    These APIs let you copy compressed files or devices out from the disk
    image.
    
    Compression is useful for large images which are mostly zeroes.  We
    cannot currently do sparseness detection, and compression gives us a
    form of zero detection for free.
    
    Example usage:
    
    $ guestfish --ro -a /dev/vg_pin/F16x64 -i \
        compress-out gzip /etc/passwd /tmp/passwd.gz
    $ file -z /tmp/passwd.gz
    /tmp/passwd.gz: ASCII text (gzip compressed data, was "passwd", from
    Unix, last modified: Sun Aug 28 14:40:46 2011)

commit ad33ad26b1037946eee3e7b4ff10d0ce0ccc4dc3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 28 14:17:53 2011 +0100

    daemon: Move useful is_zero function to header file.
    
    Code motion.

commit 678bd5fb020ed46a0bd71c11a5264cab6a94be6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 26 13:34:12 2011 +0100

    Add no_timer_check to disable faulty test during boot (RHBZ#502058).
    
    See:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=502058#c15
    https://bugzilla.redhat.com/show_bug.cgi?id=698842#c8
    
    This updates commit 79e66f89e2f6c27486476d7857da58feb491bf5c.

commit 9f6699153e46993577046715bcb8290f05cf93de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 26 09:58:46 2011 +0100

    docs: Show how to use a qemu wrapper to edit the qemu command line.

commit c98fd9bf1fe511fe42771b28071c4fb6aeb25dcf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 24 22:32:46 2011 +0100

    Version 1.13.14.

commit 0ca512e716f4710aadb9aff4969f11ea09ef5f73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 24 18:50:00 2011 +0100

    Update to latest gnulib.

commit 7365f56722d626c184fb34b6e2e06be000ab7366
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 22 14:41:46 2011 +0100

    erlang: Use the official autoconf macros.

commit 94b380a2f5a32faa461b86de37cb981f17d8a1fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 21 22:28:11 2011 +0100

    todo: Suggestion to improve Erlang bindings.

commit ff201ee9cf70f88881d94755aaa6ff1fe2fd061e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 21 19:31:10 2011 +0100

    Enable APIC.
    
    Originally this was disabled to work around RHBZ#502058.  That bug was
    never officially fixed, but it may have fixed itself.
    
    In the meantime, KVM has broken ordinary PIC support (RHBZ#723822).
    Since APIC is the most common way that regular Linux and Windows
    guests run it makes sense to remove this hack.

commit 062bb0769973b4d67a89c180af8bf888969ab0c4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 21 15:12:28 2011 +0100

    Version 1.13.13.

commit d095a732af70a5c7d9c75bd4a2744cc5676f1a48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 20 18:03:58 2011 +0100

    Add Erlang bindings.

commit 61936d4612eff4940f19cedf8d01f80fc700670c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 16 15:26:20 2011 +0100

    inspection: Handle /dev/root in /etc/fstab.
    
    This means "the device that holds /etc/fstab", so map it correctly.
    
    This fixes support for ttylinux and also some other guests that use
    /dev/root instead of a real device name.

commit 370e443ceb9db499e39a190565b9a640330a0ce4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 16 15:21:26 2011 +0100

    inspection: Add support for ttylinux (a minimal Linux).

commit 1072aa9b3c33ffefa0fcdb958de666b4247c9000
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 15 22:02:43 2011 +0100

    Add an optional group ("grub") for the guestfs_grub_install API.
    
    This also improves the documentation for this call, pointing out
    several pitfalls in using it.
    
    This unfortunately breaks existing callers that might use
    guestfs_grub_install without checking for this new group.

commit b4844a8cbdb2cb48d679fca9c6359e9c133bfd7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 14 18:56:38 2011 +0100

    Version 1.13.12.

commit ae5e958add1d9dc7c88fd1bf09d1c48cd0088309
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 14 13:52:39 2011 +0100

    test-tool: Display TMPDIR.

commit ea1151564c25e2660e752802ddd52bf38cdb1f0e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 14 13:19:11 2011 +0100

    test-tool: Refresh libguestfs-test-tool man page.

commit c13774c489dfac0f3289081e7aab100567d522bf
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 14 13:00:34 2011 +0100

    test-tool: Make the default timeout be 600 seconds (10 minutes).
    
    We could sometimes hit the 120 second timeout, eg. if the appliance
    needed to be rebuilt and the machine was very slow and/or under heavy
    I/O load.  10 minutes should be enough for any reasonable situation.

commit db5fdda0ff41b27799a54551264fd871a1af0584
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 14 12:58:43 2011 +0100

    test-tool: Document the -t command line option.

commit fd617bce0dddd4d2c41be6a2ac09134b822cc495
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 14 12:58:30 2011 +0100

    test-tool: Use B<...> for command line options in man page.

commit b50ee593bbba954809278fc5cf7b03c244ada9ac
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 12 11:36:00 2011 +0100

    po-docs: Make podfiles sort stable.

commit 97d9852e34d8df9566793e8b10c75ce611577264
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 12 11:33:19 2011 +0100

    Stable OCaml dependencies.

commit 35f31633bde33bf81c99684ca6cbd7b23a283c7f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 7 15:21:37 2011 +0100

    docs: Add a section explaining the appliance boot process.

commit 5019d56f36346dbba274d0aba9826ef31b45ea4e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 1 14:55:18 2011 +0100

    Version 1.13.11.

commit 490da30f343e4cce4215867cd28db10d61cabecd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 1 13:37:20 2011 +0100

    Remove old regression test that mainly tested a buggy API.
    
    The guestfs_ll command currently lists files in the appliance if you
    prefix filenames with "/..".  However this is a bug, not a feature,
    and we should not be testing it.

commit 470f7a36bae0ffc8c670e64048b0500613450bda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 1 13:15:13 2011 +0100

    debian: Missing build dependency on db4.8-util.

commit fb71ff9eec6b5865489ac876d1ed72d5794da89a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 1 12:59:15 2011 +0100

    daemon: Factor out name of virtio serial channel.
    
    This is just code motion.

commit af221b6132181aa7019b87c6dd38a78d087e5b03
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Sep 1 12:58:30 2011 +0100

    Create /sys directory if it doesn't exist already.
    
    Ubuntu 10.04 LTS packages don't create /sys.

commit 2e4c45915bd8132de9896e702bba162e3850973e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 28 17:58:34 2011 +0100

    Version 1.13.10.

commit 6975b7026ee1f64a4a322824fc11d3f5c08554f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 28 17:35:34 2011 +0100

    cat: Small documentation correction.

commit 3d12fcb64fec21c54516864a4af8e34a2826dff0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 27 17:53:03 2011 +0100

    inspector: Use xmlstarlet instead of xpath in examples.

commit 989bdb6df90382f2dfd1eb940f1d36c46765f280
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 27 17:47:10 2011 +0100

    man pages: Add a standard EXIT STATUS section to most pages.

commit 80e0db9be34546876270a58e490e25f2dfc311ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 22:55:09 2011 +0100

    Version 1.13.9.

commit ca8b85b66bc78edd7c59dfd1ab613c9201fea941
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 22:40:27 2011 +0100

    progress: Make default UTF-8 progress bar less black.

commit 090f23888d6dfceb673f58a3f51da473c14edd16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 22:34:49 2011 +0100

    resize: Add --machine-readable option for machine friendly output.

commit b51ff00ff30d9974a54a961bbfbf854ee40b4b68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 22:03:47 2011 +0100

    progress: Add machine readable flag.
    
    Machine-readable progress bars look like:
    
    0/100
    1/100
    2/100

commit 3b6a3c2eab1af585607c3ed990e4fff6a5eac7bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 19:21:23 2011 +0100

    resize: Use guestfish progress bar mini-library.
    
    There are two benefits:
    
     - the progress bars look better
     - there is a reasonably accurate estimate of how long each operation
       will take

commit 87edff4df54fd6641af50509d1623093228443cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 20:28:20 2011 +0100

    Add GUESTFS_EVENT_ENTER event.
    
    This event is generated whenever a libguestfs function is called.

commit 8c8649b247b402256fe70683597cf16eb1fedde6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 18:17:39 2011 +0100

    fish: Make progress bars into a mini library.
    
    This library could now be called from other virt tools.

commit 7f9ec9dc39a4b3345fc1c5e6e7ff181c27c85a4c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 17:39:06 2011 +0100

    fish: clarify comment: shared source files are used by virt tools too.

commit d9eba2bd5f1ffed598de120bb5ac8b446efc5b36
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 26 11:54:05 2011 +0100

    Version 1.13.8.

commit 84401035ef579a4750b87ea1e1bff963bab013fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 13:56:09 2011 +0100

    ruby: Check Ruby callback exists before we call it (RHBZ#733297).

commit 24422808f73612a3c363ed83f988f0fd05dfe62e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 13:25:07 2011 +0100

    ruby: Use a regular C array to pass the arguments through rb_rescue.

commit 06d238bb76999b79cf721550da49253d733d41be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 25 13:11:28 2011 +0100

    ruby: Append newline character after printing exception in callback.

commit 128cb2c05d9c8abd71c57d0c1cac05063ed921a6
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Aug 22 20:42:09 2011 +0200

    python: Newer versions want parentheses around arguments of "print"

commit 665a535a4fa7d50b3cb0462240fd5098ab5fa4f4
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Mon Aug 22 20:42:08 2011 +0200

    python: Don't build static library

commit f2eef222ba947dd4eafe455b064ec61eab498639
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 20:36:52 2011 +0100

    Version 1.13.7.

commit 6350c06fcbfb1165b0420240e3756f12a399af4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 20:21:29 2011 +0100

    php: Fix bug in PHP tests.
    
    We partitioned the disk, and then tried to create a PV on the whole
    disk.  LVM gave the error:
    
      Device /dev/vda not found (or ignored by filtering).
    
    It is unclear how this bug persisted for so long.  It might be due to
    a change in LVM.

commit 2aaeb990f2616d0b94dcdf1fcca8ccf353e7e841
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 19:50:11 2011 +0100

    Coverity: fix memory leak along error path.

commit 3e5dadf37cd57280ed3b6d255f5e08786656bf98
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 19:29:46 2011 +0100

    Coverity: Initialize msg buffer.
    
    msg_flags was not being initialized and would have been passed to
    sendmsg with a random value.

commit 943f7e3ed761d9cc9a0f29edfb2d83735c20b0bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 19:26:35 2011 +0100

    Coverity: fix memory leak in guestfish.

commit 1a2b2d1dd17aa54aa283b32dc6282283b90862fd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 19:19:13 2011 +0100

    Coverity: in daemon, free struct in RStruct, RStructList functions.

commit 1d7d709304835dc06d76df3581d837f320501da4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 18:56:12 2011 +0100

    pclose: Fix other places where we only tested pclose == -1.
    
    pclose can return > 0 when the status of the command was non-zero.

commit a34827a5eedb697fb886420ce9be14f0a2847704
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 18:53:38 2011 +0100

    test_qemu: Improve the error message.
    
    Note that errno is probably not set to a useful value here, so there
    is not much point recording it.

commit 87f658b14382ab2aeaa2ff4bbaa6f8f7625e284d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 18:53:00 2011 +0100

    test_qemu: pclose may return any != 0 on error.
    
    In particular pclose returns a status > 0 if the command fails.

commit 4235e11788ad625a3c5035a640b49031068d7f83
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 18:43:24 2011 +0100

    qemu detection: Free up previous qemu help/version strings if they exist.

commit 3ad465f57eed8205037096822542fa8d1ff255f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 18:02:24 2011 +0100

    Coverity: test_qemu: Ensure FILE * is not leaked along error paths.
    
    This refactors the code in test_qemu slightly to ensure that
    FILE *fp is not leaked on error paths.

commit 3ba90ffda174189c1d6678f6873e35cd9583233a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 16:47:18 2011 +0100

    Coverity: Check guestfs_inspect_get_product_name() != NULL before using.

commit 2902baafd7640b941b519d23a84ec6e05ab0f936
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 16:41:07 2011 +0100

    rescue: Ignore errno after guestfs_launch.
    
    errno is pretty much random on the error path back from guestfs_launch
    so there is nothing useful to be gained by checking it.
    
    We could do with a better way to detect if appliance launch failed.

commit fbfa11f2d9bdf731d227fd42dab314437ec9fa33
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 16:34:06 2011 +0100

    Coverity: Ignore return value from guestfs_launch in virt-rescue.
    
    We expect guestfs_launch to fail in this program.

commit 3a28e23b870a0f4c2fad952e2de1c95bb40382d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 23 16:12:27 2011 +0100

    Coverity: Check return value from sscanf in bindtests calls.

commit 32f90b1d9a85e5be2526b6c6fe7251fff18b9a38
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 20 11:41:10 2011 +0100

    autobuild: Only add last 100 lines of the log file.

commit 57737156c8343fb1f8c71667fae4540380fe6a34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 20 10:49:35 2011 +0100

    New autobuild script.
    
    Remove the old top-level autobuild.sh that confused a lot
    of people.
    
    Add an autobuild.sh script that builds from the latest tarball.

commit 714eba24b3ed24e32fdaae54db8421c7b654c1d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 19 21:48:44 2011 +0100

    configure: Add --with-extra flag to allow setting the extra version string.
    
    Intended use in Fedora and RHEL is to encode the release
    string, eg.
    
      ./configure [...] --with-extra="-%{release}"

commit a97934c7027dcbe8d30b64034c864f0a977401a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 19 10:38:30 2011 +0100

    Version 1.13.6.

commit d443eb47b214a3a4e62279bb57507a3cd236232e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 18 19:13:32 2011 +0100

    protocol: Fix case where download can fail for small files.
    
    There is another case where downloads of small files could fail if the
    library side (writer) fails.  In this case the library would send back
    a cancellation, but it would be received after the daemon had finished
    sending the whole file (because the file is small enough).  The daemon
    would reenter the main loop and immediately get an unexpected cancel
    message, causing the daemon to die.
    
    This commit also makes test-cancellation-download-librarycancels.sh
    more robust.  We use Monte-Carlo testing with a range of file sizes.
    Small file sizes should trigger the error case.

commit 84ab5369d58aa913672fb10edacbcefa0dafb168
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 18 17:46:50 2011 +0100

    Escape special/non-printing characters in debug output (RHBZ#731744).
    
    The default event handler in libguestfs was simply writing all debug
    output directly to stderr.  However if the output contains
    non-printable characters such as terminal control codes then these
    would also be sent directly.
    
    With newer SeaBIOS there is a lame attempt to implement a splash
    screen using terminal control codes, thus when libguestfs tries to
    display debugging output it would cause the screen to clear and debug
    output to be lost.
    
    This commit causes all non-printing characters to be escaped.
    (\n and \r characters from the appliance are treated somewhat
    specially).
    
    Furthermore, instead of using write(2), use buffered stderr calls.

commit 83d714e1f1e7fbef84b0e1249cacd6740bb6f340
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 18 17:41:09 2011 +0100

    Remove guestfs___print_timestamped_argv.
    
    This function was used to print the qemu and
    febootstrap-supermin-helper command lines.
    
    Unfortunately in the qemu case it was used incorrectly: it called the
    internal debug function (ie. event API callback) from the forked qemu
    subprocess, which meant that higher level event callbacks might have
    been invoked from the child process.
    
    To fix this, convert the qemu case into a new function called
    print_qemu_command line which just prints the command line directly to
    stderr.  This is called after stderr has been redirected into the pipe
    to the main process.  Thus the qemu command line will be marshalled
    into the event API along with other qemu and appliance output.
    
    After fixing this, only one use of guestfs___print_timestamped_argv
    remained, for printing the febootstrap-supermin-helper command line.
    This is converted to a local function print_febootstrap_command_line.
    
    Also print_febootstrap_command_line is now called before we fork
    febootstrap-supermin-helper, so that messages no longer overlap.

commit 5c62037f5b4d75d7c26b403672e5ce505b58565d
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Thu Aug 18 00:14:46 2011 +0200

    out-of-tree build: generate ./run from template, fix image checks
    
    ./run can now be run in a separate build directory. Since some files
    needed in the image checks are found in the source tree (but not the
    build tree), the source tree location is passed to make-*-img.sh via
    an environment variable.

commit 8211895960a3759edba819809799261dac2b6fa0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 17 12:21:35 2011 +0100

    Version 1.13.5

commit b3b78a9ce160ab7f2dbcb59f7fe78e4b36a49375
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 17 12:41:41 2011 +0100

    fish: Add fish-cmds.h to generator_built.
    
    This updates commit 3064277680ad11f887691646d0fa17bb35f38c19.

commit e56f4ff0a495806d369cb1c46603d125cd7c1d0d
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Wed Aug 17 00:42:00 2011 +0200

    out-of-tree build: fix make and make install
    
    $(srcdir) is not needed for guestfs_c.c.
    *.mli only exists in $(srcdir) and isn't found on "make install" otherwise

commit ce65dfd0191dfc597b9da8ed84812ad0f966bbba
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Wed Aug 17 00:41:59 2011 +0200

    out-of-tree build: fix documentation generation II

commit 541b983d2b854d81ece5d1ed301eac16d4c4e1c5
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Wed Aug 17 00:41:58 2011 +0200

    out-of-tree build: remove unneeded explicit paths

commit 98f3ce91e77331d9c119c475355f68caae7a9109
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 16 12:39:28 2011 +0100

    Improve zeroing and detection of zeroes.
    
    This code modifies zero, zero-device, is-zero, is-zero-device.
    
    zero and zero-device are modified so that if the blocks of the device
    already contain zeroes, then we don't write zeroes.  The reason for
    this is to avoid unnecessarily making the underlying storage
    non-sparse or (in the qcow2 case) growing it.
    
    is-zero and is-zero-device are modified so that zero detection is
    faster.  This is a nice side effect of making the first change.
    
    Since avoiding unnecessary zeroing involves reading the blocks before
    writing them, whereas before we just blindly wrote, this can be
    slower.  As you can see from the tests below, in the case where the
    disk is sparse, it actually turns out to be faster, because we avoid
    allocating the underlying blocks.
    
    However in the case where the disk is non-sparse and full of existing
    data, it is much slower.  There might be a case for an API flag to
    adjust whether or not we perform the zero check.  I did not add this
    flag because it is unlikely that the caller would have enough
    information to be able to set the flag correctly.
    
                                    (Elapsed time in seconds)
    Format  Test case                 Before     After
    
    Raw     Sparse                    16.4       5.3
    
            Preallocated zero         17.0       18.8
    
            Preallocated random       16.0       41.3
    
    Qcow2   preallocation=off         18.7       5.6
    
            preallocation=metadata    17.4       5.8
    
    The current code uses a fixed block size of 4K for reading and
    writing.  I also tried the same tests with a block size of 64K but it
    didn't make any significant difference.
    
    (Thanks to Federico Simoncelli for suggesting this change)

commit 61982e7dc7a9619ccdaf2f0a0521e3cf23dc56f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 15 14:55:10 2011 +0100

    recipes: Remove two C file dependencies which are not actually used in the POD.

commit 1de6e5c7878e2a42b8eb2ed527764b3e95d95e96
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sun Aug 14 10:58:13 2011 +0200

    out-of-tree build: fix building library

commit 85740017bc3afc7aadd908c10cf1ea7de3636411
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sun Aug 14 10:58:12 2011 +0200

    out-of-tree build: Fix up OCaml bindings and generator

commit 4fc15899b18360be8bfd7d40ed02adcf70fc3964
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sun Aug 14 10:58:11 2011 +0200

    out-of-tree build: fix appliance

commit 166b81848ecd7be7d4d27078778bbd1a69ef1741
Author: Hilko Bengen <bengen@hilluzination.de>
Date:   Sun Aug 14 10:58:08 2011 +0200

    out-of-tree build: fix documentation generation

commit b80ab2036440d6046e5378627abd32c16c49e076
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 14 22:07:54 2011 +0100

    ruby: Fix typo in Ruby bindings file.

commit 312950828f99c1c92fc110f4ba77355a78dd27ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 12 11:17:16 2011 +0100

    Note that additional memory may be required to typecheck Augeas lenses (RHBZ#729887).

commit df5e333a34d0e15ed4e07ecae9322eec9c137eff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 12 11:08:57 2011 +0100

    fish: Document that remote run in cmd substitution context hangs.
    
    This documents bug 592910.

commit 759d98e5b1c04854e6e5e67a5161679787191c76
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 11 22:52:06 2011 +0100

    Version 1.13.4.

commit 956df24e6158218da6402d6d81a069bb4bdd51d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Aug 11 11:45:25 2011 +0100

    Fix 'unknown filesystem' warnings in old inspection code (RHBZ#678231 RHBZ#666578).
    
    This is a comprehensive fix for the warnings from the old (and
    obsolete) Perl inspection code.  For a full description and
    reproducer, see:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=678231#c5

commit 56d88076e66e4ac8556804ba0d876b84fbd0cbba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 8 18:52:23 2011 +0100

    inspection: Better checking for Windows root disks (RHBZ#729075).
    
    Previously any disk that had /autoexec.bat or /boot.ini or /ntldr
    would be picked up as a candidate for a Windows root disk.  If further
    checking could not find any systemroot (eg. /windows) then this would
    result in complete failure of inspection.
    
    In particular, this got confused by Hp_recovery partitions which have
    /autoexec.bat, but don't have a systemroot in one of the usual places
    (they have /MiniNT instead).
    
    What we do now is to properly investigate all possible systemroot
    places before deciding this is a Windows systemroot, so the subsequent
    failure cannot occur.
    
    (Thanks to lorimar for reporting this bug).

commit 2bf9945c73dc28666024c2026f964e81ef588836
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 8 12:41:54 2011 +0100

    build: Set TMPDIR for local testing.
    
    This avoids conflicts with the globally installed libguestfs
    appliance, or lets us build in multiple local directories at the same
    time without conflicts.

commit 2ab768b2fc842b5629e62cd52ffe265d6ad85da7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 7 23:11:37 2011 +0100

    Version 1.13.3.

commit 6bd3951f2e11ba1bfee57c978870adda2cca73fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 7 23:10:50 2011 +0100

    daemon: Don't include .gitignore in EXTRA_DIST.
    
    This updates commit 60d5a50f4d3d9e2c2f5a7d42a6859de709bda3f6.

commit 5498744ae6bba7d6ab22ee20f8e5b81a9d1ead7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 7 21:05:13 2011 +0100

    fish: Add setenv and unsetenv commands.
    
    These commands allow you to manipulate the environment within
    guestfish.

commit 30dc733a5022c5c3f7de3bd6dd9013a3d5e0ebe7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Aug 7 21:04:00 2011 +0100

    fish: Declare run_* functions in a generated header file.
    
    Calls to these functions are generated, so there is no need to declare
    the functions by hand.

commit c622be6ed9ae2259d315be7a3a8e2568ce3d85e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 6 16:04:36 2011 +0100

    docs: Move deprecation notice up to the top in C man page.

commit 98a060768df2135748030799ba082d4743b7713f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 6 16:00:01 2011 +0100

    docs: Emphasize deprecation notice in man pages.

commit 7b8d4cb58dc2168edc95fa92a33ad4b512475777
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 6 15:57:21 2011 +0100

    docs: Fix function names in deprecation notices.

commit 180d0881bdffac31bcda7a6b371e11f326ea8757
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 6 15:53:15 2011 +0100

    docs: guestfs_set_out_of_memory_handler returns void, not int.
    
    It always has done.  The documentation was wrong.

commit 776030395f519c1e19d7e3b4b11162a5f1dbd23f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 6 15:49:55 2011 +0100

    docs: Clarify error handler example.

commit 4329b54e51e27da7fc188a36633c01cb08ada51e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 16:39:43 2011 +0100

    fish: Fix regression tests for new guestfish line numbers.
    
    This updates commit 319e946b92e175c05cdd1fdcb85c9b86f5631011.

commit 544c92b2b10fd5c46552f179e8d08011687eb91c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 14:58:30 2011 +0100

    fish: Print input file and line number in error messages.
    
    eg:
    *stdin*:37: libguestfs: error: luks_close: Device lukstest is busy.

commit 21fb8260087a5bc933f8ca1aaa8a31cacb0aa82d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 14:03:18 2011 +0100

    gnulib: Add all other libs when linking libguestfs.so.
    
    This updates the previous two commits.

commit 6b96677d3dd8d864de35243eacc51b8d0a008e04
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 13:52:42 2011 +0100

    gnulib: Add $(LIB_CLOCK_GETTIME) when linking libguestfs.so.
    
    We don't use this library (it is only used in the daemon),
    but we need to add this to make the linker happy.

commit 4c67b0eb2e13e5f7591d69cdf8603abdbf0fd531
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 10:54:19 2011 +0100

    daemon: Remove separate configure of daemon subdirectory.
    
    Combine the two Gnulib instances together.
    
    Add checks from old daemon/configure.ac into configure.ac.
    
    Fix daemon/Makefile.am so it is like a normal subdirectory
    Makefile.am.
    
    Because we are now using the replacement strerror_r function from
    Gnulib (instead of the one from glibc directly), this requires a small
    change to src/guestfs.c.

commit f4b0f7ba9f000e28faf1e4f50ac495b32e1c5314
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 12:34:02 2011 +0100

    Update TODO.

commit 697b83983cc503ee4b4ae904f5bfbfaaead2c3e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 10:49:45 2011 +0100

    debian: bash is required to run libtool replacement script.
    
    This was failing on Debian where $(SHELL) is the minimal dash shell.

commit a936d7416d2297a404e59f67563fe4b2e8446caa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 10:31:03 2011 +0100

    configure: Fix info about virt-resize when OCaml bindings are disabled.

commit 58895cb3571afe1bad1b9cbbb8ac771d878f7dd2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 5 10:18:02 2011 +0100

    python: Don't name extension with .so.0.0 and symlinks (thanks Dan Berrange).

commit a085ac0ebf75d24b74192a4c93748901b2987175
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 2 12:30:32 2011 +0100

    Version 1.13.2.

commit 8c988760aff3a98e71bc8d4f335628b9c7bce93e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 2 10:56:41 2011 +0100

    Add regression test to catch missing libraries in the appliance.
    
    Related to RHBZ#727178.

commit 6d1e59c9e59daa57ab7a965f19daf6e58a6ff922
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Aug 2 11:03:50 2011 +0100

    debian: Add gawk to packagelist.
    
    It's already included, but implicitly.

commit d3f4409db4721df86830de8fa7bca18936e9050b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 1 15:13:08 2011 +0100

    virt-tar test: Stable ordering of test output.
    
    The files could be listed in any order, resulting in the test failing
    for no reason.  Sort the output of tar.

commit cfd2ff9d13e60db2c4bda9aab9f5f2c26090163a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 1 10:35:18 2011 +0100

    Change link, since PostgreSQL switched to using git.

commit ae380395d109475533fb1f5d4ec29f408199078a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 31 20:48:00 2011 +0100

    debian: Build libguestfs-ocaml and libguestfs-ocaml-dev subpackages.

commit 5a6934a678310fb6c5c29fab3b5d3281d44adc2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 29 17:38:43 2011 +0100

    Don't fail if HOSTNAME field is missing on Red Hat guests (RHBZ#726739).

commit 67307a354e16d64e5410ef806695cb5658cf7059
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 27 15:43:12 2011 +0100

    perl: Fix another place where qw() was used as parentheses.
    
    This is a fix for Perl 5.14.
    
    See previous commit 5c3c7e8825341e18c9449976f8a321a04cc78d79.

commit 1d8710a064585339ac14a93ae9aa1aa48dbcfe98
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 26 18:57:19 2011 +0100

    ocaml: Fix locking in event callbacks.
    
    We weren't acquiring the GC lock around some allocations, resulting in
    segfaults when an event callback ran at the same time as a main thread
    allocation or garbage collection.
    
    In particular this fixes a noticable crash in guestfs-browser.

commit 257ba9eefb7a6ea069d0892b843cfd48048e6820
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 26 14:17:19 2011 +0100

    Version 1.13.1.

commit f421039e860875520f983b413b16e501e2fa4a61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 26 12:39:54 2011 +0100

    virt-df: Re-add documentation for --csv option.
    
    The documentation for the --csv option disappeared between 1.6 and 1.8
    when we rewrote virt-df in C.  Re-add it from 1.6 sources.

commit f72a3048c1a8d7562b2b7aa8d5facaf9c03fbe7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 25 11:21:48 2011 +0100

    test-tool: Print FEBOOTSTRAP_* environment variables (RHBZ#671082).

commit a22a4341cb3fda5e046a3bdbada4bdd66ee0d760
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 25 11:16:24 2011 +0100

    test-tool: Display state of pgroup flag from the handle.
    
    This updates commit f173543fd207bdc254a5eb75180d82ef25eacae9.

commit 1149fe2b80e3002bb7a978842f8111469d060b01
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 25 11:12:48 2011 +0100

    launch: Add qemu_supports_re function.
    
    This function is like qemu_supports, but allows us to grep
    the help text using regular expressions.
    
    Note the function is not used yet.

commit 169b3c626604210b6d665ec5e0da221e89459908
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 25 10:56:52 2011 +0100

    Require PCRE library.
    
    This library is widely available in distros.

commit eb6bda02a717db7a47a1486af5c05bcb7ef665ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 22 16:17:06 2011 +0100

    docs: Document FEBOOTSTRAP_KERNEL, FEBOOTSTRAP_MODULES (RHBZ#671082).

commit 3dbe2f7695c013a82b7ebc48380484fd3cc6b266
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 22 11:12:52 2011 +0100

    perl: Fix CCFLAGS for Perl 5.14.
    
    A change to ExtUtils::CBuilder in Perl 5.14 causes CCFLAGS to
    completely replace, rather than appending, the C flags.
    
    The unfortunate consequence of this is that vital flags such as
    -D_FILE_OFFSET_BITS=64 are missing.  For 32 bit code, this means you
    get binary-incompatible code that completely fails to load.
    
    For further analysis see:
    
    http://www.nntp.perl.org/group/perl.perl5.porters/2011/04/msg171535.html
    
    This commit changes CCFLAGS so that it appends to the existing
    $Config{ccflags} instead of replacing it.  On earlier versions of Perl
    this means we get two copies of the flags, which is unfortunate but
    should be safe.

commit 21b374b9513ccd299c9c18de4060772b4a4c3ae7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 21 17:59:34 2011 +0100

    build: Redirect ./configure errors in general to config.log.

commit 9354fb82b81b60ccf79c41104feeb19bf47406ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 21 17:00:48 2011 +0100

    build: Send failed Perl test configure output to config.log.

commit 17f1ed38fca01e2fdea756c7b44ddac2489e23de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 21 10:50:40 2011 +0100

    build: Allow 'make quickcheck' test-tool args to be overridden.
    
    A typical use for this is for packagers who want to increase
    the default timeout:
    
      make quickcheck QUICKCHECK_TEST_TOOL_ARGS="-t 300"

commit cef3a16c49d2af8d221ad61e0fecc2982baaeb9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 18:28:07 2011 +0100

    Update version number to 1.13.0.
    
    There is no build or tarball for this, since it is identical
    to 1.12.0.

commit 65599f7ab6da99c64487049c505b6c8b94bcb0a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 16:37:37 2011 +0100

    Version 1.12.0.

commit eba20f98a22f1c78db90649c2550f3ad32872433
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 16:37:19 2011 +0100

    Finalize release notes for 1.12 release.

commit a2e5d9bb9b71fb8a245cef0f77286398c7b974d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 14:41:39 2011 +0100

    blkid: Use -c /dev/null option to kill the cache.
    
    On recent Debian, /etc/blkid.tab is now a symlink to /dev/.blkid.tab.
    Rather than chasing the cache file around (it may move to /run in future)
    use the -c /dev/null option to stop blkid from reading the cache.

commit fec5cfd889b2055e640c5ad600673896b0fef859
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 14:25:32 2011 +0100

    blkid: Detect when value not found and return empty string.
    
    If the blkid command returns 2, that means the value was not found.
    
    Note that this changes the output of the vfs-type API when the
    filesystem has no type (eg when it is empty).  Previously this would
    return an error.  Now it returns empty string "".
    
    We did not document this either way.  Making it return empty string is
    consistent with vfs-label and vfs-uuid.
    
    This change broke list-filesystems, since that code was assuming that
    vfs-type could only return a filesystem type or an error.

commit a5a6feb2f4246685594ca493380e6e7414834bf6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 13:49:16 2011 +0100

    docs: Update stable release instructions.

commit 153d1cc2f407939a6465c8bc4028d5f63e858bd8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 13:33:47 2011 +0100

    configure: Remove -Wmissing-noreturn warning.

commit 8bce383e4b4f93c32a5bc788a28a05ee7a5a5f3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 13:20:10 2011 +0100

    po-docs: Fix generation of 'podfiles'.

commit dc10d87fe5f05bba0c3f4c6b7642aa1299e22002
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 12:07:30 2011 +0100

    appliance: Capture stderr from qemu to the event system.

commit 54c546d300a7768f5e62d6793fdb43d4608cd2fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 12:05:40 2011 +0100

    appliance: Document pipe fds.

commit a6cc1cd40ac2c828e2a7ff4956091d95a4bf4dba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 20 11:45:02 2011 +0100

    Partially revert d82438431c1551610eb7d9945fa76d6387534582.
    
    It appears qemu-kvm does *not* require -machine accel=tcg option.
    That problem disappeared after upgrading seabios(!)  However leave the
    test for qemu -help option, since that's useful to determine if qemu
    is completely broken or not.

commit a1547bffdd5304bff3cb5a22d164787f59b8e129
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 19:55:24 2011 +0100

    build: Fix virtio-serial test for qemu 0.15.
    
    Now qemu 0.15 won't even start up unless the -machine accel=... option
    is specified.  Essentially this is a regression in qemu.

commit 47d86c6d3e60ac3717acba27245971ee79d8285d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 19:07:50 2011 +0100

    Version 1.11.20.

commit 27f94fcbb59eb5848c1f1f908a697de4a431c7ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 17:56:14 2011 +0100

    Update release notes.

commit de695ec7b426ebeff0ce86a1e8ddd3ba5a8afb2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 17:54:35 2011 +0100

    java: Add guestfs-java(3) man page.

commit dc7082825b29a8ceb366fc85bfa5953880c436e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 17:40:52 2011 +0100

    Add missing reference to guestfs-perl(3) to guestfs(3).

commit 82f321a5b0bfc0505218d50a398a61b7da3ae6a2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 16:34:06 2011 +0100

    java: Tidy up the generated C bindings file.

commit a458ad1e69e15c690f7bc2bc0204a1364694fb5d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 14:45:11 2011 +0100

    java: Fix optional arguments in calls.
    
    This also adds tests.

commit fe20faf02a7516258d2b6fadfbbc19c53594174a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 19 14:32:45 2011 +0100

    java: Enable warnings when compiling C bindings code.
    
    And fix the code so it doesn't generate warnings.

commit 861623a1fb20a28dc8c9ed741344f39c8865c156
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Mon Jul 18 13:55:02 2011 +0100

    debian: Fix misspelling in debian/control.
    
    Updates commit c6577ac73db2d2d93a094ca2b7990e0d60e6a93a.

commit 65cedd5233ac584ffa3614e4a6327fd89ec8e686
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Mon Jul 18 13:57:09 2011 +0100

    debian: Add debian/guestfsd.* to the tarball.

commit 4522fff54ce8daee27a42cb8c8181a62601a5e4f
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Mon Jul 18 13:55:02 2011 +0100

    debian: Fix misspelling in debian/control.

commit cf929a1618636b87906f0f130e7a4270a5d3cf92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 18 11:55:41 2011 +0100

    Version 1.11.19.

commit c0450b661c5edeb9cbb3167f7678fd845e6c2c0e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 18 12:12:42 2011 +0100

    po-docs: Include source (POD files) in EXTRA_DIST.

commit 81a8aa81a436a35670abbd0dc2b977621a9674ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 18 09:34:04 2011 +0100

    po-docs: Remove empty Spanish translation file.

commit 1c052d0318d92ad19917525dff64cf9c02bb3690
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jul 18 09:33:24 2011 +0100

    po-docs: Fix UTF-8 encoding problem.

commit b955df2ca587f90f752d1891fd00a53097579389
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 17 23:05:50 2011 +0100

    po-docs: Update the list of output manpages.

commit ee8e1d6a91a19c92c025c1515c33cc44561c332f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 17 23:03:37 2011 +0100

    po-docs: Generate list of *.pod files.
    
    Generate the list of *.pod files, instead of hard coding
    it (and having it get very very out of date).  Store the
    list in a separate file po-docs/podfiles.

commit 469ecd83353da883fc1992badd3da302575307d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 17 22:03:22 2011 +0100

    Add notes on making a libguestfs stable release.

commit f81a74c73082a4e9425f6b684b9a43e433fe1a5e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 17 22:02:58 2011 +0100

    Pull latest translations from Transifex.

commit e67fdedcb704f877030fc952cc29a33dcdb348d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 17 22:01:40 2011 +0100

    Add tx pull wrapper script.

commit 1f5f03eb00daf6819e401e3c7d9e83a06b0d804d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jul 17 10:29:47 2011 +0100

    ocaml: Generate ocamldoc.
    
    Also includes improvements to the OCaml documentation.

commit 82884da980c7e59f261655ef1c2626e6d92f358f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 16 19:11:52 2011 +0100

    ocaml: Bind guestfs_last_errno.

commit 23efe6b81c8b1d25b5c47d80358aeedd3ee41869
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 16 19:11:37 2011 +0100

    Update API support.

commit db05792bdb90286ca2b0fc4baf722324fe994b90
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 16 15:26:32 2011 +0100

    Update ROADMAP file.

commit 79b3f82fa11714eb30e6a69d6770eb766bb6a04c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 16 15:23:48 2011 +0100

    fish: Don't make --ro the default yet.
    
    Defer this decision to a future version of libguestfs.

commit d5ccc733c04792d366a0ed7c97dc96923354c54f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 16 15:20:29 2011 +0100

    docs: Separate out combined =item 's in man pages.
    
    Turn:
    
     =item B<-a> | B<--all>
    
    into:
    
     =item B<-a>
    
     =item B<--all>
    
    This gives a more natural-looking manual page, as well as making it
    easier to directly link to these sections.

commit 7c96e231852429991680df348a9c373c821241af
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 16 12:36:07 2011 +0100

    Update and rearrange release notes.

commit 19316106b0e424b874ad67f10fff724a83bd3569
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 22:09:29 2011 +0100

    Fix test-guestfish-escapes regression test to work with debug/trace enabled.
    
    If debugging or tracing is enabled, extra messages are sent to stderr
    which mess with this test.  Remove the extra messages before checking
    stderr.
    
    This updates commit 617e7f6bafa7de2303c08e1715004aae3141c389.

commit 94ba261a39b4754710cb51d85a96eb83b289ffb6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 17:23:41 2011 +0100

    Version 1.11.18.

commit 309445650b492b96aadb6001e5136d15d93695c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 16:14:56 2011 +0100

    Update release notes.

commit bf9da72cd38be2115209754b26e1bfcc70e27fee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 16:10:19 2011 +0100

    Update API support.

commit 63ba07d4f147ccc13be40a1400c777f78cbaaf3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 14:57:00 2011 +0100

    ruby: Add binding for guestfs_user_cancel.

commit dea5b4f5ff9896f0777e2615b399712d836bcc8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 14:47:09 2011 +0100

    perl: Add binding for guestfs_user_cancel.

commit a678fef64d4a85eec4075b9171ab91ab2a4a8d35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 14:33:29 2011 +0100

    ocaml: Add binding for guestfs_user_cancel.

commit 6a15f6242640c2dff1deb6ece29d3a94afe4b7c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 11:01:23 2011 +0100

    fish: Register ^C handler to cancel long transfers.

commit 7a96d0b149b69d38739a853c963c744c5703076e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 11:36:23 2011 +0100

    fish: Add is_interactive flag.
    
    Decide early (before launch) if this is going to be an interactive
    session, and set the is_interactive flag.

commit f9d379d829f8e1d0260c8828f5322aaebe966c80
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 10:43:36 2011 +0100

    Add user cancellation to the C API.
    
    This allows long transfers (FileIn and FileOut operations) to be
    cancelled by calling the signal and thread safe guestfs_user_cancel
    function.
    
    Most of this commit consists of a multithreaded program that tests
    user cancellation of uploads and downloads.

commit 94081e13485ce384da95f2673197476730089d8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 11:38:21 2011 +0100

    New APIs: set-pgroup, get-pgroup
    
    If the pgroup flag is set in the handle, then the qemu and recovery
    subprocesses are placed in separate process groups.  The default is
    false.
    
    The purpose for setting up a process group is that ^C will not be
    passed from the main process down to these processes (killing them).
    This allows ^C and other keyboard events to be caught and handled in
    the main process.

commit 46f2784579d845be19184fae872648cb1df05306
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 15 10:42:56 2011 +0100

    guestfs.h: Add missing extern keyword before event functions.

commit b2c0d595fafdaa49e844c64fba956edf09357cd5
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Thu Jul 14 19:24:43 2011 +0100

    debian: New sub-package: guestfsd.
    
    This patch adds guestfsd debian package to the build.  The daemon can
    be installed in virtualization clients to enable libguestfs live
    access.

commit 23a89098e16b0e8fa3180d7f4a103a17ae403aad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 18:18:07 2011 +0100

    New API: write-append
    
    Append content to the end of a file.

commit faedb74a18f3dd20e91a9f73743bb49bd4fb08a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 18:17:39 2011 +0100

    fish: Handle backslash escapes in guestfish double-quoted strings.

commit 08178d9ab79a97abe5c6c16257c81fc829c896fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 15:52:29 2011 +0100

    build: Add ./configure --enable-install-daemon
    
    If enabled, then the daemon will be installed in $sbindir
    (eg. /usr/sbin/guestfsd).  The default is off, as now.
    
    This option should be used by packagers when building the libguestfs
    live service.

commit 492a9c3cfe82c9d9cf05b5573fcadfb4d395e694
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 14:32:34 2011 +0100

    Version 1.11.17.

commit 8d878c1888ab6fe1aa87fda1d3dc12edfae7b7ac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 13:42:33 2011 +0100

    resize: Clarify examples in the man page.

commit 7f3126b849f9dc588ade8a24eacad90f3072d74c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 11:39:11 2011 +0100

    resize: Add btrfs support to virt-resize (RHBZ#721275).

commit 5c2e49905cfe3b5b397a4c2324173005e157b073
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 11:38:25 2011 +0100

    New API: btrfs-filesystem-resize (RHBZ#721160).
    
    This resizes a btrfs filesystem.

commit 712e2574ca9e599446afd1886a4bf6a5857fd9dd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 13:02:31 2011 +0100

    docs: resize: Not just limited to resizing filesystems in partitions.
    
    If you use --LV-expand then filesystems in LVs can be resized too.

commit e6a4a5b373a34aa5c4187aa7c8b5272057c0a7c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 14 11:27:24 2011 +0100

    mkfs: Don't die if mke2fs is not available.
    
    Allow other types of filesystems to be created.

commit 63f8bca6cbfe7d50dcb2a992871235e7894ecce1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 15:59:33 2011 +0100

    Version 1.11.16.

commit 2a5bfd8d34a74f8c2f6b1c2e693afef122793d50
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 15:33:07 2011 +0100

    Update release notes.

commit 491df5e7cdc6d1f5d0fe8846df449ef944af1765
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 15:03:04 2011 +0100

    Refresh README file.
    
    Update and verify the list of requirements, by checking it against
    both configure.ac and the Fedora specfile.
    
    Remove some obsolete sections that covered historical ground.

commit 5d90845f1321e763cdd7eea82f26b3c3b9b1ede6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 14:27:28 2011 +0100

    appliance: Add systemd to get /sbin/reboot for virt-rescue (RHBZ#661280).

commit c1c31bcd0c68af2e923838b48e1aecbff08dc52c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 09:51:00 2011 +0100

    docs: Update API support.

commit ece0e5771adecd0149499e424ac54615765e713c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 09:44:13 2011 +0100

    virt-resize: Arrange options in man page in alphabetical order.

commit c21a8fba88cf22044dfe7ac7ed022802ba308ffd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 13 09:27:57 2011 +0100

    virt-resize: Add --ntfsresize-force option.
    
    Use the non-deprecated g#ntfsresize_opts API call, and also add
    the --ntfsresize-force option for forcing resize.

commit 663cb392c9e63f7a81941ca59e11f3701b7a0e20
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 19:11:59 2011 +0100

    Version 1.11.15.

commit bcb9e0fe07d3e1a0d1d228645052879a77f7fdc2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 17:26:34 2011 +0100

    TODO: Attach method for disconnected operation.

commit 8e932438a8e4db4b00421bf5717d0fdad4e12b7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 17:18:48 2011 +0100

    part-get-bootable: Fix when partitions are missing or unordered (RHBZ#602997).

commit 18296ca663fe5731e8fcb626ebe3052dbb791850
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 18:16:40 2011 +0100

    New API: ntfsresize-opts (RHBZ#685009).
    
    This is a more comprehensive fix for RHBZ#685009.  Add a new API which
    allows the --force flag to be passed, allowing multiple NTFS resize
    operations in a single session.

commit 1bb79f5c6b5e0bd5b65571997aecf9382649ba3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 14:13:57 2011 +0100

    Document that ntfsresize cannot be used multiple times (RHBZ#685009).

commit 6d9daa07b2b3244fadb53d380318b5fd3af9c81d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 13:31:42 2011 +0100

    fish: Show device mapper device in tab completion (RHBZ#688062).
    
    With this change:
    
    ><fs> luks-open /dev/vda1 lukstest
    Enter key or passphrase ("key"):
    ><fs> ll /dev/<TAB>
    /dev/mapper/lukstest  /dev/vda              /dev/vda1

commit f7e6ebef3c63d35abfd10370d5d73a1bc3e2a50e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 13:26:25 2011 +0100

    New API: list-dm-devices (RHBZ#688062).
    
    List device mapper devices.

commit 7caabbb277c23088a76d6dcd9100abbcd529a053
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 12:23:15 2011 +0100

    Don't mention /dev/mapper in docs for vg-activate{,-all} commands.
    
    Although vg-activate and vg-activate-all do make /dev/mapper/VG-LV
    devices internally, we always prefer to use the /dev/VG/LV format and
    we return this format where possible.  Therefore don't mention
    /dev/mapper in this documentation.

commit f78506768d6e11ac11030906a7a0c659c2d18bb8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 18:17:35 2011 +0100

    protocol: Force optargs_bitmask to be passed as 0 for non-opt actions.
    
    If the action doesn't take optional arguments, nevertheless force the
    optargs_bitmask field in the header to be passed as 0, and give an
    error if not.

commit 6b6d4e03ae6fc7988bd16e8e4bf464db0787d9ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 12 12:51:43 2011 +0100

    list-9p: Avoid double free along error path.
    
    This updates commit 5f10c3350338bbca735a74db26f98da968957bd9.

commit b402e860b0750743baff75848c771972ee6171bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 6 17:25:00 2011 +0100

    Version 1.11.14.

commit 4d23911a5774a978de14ebcc62c1c27d146129f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 6 10:53:04 2011 +0100

    mkfs-opts: Don't test optional arguments in this test.

commit 8d882db3d4ab25cba97d557be57919f1448f4dd4
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Wed Jul 6 10:36:13 2011 +0100

    mkfs-opts: Add optional sectorsize parameter.

commit be8b595d5d7dca84a8b3b42bec8e9ff7e69d11a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 6 10:50:25 2011 +0100

    capitests: Allow tests to properly test optional arguments.
    
    For optional arguments, you can now specify empty string to mean no
    argument, except for String optional arguments where you must use
    "NOARG" (empty string meaning a supplied empty string argument).

commit e32d7f503bf7afaac5c5698084c6db7215b57f22
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Mon Jul 4 10:25:04 2011 +0100

    Implement inode option to mkfs_opts command.
    
    This is needed because older versions of grub(for example in centos)
    do not understand filesystems created with newer version of e2fsprogs.
    By default in e2fsprogs 1.4+ creates partitions with 256 bit inode
    size, and grub expect 128 bit size.

commit 7aa339484d05bb54000ec1dac03e5e69dacde9d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 30 16:06:07 2011 +0100

    Version 1.11.13.

commit 3d9c59965af2b5efd86525e38ccf7630e68e9d1a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 30 12:57:31 2011 +0100

    Add caution subdirectory containing safety and liveness tests.
    
    Not that I'm paranoid about qemu breaking snapshots of anything like
    that ...

commit 3e666ad7285be2a38b1f2b890acbdf3329c979e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 30 12:06:09 2011 +0100

    Update release notes.

commit dde17ef447fe84d012d24247666b4d874058f79a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 30 11:36:38 2011 +0100

    inspector: Update documentation to cover <icon> element.
    
    This updates commit 7f16c346bbeba2f2fe3c31ccb85158178a284d84.

commit f68607ebb4c6bdd26cddd21746f2582ec0338815
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 30 10:14:33 2011 +0100

    python: Add explicit g.close() method (RHBZ#717786).

commit 0e58d9b25bdb276e686ef29e96139260c5799327
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 29 13:41:50 2011 +0100

    docs: Update API support.

commit ad472b69f0bc2c13ee44662dfc38f2b66213a04d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 28 19:52:11 2011 +0100

    Version 1.11.12.

commit 5b0b5f06de853dd903414449ae3adf3b87e3511f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 28 18:58:54 2011 +0100

    fish: Add 'display' command for displaying graphical files.

commit c3325e924ae08ba95971b734dc4fa4575366b887
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 27 15:27:46 2011 +0100

    New API: inspect-get-icon returns the guest icon.
    
    This API returns the guest's favicon if found, else an icon
    representing the guest operating system.  Currently supported by this
    patch: Fedora, RHEL and derivatives, Debian (but not Ubuntu),
    Windows XP, Windows 7.
    
    This also updates virt-inspector to include an <icon> element
    containing the icon in base64 encoding.

commit ce0b3409751c84859b99daacb51130767fa592f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 27 16:10:25 2011 +0100

    Change download_to_tmp so it can work with multi-root operating systems.
    
    The previous guestfs___download_to_tmp function did not handle
    multiboot correctly.  In particular it used the same cache name
    for downloaded files from different roots, which could have caused
    things like applications in each root to be confused.
    
    This changes the function so that the cache filename is prefixed
    with the root / fs number, eg. $tmpdir/0-Name instead of $tmpdir/Name.
    
    This change also requires the function to return the new name, so
    all places in the code which called this function had to be
    updated.
    
    This updates and fixes commit 3c1f762abed92f7a358f3bc93e3396d0606b18ad.

commit b9c58425eced307367aa11f82d5402e10d9050d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 28 08:50:14 2011 +0100

    generator: Fix functions with both RBufferOut and optional args.
    
    No current function returns RBufferOut and has optional args.  Such
    functions would be generated incorrectly.
    
    RBufferOut implies a silent "size_t *size_r" argument is added after
    the regular arguments and before the optional arguments.  Various
    changes to the code generator need to be made to take this into
    account.

commit 5f038053d1c631b03cb2586b6f0e201f8ffa6fb4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 28 17:02:46 2011 +0100

    inspector: Fix comment in virt-inspector.rng.
    
    The comment referred to the command line syntax of the old
    virt-inspector.

commit dd88da29b6366ff640c6844b79d74efb3108e83c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 28 09:58:44 2011 +0100

    inspection: Remove note about root device string.
    
    This is a fairly pointless note/warning since (a) you can't use the
    API if you don't pass a root device string and (b) the code gives you
    a good error message if you pass something that is not a root device
    string.

commit ede9b7ce0f5ee19bd209b5b97b81571706ce5868
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 28 10:36:09 2011 +0100

    guestfs.h: Tidy up *_argv structs and other #defines.

commit cb7b997ba4de907335df3db68d2233272db59369
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 27 18:14:15 2011 +0100

    Revert "Lib.pm: unknown filesystem label SWAP-sda2 (RHBZ#666578)"
    
    This reverts commit 5cab0d6c807d8a3bf9690375c663d11a10e21656.

commit af9d2d7c451053e1cb73094ecc47ea5856c3b6b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 13:55:14 2011 +0100

    New API: mount-9p lets you mount 9p filesystems (RHBZ#714981).
    
    The updated patch makes 'options' into an optional parameter.

commit 1d944bfed92a996c4d3759be2b038d63f533dfa2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 10:13:23 2011 +0100

    New API: list-9p lists 9p filesystem mount tags (RHBZ#714981).

commit bcabb5ac7ad07f5f05a75cba49f37255adf371fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 22 10:36:44 2011 +0100

    trace: Print empty list correctly.
    
    Empty lists returned by RStringList and RHashtable functions
    were incorrectly printed as [""].
    
    Fix this so they are printed as [] instead.

commit 0119f28dbbf763ab52558239512a9335999b57ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 21 13:22:16 2011 +0100

    Version 1.11.11.

commit a5f9ca16e920ef205ea52ce175648debafae303f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 20 10:35:02 2011 +0100

    Enable deprecated option only with gcc >= 4.5.
    
    Before gcc 4.5, the deprecated option did not take the optional string
    argument (see [1]).  This caused compilation to fail with gcc < 4.5.
    
    [1] http://gcc.gnu.org/gcc-4.5/changes.html

commit 8e92b6df0af715eb851c69a6ed8890bfbb848074
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 13:04:18 2011 +0100

    perl: Ignore MYMETA.yml.
    
    This file is created by one of the build tools used by Perl 5.14.

commit 48f3c99c5a4aefcef207a2da06d5b0aaec828cb9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 13:01:12 2011 +0100

    todo: Idea for interactive disk creator program.

commit 318aa1cd198cfb0a6e4f5cec003de58166081fa4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 18 13:00:00 2011 +0100

    perl: Don't use qw() as parentheses.
    
    In Perl 5.14:
    
    Use of qw(...) as parentheses is deprecated at perl/blib/lib/Sys/Guestfs/Lib.pm line 1111.

commit 95e84a3e9e2d5fada3b9866c3b0def531b1b99d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 13 18:58:53 2011 +0100

    generator: Rewrite UUIDs that begin with zero byte.
    
    In util-linux <= 2.19, mkswap -U cannot handle the first byte of the
    UUID being zero, so we artificially rewrite such UUIDs.
    
    See: http://article.gmane.org/gmane.linux.utilities.util-linux-ng/4273

commit 8f9dfebc25b7f9968480655a9f898616c8cc0afc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 10 16:03:55 2011 +0100

    Version 1.11.10.

commit 7ceb11bdcc1b472aedcf78e0993577ef04cbf648
Author: Jim Meyering <jim@meyering.net>
Date:   Fri Jun 10 11:57:20 2011 +0200

    build: include <string.h> for src/match.c's use of strlen

commit 77d4c450ce544106e9e01c075f7ab11986c58092
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Jun 9 22:15:52 2011 +0200

    bootstrap: use --libtool

commit 3f79e011ddacbb0950958f32d1dfda654c2b0165
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Jun 7 19:48:16 2011 +0200

    build: update to latest gnulib
    
    * .gnulib: Update submodule to latest.
    * daemon/m4/gnulib-cache.m4: Regenerate.

commit 82e27100e40a80136d976669c794788773b6f801
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 9 10:10:50 2011 +0100

    daemon: Keep Coverity happy by ignoring some return values.

commit e257e5e53baca3f1b1309099bac821aed1dbfbcf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jun 9 09:39:54 2011 +0100

    Coverity: Don't return freed pointers from command* along error path.
    
    If the external command failed to run, we could free up the allocated
    *stdoutput and *stderror pointers, but then return those freed
    pointers to the caller.  The caller usually tries to print and free
    *stderror, so this is a serious error.
    
    Instead, return *stdoutput as NULL, and *stderror pointing to a
    generic error message.

commit 0a5d711443837ecf8a6e5b3fc8f80c1520afae27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 22:38:53 2011 +0100

    Coverity: Missing return on error path.

commit 7ec9993533a0d292353f88539cf5be41e0752fb2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 22:30:24 2011 +0100

    Coverity: Ensure fp is closed along all error paths.

commit c38a5b7067e53896be78224bd05f378eaff156a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 22:27:01 2011 +0100

    Coverity: Close directory handle along error paths.

commit b5b3f0171d6d33da5fe0ae264db2143fc7136219
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 22:25:21 2011 +0100

    Coverity: Don't leak argv arrays.

commit af035c8d075a8fce01f926e3de67c0a2bacee978
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 22:16:59 2011 +0100

    Coverity: Don't leak error strings.

commit f9648fbbe61dff9d948d80b19f7d297e0d2fd025
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 22:14:21 2011 +0100

    Coverity: Check return value of sysroot_path.
    
    For some reason we were checking the parameter!

commit 6f132e29788d378237f233500d3213305b644a0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 22:07:36 2011 +0100

    Coverity: Check return value of malloc.

commit 0716fdc018359a68016cf80c87164efbd02b1119
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 22:04:25 2011 +0100

    Coverity: Don't close fd_cwd if fd_cwd == -1.

commit 276fee32eca4ae89873a0fed0ea909deddfdf4a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 22:01:41 2011 +0100

    Coverity: Avoid calling sort_strings (NULL, 0) on empty list.

commit bad2d7d490a5e2fd7d93317ec9148762b6b11326
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 21:56:56 2011 +0100

    Coverity: Don't call free_strings (NULL).

commit e7f92dd0a4bc96c369b8679b6c4f22e0e948b0ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 21:53:07 2011 +0100

    Coverity: Remove unreachable code.

commit e57e4fe625503541e46c2a5440919bbd291ccd19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 8 13:12:01 2011 +0100

    init: Remove timeout in udevadm settle command.
    
    The given timeout (10s) was too low if the appliance was
    running slowly, which caused a cascade of other failures
    during tests.
    
    Note that in udev-171 and above on Fedora, /sbin/start_udev
    no longer exists, so now we are using this manual method to
    start udevd.

commit 509562a47bf14e46cd5295efab00873b2affa277
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 7 12:36:02 2011 +0100

    protocol: Enhance "unexpected end of file when reading from daemon" error.
    
    Make this error more informative, since it is a common error when the
    appliance fails to start up.

commit af39db7a08cb034021f23ad1dcc6e2ec7231bad8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 22:22:44 2011 +0100

    Version 1.11.9.

commit 9ab509ddc292bc84853e60b175b28bdff84cd445
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 22:47:52 2011 +0100

    Only include date, not time, in BUGS file.
    
    This is so the file does not change so often when using 'make dist'.

commit 05ebdd9aed79c30a2f70fc329ed23aad02e14383
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 22:22:04 2011 +0100

    Remove dependency diagram, since it is very out of date.

commit a95dbac02ebbbc3809533b2d70013cdaab4eecd9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 17:00:07 2011 +0100

    virt-ls: Add virt-ls -lR option for complex file iteration.

commit 4760e7a1c78383a8b07322b64d432c8e4ae4ae70
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 15:19:05 2011 +0100

    virt-ls: Refactor mode selection code.
    
    This is just code motion.

commit 5533a52acfd8222a7e1df39f6def51232b38a547
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 14:49:19 2011 +0100

    virt-ls: Small fix for output of --help option.

commit 76451deb060106c06a0bf882e928301beec3356e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 4 13:13:11 2011 +0100

    Ubuntu: Fix compilation of virt-resize if old libguestfs already installed.

commit 38609eef6763ba54f1286206d359ae2086d61303
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 3 09:41:20 2011 +0100

    recipes: in tr command \000 should be \0

commit cc2d3e21dd9c4b4e2acf56193652cfa42d5c8dcd
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Fri May 20 11:26:09 2011 +0100

    daemon: Fix error message.

commit d1c8aac0833c4a25c16263a34e8f92adb925b605
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 20 10:54:55 2011 +0100

    todo: Document thoughts on visiting files.

commit 4ac68ade62f1243ded453c9f7722de352e718420
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Fri May 20 10:35:06 2011 +0100

    debian: Add build dependencies: dpkg-dev, devscripts, gperf.

commit 9980e5d753108c5389212319b2e0a958d5f3f5fb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 19 14:44:02 2011 +0100

    daemon: Make sysroot_len be size_t instead of int.

commit ea31c13c709d9b2875b14cb99d378f675af44fde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 18 22:23:05 2011 +0100

    todo: Remove event log parsing - done.

commit e12f1c73c6e3c03d162e2d07adf74ff1d1fd9025
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 18 21:11:47 2011 +0100

    build: Install guestfs-recipes.1.html on website.
    
    This updates commit f2c7df589c7e161f33b46d05a943b5489dc2cffe.

commit 0c1676c301323953d6826bd7442b4eb4c21377d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 18 15:45:36 2011 +0100

    Add new guestfs-rescue(1) man page with recipes.

commit befa4a12eb7e5e2daa707220f7d53d6fb5cfbe29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 18 15:27:20 2011 +0100

    Remove guestfish recipes.
    
    These were out of date.  We will replace them with more up to date
    information.

commit 5a17cb2ea8d0fbb4972cc02334f42ed5a7a2ef3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 18 15:32:59 2011 +0100

    guestfs-examples(3): Remove link to OCaml homepage.

commit 0727c34c8654301f76109f5da0a36049a8da6ad6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 18 10:04:37 2011 +0100

    Version 1.11.8.

commit 2f3422b37f4b712c7a4293a2c3047792e4dc8c2d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 18 10:04:05 2011 +0100

    zero: Disable file test because of bug in file command.
    
    See: https://bugzilla.redhat.com/show_bug.cgi?id=705499

commit d289d6c5479638fcb2ff3ca99c80815016e235d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 22:54:20 2011 +0100

    virt-win-reg: Win XP paths can contain %systemdrive%.

commit 6ca14d6acb188b5ce37ef691319f096e572d2b39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 22:53:53 2011 +0100

    virt-win-reg: systemroot macro should be replaced case insensitive.

commit 280c48ab33dc78c6e6dbb822edbd8b466969f81f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 22:06:00 2011 +0100

    New APIs: is-zero and is-zero-device, to test if file or device is all zeroes.

commit 5e11f31ae54b585c13ac732863f5a285fefcf6ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 20:57:56 2011 +0100

    Document that guestfs_file output depends on file(1) command.
    
    And therefore practically it cannot be part of the ABI since
    the output of file(1) itself changes from time to time.

commit ee10dccf604fd766a9c05e471573ea8b3f4e33b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 19:51:37 2011 +0100

    fuse: Add note about allowing other users to see filesystem (RHBZ#705200).

commit a7a48d9567682e31fe023f5a16e154218ce2d20c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 17:48:48 2011 +0100

    Version 1.11.7.

commit adcc72773e43a1908ee1db9362469d4f4934e690
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 15:52:28 2011 +0100

    generator: Mark sfdisk functions as deprecated.
    
    Point to the part-* API calls as replacements.

commit 3c11ccf992ab2e52fc3c921b25d3570d5755c983
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 15:52:16 2011 +0100

    generator: Mark mount as deprecated.
    
    Callers should use 'mount_options' or 'mount_vfs' instead.
    
    See also:
    http://libguestfs.org/guestfs.3.html#libguestfs_gotchas

commit 50cd0c81afeb26c2520031234ed794f23b9c789c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 15:51:25 2011 +0100

    generator: Mark wait_ready as deprecated.
    
    The function has been a no op for a very long time.  By marking
    it as deprecated we make it clear that you shouldn't call it
    in new code.

commit 210649cde6b417586244379e76108d73b0539adb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 15:50:16 2011 +0100

    generator: Check the flags fields.

commit f0e3fabbce0ea423cbd9e61f3cb6ddb215c220d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 15:04:56 2011 +0100

    Enable deprecation warnings on all C programs.

commit cca1a89caced1fc17fc46184bf1d92ada085c47c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 14:46:16 2011 +0100

    fish: fuse: Remove redundant -DGUESTFS_DEFAULT_PATH.
    
    This was left over from earlier code.  It is used in the base library,
    but not in guestfish or guestmount.

commit 3ba03bd0117266a17682df91627682de61feae66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 14:41:54 2011 +0100

    lib: Warn about deprecated functions (enable with -DGUESTFS_WARN_DEPRECATED=1).
    
    This allows C API users to be warned if they are using any deprecated
    functions.
    
    We don't warn about this by default.  Users have to specifically
    request this by defining the cpp symbol GUESTFS_WARN_DEPRECATED as 1.

commit 995054aefa2802b640b340bc468b2bbba9fcb7b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 14:41:34 2011 +0100

    lib: Add GCC version macro to the header file.
    
    This will be used to internally enable various GCC enhancements.

commit 5985195d8922eba7d0ab1badc93205d93b1ed33b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 14:43:48 2011 +0100

    lib: Add vertical space between each function in <guestfs.h>.

commit de483e3b39ce180a45ecac029223334538d789ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 13:58:20 2011 +0100

    appliance: Use qemu -machine option where available (RHBZ#700369).

commit 95cc7f2e1bd9a2d4c266394d941191d3beea5ec5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 13:16:17 2011 +0100

    virt-win-reg: Support HKEY_USERS keys.
    
    This adds support for various Registry keys under HKEY_USERS (user
    preferences).
    
    (1) HKEY_USERS\<SID>
        where <SID> is a User SID.
    
    For example:
    
      # virt-win-reg Windows 'HKEY_USERS\S-1-5-19'
    
    lists out the LocalService user's registry.
    
    (2) HKEY_USERS\<username>
        where <username> is a Windows local username (this is a
        libguestfs extension).
    
    For example:
    
      # virt-win-reg Windows 'HKEY_USERS\rjones'
    
    lists out the user preferences of user 'rjones'.
    
    HKU can be used as an abbreviation for HKEY_USERS.  Merging is also
    supported.

commit d506e3bdf76eb5e2df7ca223b07c7629deacc02c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 13:15:25 2011 +0100

    virt-win-reg: Don't use implicit $_ in map_path_to_hive function.

commit 5c157ec246210b25253527b33032025ea1e7a37e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 09:00:30 2011 +0100

    virt-win-reg: Don't hard-code the relationship between hive name and path.
    
    The crucial change is the tuple that is returned by map_path_to_hive:
    
    -    my ($hivename, [...]) = map_path_to_hive ($_);
    +    my ($hiveshortname, $hivefile, [...]) = map_path_to_hive ($_);
    
    Previously the $hivename was both the name of the hive (eg. "sam"),
    the name of the local copy in /tmp, and the name of the hive in
    %systemroot%\system32\config.
    
    In the new code, the $hiveshortname (eg. "sam") is still used for the
    local copy in /tmp, but we return $hivefile which is the full Windows
    path (eg. "/windows/system32/config/sam").
    
    The purpose of this change is to allow us in future to return hives
    from other Windows directories, specifically HKEY_USERS hives from
    Windows home directories.
    
    Although this is just code motion, it requires some quite extensive
    changes to virt-win-reg.

commit c404801a5ba170ff745a8d8fe12a05ceac2d6406
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue May 17 11:28:00 2011 +0100

    virt-win-reg: Add --unsafe-printable-strings option.
    
    This also requires hivex >= 1.2.7.

commit a15ba506f186a25419766863d9f9b14df549074d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 16 12:08:00 2011 +0100

    todo: See if qemu -machine option can be used to select KVM, TCG acceleration.

commit a963b3d23dab19caaaa6353186f9dc78f223f11b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 16:31:29 2011 +0100

    Version 1.11.6.

commit d7bfbb4f47fb9f8b67ae7b9b45d0563aa84b258b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 16:04:16 2011 +0100

    debian: Note that libconfig-dev ought to be required.
    
    However it doesn't appear to be in Debian at the moment.

commit efdfd0113d749037cca79d53753fbb64b52a685f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 13:52:27 2011 +0100

    debian: Include debian/ directory in tarball.
    
    This makes it simpler to build Debian and Ubuntu packages from the
    tarballs.

commit 637d87b4473de93d02fb07b050825de15c23e0da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 12 13:50:38 2011 +0100

    build: Sort EXTRA_DIST into lexicographic order.

commit 16f40e3e2ba0cd2cebb0fcdf265002f3399a521e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 9 16:30:30 2011 +0100

    configure: Use Python platform-dependent site-packages.
    
    This updates commit c446e6e26e317e105870b0ab25fb082887e23bf6.

commit 3efcdc1b528f5308415bdf46b0d76c44eed8795c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 9 15:22:32 2011 +0100

    Version 1.11.5.

commit c10e78fcae8ba69e813842b6150b6d0abc2d3940
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 9 14:59:33 2011 +0100

    edit: Reorganize options alphabetically.

commit aa8f43795fb98239c19244bd4143f49da4df8a31
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 9 14:40:12 2011 +0100

    edit: Fix reference to virt-cat in the documentation.
    
    This updates commit 2b5fbc882a0a79646b668c7b95442f0b3673d63a.

commit 124e98f9dc3b84a7b9ea007d779c28e1f1c1543c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon May 9 14:34:31 2011 +0100

    Use Python distutils to determine include and site-packages directories.
    
    This change was inspired by Hilko Bengen's similar change to hivex:
    http://git.annexia.org/?p=hivex.git;a=commitdiff;h=b808c875a34e62fcdf360534f923d6030590ff44

commit a037c539b56f7c9cc3299f107a02416cab9c1eb0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 6 17:42:07 2011 -0400

    Rewrite virt-edit in C.

commit ca8ca6a81a0713ca9eef8072572fe23f96f2589d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 8 21:59:50 2011 +0100

    daemon: Remove some less useful debugging messages.
    
    Remove some debug messages which were basically left over from when
    the code was being developed.
    
    However we leave debug messages where it is printing an external
    command that is about to be executed, since those are useful.

commit b039f52af0ad152ff73f0a6a6f5bf33af9d4531e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 8 16:53:03 2011 +0100

    Version 1.11.4.

commit 042130bd469e027540a32bf53e25d754be9283ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 8 15:13:23 2011 +0100

    Fix guestfs___rollback_cmdline when pos == 0.
    
    Because of the previous change to size_t, when pos == 0 the loop would
    wrap around and cause a segmentation fault.
    
    This fixes a regression introduced by
    commit 10167cea98f93a74abe63f0a54d3a662997e7489.

commit b1829483934ab060e108ab58ee677f6fba83fb90
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 6 17:33:44 2011 -0400

    configure: Sort output files in AC_CONFIG_FILES section.

commit 6031ea84f13b17ead68df6d76501f7b1c1debac4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 6 12:23:00 2011 -0400

    fish: Allow -d UUID (specify libvirt domains by UUID).
    
    This applies in all the commands which use the common C option parsing
    code, ie:
    
    * guestfish
    * guestmount
    * virt-cat
    * virt-df
    * virt-filesystems
    * virt-inspector
    * virt-ls
    * virt-rescue

commit 443d1ee69aff880019d16e9ffff74974bd1c9a8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 6 12:21:01 2011 -0400

    add-domain: Add allowuuid flag to allow UUIDs to be used for names.
    
    This makes a backwards-compatible change to the add-domain API.  If
    the optional allowuuid flag is true then UUIDs can be used instead of
    names in the domain name parameter.

commit 0be2c6229be4b8451e6e68dc38a7914a8d623e62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 6 12:32:59 2011 -0400

    add-domain: Suppress libvirt errors on stderr.
    
    Install an error handler on the libvirt error connection so that
    errors are not printed on stderr (instead they go up through the usual
    libguestfs error mechanism).
    
    Unfortunately this doesn't suppress initial connection error messages
    to stderr.  I cannot see how to do this without affecting the global
    libvirt error handler, which is not acceptable for a library to be
    doing.

commit 0d55d21bca6fb809f0d8d87c126c63fcbd4d80c6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 1 17:41:20 2011 -0400

    doc: Use I<-...> for cross-references to command line options.
    
    This is now used consistently across all the documentation.

commit 061c6c6e8d60a537553f82d466f57cf198eadf04
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun May 1 14:53:23 2011 -0400

    df: Refresh virt-df(1) man page.
    
    Add examples.
    
    Refresh description.
    
    Use I<...> to refer to command line options.

commit 8bbafdebbbfe77022c8a587259b3b8f93595d5f3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 20:11:21 2011 -0400

    guestfs(3): Note that host file size limits affect guest disk limits.

commit 15dd5b454519a2de5a3895846f067e5b313c5587
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 19:38:20 2011 -0400

    guestfs(3): Refresh documentation for private data area keys.

commit b954139effb064477710f074ab21a300ef45550d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 19:26:08 2011 -0400

    guestfs(3): Document that old callback functions still work.

commit 6d77dbad140dc95478ef382a58c727e39e98d501
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 19:10:52 2011 -0400

    guestfs(3): Referenced section is above, not below.

commit ff92b094626194909edc64d9f8e2ea9a4c18ed55
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 19:10:25 2011 -0400

    guestfs(3): Refresh autosync gotcha documentation.

commit f4af660b312323a5c256718d3a706b6b79b71894
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 18:45:56 2011 -0400

    guestfs(3): Writing to a file descriptor, not just a pipe.

commit efaacd7e6adb97573dc561a27ad5455dcc95af99
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 18:31:06 2011 -0400

    guestfs(3): Refresh documentation for guestfs_create, guestfs_close.

commit d949705f8b52d06a7b9f9c14e1881b842272d34d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 05:55:27 2011 -0400

    Add a trace message to guestfs_close.
    
    Only the "first half" (ie. the call) is traced, because by the time
    the function returns the handle has gone and there's no way to
    generate events.
    
    You should see:
    
      libguestfs: trace: close

commit 4a0fd20f2e3d6f086d1ada68943fef9a1373da12
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 05:49:06 2011 -0400

    internal: Use size_t instead of int for command line size.

commit 07c92f0a8d4b60e21e75bee9f45df3fe512a2e3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 05:45:26 2011 -0400

    guestfs_close: Move local variables close to code that uses them.
    
    This is just code motion.

commit 8c68197d31cbf0ae0e266ffef08dd2520604d338
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 30 05:42:43 2011 -0400

    guestfs_close: Remove unused local variable.

commit c8d92a1470ce7833bf4fe60b6f5f44202f8cf1bb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 27 20:10:24 2011 +0100

    guestfs(3): Document limits.

commit 2a2d58d8f176710fbed7c074fa4c5e897e038a92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 26 11:00:10 2011 +0100

    todo: Integrate with CMDBs (thanks Quinten Laureijs).

commit 41186a346863332dfc66b9895f589df395eaaca0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 22 22:53:07 2011 +0100

    python: Ensure Python GIL state is correct during callback.
    
    This updates commit 2cac52000a6a96a583af72e289a4296c596047d5.

commit 5a51976fb01f405a985d762ad8812f37918a3280
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 22 22:26:02 2011 +0100

    Version 1.11.3.

commit 8073f322aa2b206883f89b7d0335ae1f5875b599
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 22 21:36:41 2011 +0100

    python: Implement new event API.
    
    This implements set_event_callback and delete_event_callback so that
    Python programs can use the new event mechanism.

commit bc9c787f016c749e07c7772799f380af60c74f56
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 22 19:58:29 2011 +0100

    python: Rearrange C files for bindings.
    
    Move the hand-written functions into two new files:
    guestfs-py.h and guestfs-py-byhand.c
    
    This is just code motion.

commit 69a8e57385349330502639ed0fd03bf49423cc34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 22 21:34:08 2011 +0100

    perl: Decrement refcount in $g->delete_event_callback.
    
    This updates commit bc468c87d04b34faacd208c49cca4a5096e5103c.

commit d9980212116b2900ee5fd47b997a1e343fd29849
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 21 17:33:48 2011 +0100

    inspect: Look for %systemroot%/system32 for Windows heuristic.
    
    The virt-v2v transfer ISO had a /windows directory.  The core
    inspection code thought this was a Windows root filesystem.

commit 06552efb9545ae3ba7ecc1444576050c0aead135
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 21 17:29:44 2011 +0100

    list-applications: If software hive is missing, this is an error.
    
    virt-inspector would exit silently if list-applications failed along
    this error path.

commit ccbd27486daa2394ee30c6532fd35df69fe84ff9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 21 15:09:11 2011 +0100

    inspect: "centos" and "scientificlinux" are now separate distros.
    
    Previously we returned "rhel" for these, which was not accurate.

commit 1834f781b9eeadcdcee57da13b40db832b96b8be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 21 14:47:57 2011 +0100

    Update TODO.

commit b592d3af942ba77b848315fea1321e359f6e574d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 18 21:47:45 2011 +0100

    Version 1.11.2.

commit 24488b37098a0bd0de4a32e2ad7b7876bf19dcf7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 18 16:56:08 2011 +0100

    python: Release Python GIL while running libguestfs calls.
    
    Release the Python global interpreter lock while running libguestfs
    calls.
    
    We don't release it around guestfs_create() because that is a short
    call that just allocates memory.  We do release it around
    guestfs_close() since that is a potentially long-running (it can call
    wait(2) amongst other things).  We also release it around all the
    other generated Python calls.
    
    We don't yet support callbacks into Python code (ie. the new event
    API).  But when we do in future, we will need to also handle the GIL
    around those callbacks.
    
    This code is adapted from libvirt's python/typewrappers.h.  Thanks to
    Dan Berrange for showing us how to do this properly.

commit 392b108a8905608f473b971223e5bf2bcff7b115
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 16 21:35:11 2011 +0100

    fish: --rw option will be mandatory in 1.12 not 1.10.

commit 4c640d77b2b2533ad6fe107592951384b5b685ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 16 21:26:15 2011 +0100

    fish: Fix typo in guestfish man page (--format option).

commit 7a8465021f49be472b5adf5d377acadd011636eb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 16 21:12:53 2011 +0100

    inspector: Refresh the virt-inspector(1) manpage.

commit 8c83a61fa11a2ce1d8e06d31609db8fd29609f91
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 16 15:29:58 2011 +0100

    run script: Don't depend on libtool being installed.
    
    Also use 'exec' to run the program.

commit 8a66471ac6917e9351e71f3c8781819df0a4aa3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 16 14:57:33 2011 +0100

    Version 1.11.1.

commit 96d727ce1f4b63b5a5ceace44fb51e96052b8cb8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 16 14:56:38 2011 +0100

    Add images/guestfs-aux/fedora-packages.db{,.txt} to EXTRA_DIST.
    
    This updates commit d95874db3dc6c415061b86275d03770b4f28ffbb.

commit 105af4ee960864234e68c4dc0358e2efb3cf5a02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 16 07:28:47 2011 +0100

    Remove local LIBGUESTFS_PATH detection from guestfish and guestmount.
    
    Remove the hack that let you run ./fish/guestfish or
    ./fuse/guestmount.  You now have to do:
    
      ./run ./fish/guestfish
    or
      ./run ./fuse/guestmount
    
    to run these programs without installing.

commit 59a8bbd1278abc2e59e5b4b884296014fd67889b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 15 21:43:20 2011 +0100

    Remove ad-hoc run*locally scripts, replace with './run'
    
    Remove all the run*locally scripts and replace with a single top level
    ./run shell script.

commit ee8189b4bd692823c455ee550082279fd2209af8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 18:19:04 2011 +0100

    inspector: Handle write failures when creating example-*.xml.

commit bc500fb3c8c7a46d7640c2c5d9d8c8755e2b4437
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 18:17:43 2011 +0100

    Delete file so db_load doesn't run incrementally.
    
    It turns out that db_load incrementally updates the database (instead
    of writing a new one).  Remove the old database to force db_load to
    write a new one.
    
    This also ensures that we handle write failure gracefully.

commit 00de56f327aa38278b350bfb45c79dc8edb1ab27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 17:58:51 2011 +0100

    inspector: Include <hostname> in output.

commit 29f27f8f9d424a3ca05a5b9fa311243afe3f1aec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 17:53:48 2011 +0100

    inspect: Get version and release of RPM packages.
    
    This commit downloads the Packages RPM database allowing us to find
    other details about installed RPM packages (via
    inspect-list-applications).  This adds version and release.  Epoch
    cannot yet be found.
    
    This commit also updates the Fedora example image so that it contains
    a dummy RPM Packages database with some data.

commit b38566049e114f343d6f25717b6b4d09c7d771b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 14 13:28:02 2011 +0100

    inspect: Abstract out db_dump code for listing RPM applications.
    
    There are two changes here:
    
    (1) The code for listing RPM applications ran db_dump and parsed the
    output.  We abstract out that parsing code into a separate reusable
    module (src/dbdump.c).
    
    (2) The old db_dump parsing code used db_dump -p (printable) format.
    Instead use db_dump -k (hex) format so we can read binary fields.

commit 7d7b9ce4e9af0751998c5b17b5fc6cacc0f61462
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 13 23:27:05 2011 +0100

    inspect: Split code into separate files.
    
    The src/inspect.c file had grown rather large -- 3,500 lines.  Split
    it across several files according to function.
    
    This is just moving code.
    
    After the split the files are more evenly divided:
    
      536 src/inspect_apps.c
      766 src/inspect.c
      537 src/inspect_fs.c
      404 src/inspect_fs_cd.c
      785 src/inspect_fs_unix.c
      535 src/inspect_fs_windows.c
     3563 total

commit e330d03271a0071f5e3784a08d20f1ac991d5887
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 13 23:02:45 2011 +0100

    inspect: Move shared PCRE match functions to separate file.
    
    This is just moving code around.

commit 4784ee7fdd8f6a966f00b4d5d950a5f16eb16faa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 13 22:35:35 2011 +0100

    inspect: Cache downloaded files in the handle g->tmpdir.
    
    During inspection we download various files such as the Windows
    'software' and 'system' registries.  Previously these were downloaded
    as temporary files and discarded immediately after use.  This meant
    that the 'software' registry was being downloaded twice by
    virt-inspector (it's required once for basic OS inspection, and a
    second time to list Windows applications).
    
    This commit changes this so that these files are cached in g->tmpdir,
    and thus the second time we just reuse the file we've already
    downloaded.
    
    Callers shouldn't be relying on inspect-list-applications to reread
    the actual registry from the VM (unless you close and reopen the
    handle).  It says in the documentation that the results of inspection
    may be cached in the handle.

commit f033ab0507801940bac17f23cf3e846088d95b9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 13 22:02:08 2011 +0100

    Remove temporary directory containing arbitrary files.
    
    In preparation for caching inspection information in the temporary
    directory (g->tmpdir), allow the temporary directory to contain
    arbitrary files, and remove all of them when the handle is closed.
    
    This just generalizes the previous method of cleaning up the tmpdir.

commit 50fb4c0de6c150f3baa0e2f04d4ed57abe0caaee
Author: Jim Meyering <jim@meyering.net>
Date:   Wed Apr 13 15:17:32 2011 +0200

    Include string.h and libintl.h, as needed.
    
    * df/df.c: As above.
    * df/main.c: As above.
    * df/output.c: As above.
    * fuse/guestmount.c: As above.
    * inspector/virt-inspector.c: As above.
    * rescue/virt-rescue.c: As above.

commit 3647335f13aa9dbd9e37d89c3534c576dc19374d
Author: Jim Meyering <jim@meyering.net>
Date:   Wed Apr 13 13:15:39 2011 +0200

    Add more missing include directives.
    
    * cat/virt-cat.c: Include string.h and libintl.h.
    * cat/virt-filesystems.c: Likewise.
    * cat/virt-ls.c: Likewise.

commit 46bb35100807b0d0fa91dad397b565d2235da432
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Wed Apr 13 12:41:27 2011 +0100

    debian: Add dependency on libpcre-ocaml-dev.

commit f069713a07d15029023156dc36d8c02887d6fe43
Author: Jim Meyering <jim@meyering.net>
Date:   Wed Apr 13 13:00:06 2011 +0200

    Add missing include directives.
    
    * fish/config.c: Include string.h, for use of strlen.
    * fish/keys.c: Likewise, but for use of memcpy.
    * fish/man.c: Likewise, but for use of memset.

commit 98466c8db1aee943584540b2857f5bfeaf3bf8bc
Author: Jim Meyering <jim@meyering.net>
Date:   Wed Apr 13 11:11:42 2011 +0200

    Avoid warning about implicit declaration of strlen.
    
    * src/events.c: Include <string.h>, for use of strlen.

commit 2f25573fa1fb3dfa96df785e379346d206dd4c68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 22:45:39 2011 +0100

    debian: libguestfs-test-tool-helper no longer exists.

commit e3c3e68ce5b135cd20e236944f4d213ddc409e18
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 22:45:18 2011 +0100

    resize: Include stamp file for manpage in CLEANFILES.

commit 740b5e563e6fbf3221b62f432088eb3077d60991
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 20:14:51 2011 +0100

    Version 1.11.0.

commit 3f78c96abea97d8e920ab4a62fb842dc062e14cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 19:36:25 2011 +0100

    Update RELEASE-NOTES for 1.10 release.

commit 5b59a9b778154431888a0f21506ffc72d888b48d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 19:36:00 2011 +0100

    Update ROADMAP for 1.12 and beyond.

commit ccf7c79dfe764a4084507ad4ca373eede1119b6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 19:35:27 2011 +0100

    README: virtio-serial is required.

commit 914037fa1380286dc9aca81a0446ec255784ea10
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 18:49:31 2011 +0100

    guestfs(3): Fix documentation for drive letters.
    
    We can now get drive letter mappings through the inspection API.

commit 5bfd149de8d1bc8956867f0a8504b01950ed1a1f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 18:05:35 2011 +0100

    inspect: Fix some small memory leaks in Windows inspection.
    
    Found using valgrind.

commit 2fbd4e719d11f8feea139c6eb05dde547565cadf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 12 17:03:14 2011 +0100

    fish: Allows win:... paths to work with drives mounted anywhere.
    
    This allows you to mount disks on (eg) /c and /e and have the
    guestfish win:... path mechanism map drive letters to the
    right places.

commit b0af2bf4c95d32afdc029bf2dd72ae25ad72db53
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 11 12:33:21 2011 +0100

    todo: guestfish drive letters.

commit 307295329ad115f2feb995c9411f3d3f067cfb93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 10 21:10:19 2011 +0100

    resize: Update dependencies.

commit 1dd56254c5e604b8b85fe7ae1b389c8c71fba942
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 10 20:42:42 2011 +0100

    resize: Don't build this directory in parallel.

commit 49f11ea5dea74dd2e14325ecc961a6492b8a6067
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 10 11:12:03 2011 +0100

    resize: Consistent use of 'part' in help output.

commit 01a9c38727041eaab94aa6947b14942a6a44c515
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Apr 10 11:06:58 2011 +0100

    resize: Missing \n after version.

commit 1c55540c33a68ef2e76bb178a9dd014c076a2cc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 9 22:50:15 2011 +0100

    resize: Link with local copy of guestfs.

commit 38e8a10a6fd2d5fd353a7f9096378a785a38f267
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 9 17:11:57 2011 +0100

    Version 1.9.18.

commit 841289576a78abb22bd9bdabd265bd5597620dcc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 9 19:55:05 2011 +0100

    Update POT file.

commit 271ab66df1c497566c93a2dd2d26f02c8aac000d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 9 18:01:11 2011 +0100

    Include po/Makefile.in.in in git, to avoid needing to rerun gettextize.

commit ce221a0cd84d40d1d3f050b8b9a7369417720641
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 9 21:11:47 2011 +0100

    build: virt-resize manpage.

commit a12b09c2428d995b7ffd87ae2d3510d4d28ba7a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 8 14:07:26 2011 +0100

    Rewrite virt-resize in OCaml.
    
    This is a fairly straightforward translation of Perl virt-resize into
    OCaml.  It is bug-for-bug and feature-for-feature identical to the
    Perl version, except as noted below.
    
    The motivation is to have a more solid, high-level, statically safe
    compiled language to go forwards with fixing some of the harder bugs
    in virt-resize.  In particular contracts between different parts of
    the program are now handled by statically typed structures checked at
    compile time, instead of the very ad-hoc unchecked hash tables used by
    the Perl version.
    
    OCaml and the ocaml-pcre library (Perl-Compatible Regular Expressions
    bindings for OCaml) are required.
    
    Extra features in this version:
    
    - 32 bit hosts are now supported.
    
    - We try hard to handle the case where the target disk is not "clean"
      (ie. all zeroes).  It usually works for this case, whereas the
      previous version would usually fail.  However it is still
      recommended that the system administrator creates a fresh blank disk
      for the target before running the program.
    
    - User messages are a bit more verbose and helpful.  You can turn
      these off with the -q (--quiet) option.
    
    There is one lost feature:
    
    - Ability to specify >= T (terabytes) sizes in command line size
      expressions has been removed.  This probably didn't work in the Perl
      version.
    
    Other differences:
    
    - The first partition on the target is no longer aligned; instead we
      place it at the same sector as on the source.  I suspect that
      aligning it was causing the bootloader failures.
    
    - Because it's easier, we do more sanity checking on the source disk.
      This might lead to more failures, but they'd be failures you'd want
      to know about.
    
    - The order in which operations are performed has been changed to make
      it more logical.  The user should not notice any functional
      difference, but debug messages will be quite a bit different.
    
    - virt-resize is a compiled binary, not a script.

commit 49d619669425fa65ee389af8c4ca5496f09ddaa5
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Apr 7 15:30:54 2011 +0100

    Compile rpcgen-generated files with -fno-strict-aliasing
    
    rpcgen generates source which can't be safely compiled with strict-aliasing
    enabled.

commit 7ff213480ad0871e41d214c2c97180e133167b57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 6 19:45:46 2011 +0100

    test-tool: Don't use static binary helper program, nor ISO.
    
    This simplifies the libguestfs-test-tool program down to essentials.
    Bugs most commonly occur when starting the appliance, so what we
    should concentrate on test is just that.
    
    Previously the test tool built a special static binary helper program,
    packaged it up in an ISO, then ran this inside the appliance.  None of
    this really tested useful failure modes, but they did make the test
    tool itself harder to build, harder for users to run, and more
    brittle.
    
    This change also adds some more debugging of libguestfs state.

commit a8269f90ce191b2d1f454024df2adf3fe35e3a94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Apr 6 11:52:20 2011 +0100

    Update RELEASE-NOTES file.

commit 1c668b23e372353325487e199842ec0756b9c5db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 21:24:51 2011 +0100

    Version 1.9.17.

commit e7055a667a21b5afee9ee985e0feaf9230e0ecba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 19:44:16 2011 +0100

    fish: copy-in, copy-out, edit, more commands can use win:... prefix.

commit 63d112ff2f668ac6aab1412b2970334637de904c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 19:43:30 2011 +0100

    fish: Enhance guestfish win:... parsing to understand drive letters.

commit bd2dc8c0008045be9a5436227fde5088e1f113a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 18:23:39 2011 +0100

    edit: Allow Windows-style drive letters and paths to be used.

commit 9a06b292f0149909a3c8552ab6b1f74252d99596
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 14:03:08 2011 +0100

    New API: inspect-get-drive-mappings
    
    This returns the drive mappings from the Windows Registry.
    
    virt-inspector displays the drive mappings, giving output
    similar to this:
    
      <drive_mappings>
        <drive_mapping name="C">/dev/sda2</drive_mapping>
        <drive_mapping name="E">/dev/sdb1</drive_mapping>
      </drive_mappings>

commit 16f67f5cb251a3730f62b2c2dbbbfd2163d716f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 12:44:34 2011 +0100

    New API: inspect-get-windows-current-control-set
    
    This returns the actual registry key corresponding to
    CurrentControlSet (eg. it might be "ControlSet001").
    
    Previously the inspection code was hard-coding ControlSet001.  Now we
    use the correct control set, and also make it available to callers
    through the API.
    
    This commit also updates the virt-dhcp-address example so it uses this
    new API.
    
    virt-inspector displays the current control set when available.

commit 9af40ac06de7ef8945eb402c1eef6428346e7979
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 19:42:00 2011 +0100

    daemon: Reimplement 'mounts' and 'mountpoints' commands.
    
    Reimplement these so they read /proc/mounts instead of trying to parse
    the output of the 'mount' external command.
    
    One consequence of this is that these commands now work again for
    ntfs-3g filesystems.

commit 3c6612185cee27b4d097c16e7a1a2807a4119281
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 18:44:55 2011 +0100

    Rename resolve_windows_path_silently to case_sensitive_path_silently.
    
    A more accurate description of what this function does.
    
    This is just code motion.

commit 8be69b1fa4351248f9333eaa9396b12f16adc9e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 17:46:23 2011 +0100

    edit: Move 'exit 0' to end of file.
    
    This is just code motion.

commit cf8272e08c8837dc80c967e4a06e27dad3f3c68b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 17:45:41 2011 +0100

    edit: Let $root == $roots[0].
    
    This is just code motion.

commit bcc6fa5bef266a7d4eaf9cc3fffe21e43755d59c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Apr 5 17:44:41 2011 +0100

    cat, edit: Reference guestfish equivalent commands in the manual pages.

commit 60f29d436bded2b3673e03c8598f6eb5ecab4f1f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Apr 4 12:48:02 2011 +0100

    python: Convert any iterable argument to a list (RHBZ#693324).
    
    Thanks to Erez Shinan.

commit 111d400e31400828e9383adee17aa7540e3788aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 2 22:32:36 2011 +0100

    fish: Add 'pulse mode' to the progress bar.

commit cb5d8f4572f0da565e33f7ee50d72c3cb24241aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 2 22:31:41 2011 +0100

    fish: Move variable decls to top of function.
    
    This is just code motion.

commit 467e2f78380d53f1a54b76b487a5a3752b7d48b0
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Sat Apr 2 11:05:19 2011 +0100

    debian: Add missing deps: ocaml-findlib, libstring-shellquote-perl.

commit 8d455dac03a453caac69e6489e8fa33feba241a1
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Sat Apr 2 11:04:47 2011 +0100

    mkisofs is obsolete.  Require genisoimage everywhere instead.

commit 0874264bf82ba851a88d9c031417aebf0fa980de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Apr 2 09:14:41 2011 +0100

    Pull translations from Transifex.
    
    New Ukrainian po-docs translation added.

commit de305860e08ecfb9b410933c441aec34637a7c58
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 20:37:01 2011 +0100

    Version 1.9.16.

commit 3b94ecdaee786f8217cb4f50d6d1febb913ddec7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 16:03:14 2011 +0100

    du: Add pulse mode progress messages.

commit 55e469e765092c88057d0fc4d5f52202c241a008
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 18:37:29 2011 +0100

    cpmv: Add pulse mode progress messages.

commit 2353dcf57b6eb84a269b747d1b17b3a2cb28ceb3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 18:37:39 2011 +0100

    checksum: Add pulse mode progress messages.

commit d08c6e475206ce92f95ea6b64640d0d21ff90fcf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 15:50:33 2011 +0100

    daemon: Introduce "pulse mode" progress events.
    
    This introduces a new form of progress event, where we don't know how
    much of the operation has taken place, but we nevertheless want to
    send back some indication of activity.  Some progress bar indicators
    directly support this, eg. GtkProgressBar where it is known as "pulse
    mode".
    
    A pulse mode progress message is a special backwards-compatible form
    of the ordinary progress message.  No change is required in callers,
    unless they want to add support for pulse mode.
    
    The daemon sends:
    
     - zero or more progress messages with position = 0, total = 1
     - a single final progress message with position = total = 1
    
    Note that the final progress message may not be sent if the call fails
    and returns an error.  This is consistent with the behaviour of
    ordinary progress messages.
    
    The daemon allows two types of implementation.  Either you can just
    call notify_progress (0, 1); ...; notify_progress (1, 1) as usual.
    
    Or you can call the functions pulse_mode_start, pulse_mode_end and/or
    pulse_mode_cancel (see documentation in daemon/daemon.h).  For this
    second form of call, the guarantee is very weak: it *just* says the
    daemon is still capable of doing something, and it doesn't imply that
    if there is a subprocess that it is doing anything.  However this does
    make it very easy to add pulse mode progress messages to all sorts of
    existing calls that depend on long-running external commands.
    
    To do: add a third variant that monitors a subprocess and only sends
    back progress messages if it's doing something, where "doing
    something" might indicate it's using CPU time or it's printing output.

commit c151865d716306c81fc3327c6c73af14f8dbebce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 15:27:46 2011 +0100

    daemon: When running commands, restart select if we receive a signal.

commit 58895f7dce570997ce036505978ea81a68c8a24d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 15:26:46 2011 +0100

    daemon: Reset SIGPIPE to default before running subprocesses.

commit cb6b99b57398f65ac28cb54baf54178aefe92144
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 13:30:48 2011 +0100

    Generate progress messages during launch.
    
    This commit generates approximate progress messages during the
    guestfs_launch call.  Currently this code generates:
    
       0 / 12: launch clock starts
       3 / 12: appliance created
       6 / 12: detected that guest kernel started
       9 / 12: detected that /init script is running
      12 / 12: launch completed successfully
    
    (Note this is not an ABI and may be changed or removed in a future
    version).
    
    Progress messages are only generated at all if 5 seconds have elapsed
    since the launch, and they are only generated for the ordinary
    appliance (not if using attach-method to attach to an existing virtio
    serial port).

commit 149f1fdd64f5ad80f0139db6593b571815b4c1a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 13:29:06 2011 +0100

    protocol: Sleep for 1ms before reading log messages.
    
    As explained in the comment:
    
      /* QEMU's console emulates a 16550A serial port.  The real 16550A
       * device has a small FIFO buffer (16 bytes) which means here we see
       * lots of small reads of 1-16 bytes in length, usually single
       * bytes.  Sleeping here for a very brief period groups reads
       * together (so we usually get a few lines of output at once) and
       * improves overall throughput, as well as making the event
       * interface a bit more sane for callers.  With a virtio-serial
       * based console (not yet implemented) we may be able to remove
       * this.  XXX
       */

commit a953e9e9cc040df7462dd18b8cdd8da47f9a80b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 12:17:22 2011 +0100

    Shared function to send progress messages.
    
    This is just code motion.

commit 3a8211452cfccd55f1e13851ff9bbcac8abed7cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 13:30:24 2011 +0100

    Add prototype for timeval_diff.
    
    This is just code motion.

commit 546723ef8a625742bcf6c77f667b701253585e3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 13:54:18 2011 +0100

    docs: Progress messages don't necessarily reach 100% in the error case.
    
    This should be obvious, and now it is documented to avoid any
    confusion.

commit 0ccbfc81f182e5b1f1a3e61fb8b32b5fad5ca373
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 13:48:14 2011 +0100

    docs: Fix link to progress messages in guestfs(3).
    
    This updates commit 4e0cf4dbf8a8a96288f70114fdc3939da0aa7ad1.

commit cc3d6277370e7d4ba19dafeaf87fe7be97a286cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 15:28:42 2011 +0100

    Update copyright date on main guestfs(3) man page.

commit a54262146c5ebb9b442bd2802bf39a3bde9422f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 09:53:53 2011 +0100

    Version 1.9.15.

commit b09cb3d7703dc9c225c89900571516a8141f3e5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 09:53:44 2011 +0100

    fish: Fix incorrect path passed to perror.
    
    Fix commit b8e1dee73a1deef1bfd5937e2abfbe9afef7b1ef.

commit 052f7158e9b5436082e23ff6418b6830d1deba5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 1 08:50:49 2011 +0100

    Add libguestfs-tools.conf file to EXTRA_DIST.

commit effa04846818f52d48f57464b1c41c697581e948
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 31 20:20:04 2011 +0100

    examples: Add virt-dhcp-address program.
    
    This is like the mythical 'virt-ifconfig'.  There is not enough
    certainty around the right way to be doing this for us to make
    a full virt tool for this.  Therefore the code is just an example.

commit 3f159cd7fbea83fd9b550bdd09f958c20927c25f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 31 20:18:23 2011 +0100

    examples: Use WARN_CFLAGS, WERROR_CFLAGS macros instead of -Wall

commit 3e8f18b61733cac1d1a28732523b89058245afd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 31 20:17:02 2011 +0100

    examples: size_t-correctness change in inspect_vm.c

commit 309b998177a88bfa2a1a29a2a2efdf79ad485eb9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 31 18:20:08 2011 +0100

    contrib: Fix URLs in README file.

commit 616f46948296acb6bc3162fa1cbd3c1040a446fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 31 15:51:00 2011 +0100

    inspect: Detect 32 bit applications running on WOW64 emulator (RHBZ#692545).
    
    These applications are located along a different Registry path.  See
    http://support.microsoft.com/kb/896459 for all the details.
    
    Thanks Jinxin Zheng for finding the bug and the solution.

commit 5951a1d7bd6970e2b5fbd6fc2bf1c3c16c28dac4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 30 17:03:11 2011 +0100

    Add /etc/libguestfs-tools.conf configuration file.
    
    This allows the default for --ro or --rw to be controlled for the
    three tools guestfish, guestmount and virt-rescue.

commit 846cb94c5e0bf6ed158bf078f2423b3bba65c542
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 30 16:33:14 2011 +0100

    rescue: Add -w|--rw option.

commit 91cf6440ff0d1511449ebc8371eb1c876c7bdb07
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 30 16:32:33 2011 +0100

    fuse: Document -w flag in --help output.

commit dff1e645f32d634dd20a96563e8efefcb36bbf44
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 29 16:07:21 2011 +0100

    Exclude po-docs directory completely if po4a not available.
    
    Lift the if HAVE_PO4A ... endif completely out of the po-docs
    subdirectory, and just exclude the whole subdirectory if the po4a
    program is not available.

commit 17c23acf83a67a088f163dcfbe7d39430b5d6c91
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 29 16:03:29 2011 +0100

    tests: Don't fail when compiled without support for NTFS.

commit db97b66d255aef0e4cc212591e8f1efef9ec5131
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 29 12:20:57 2011 +0100

    perl: Canonicalize /dev/vd* paths in old inspection code (RHBZ#691724).

commit e2d88a3af3485dcef1aba3f6fc8b778fb9df0d81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 28 17:18:24 2011 +0100

    README: Note that getfacl, getfattr are optional dependencies.

commit 8844916085956344ed795627abe5636ea83a8382
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 28 17:11:51 2011 +0100

    Version 1.9.14.

commit 35f09152da33f8b29168e46fcf05b3e5fb251db7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 28 14:45:23 2011 +0100

    fuse: Fix getxattr, listxattr calls and add a regression test (RHBZ#691389).
    
    The documentation for the getxattr and listxattr calls is not very
    clear and as a result we were always returning something different
    from that which the Linux kernel would usually return.
    
    This fixes these calls, at least far enough that both the 'getfattr'
    and 'getfacl' programs now work fine on FUSE-mounted filesystems.
    
    Note that SELinux attrs are *not* passed through.  This appears to be
    a known bug between SELinux and FUSE.  For more information see:
    
    http://www.spinics.net/lists/selinux/msg09460.html

commit 1057350a4644da37ceb5626d7048366e9aec9954
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 28 13:35:53 2011 +0100

    fish: fuse: Add -m dev:mnt:opts to allow mount options to be specified.
    
    This lets you turn on ACLs and xattrs by doing:
    
      -m /dev/sda1:/:acl,user_xattr
    
    The extra parameter is passed through to mount_options:
    
      libguestfs: trace: mount_options "acl,user_xattr" "/dev/sda1" "/"

commit 0fb329674a2e6b93f3fb19350a0c0f3de3b1f63a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 28 10:35:14 2011 +0100

    roadmap: Move QMP to 'beyond 1.10'.
    
    See: https://www.redhat.com/archives/libguestfs/2011-March/msg00124.html

commit 42204828bff8f92f5d1b9e64359ff0390b0b5a63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 28 10:32:14 2011 +0100

    Open release notes for version 1.10.0.

commit bf53a80e084805b549b334063a549968e77f270f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 28 10:03:16 2011 +0100

    ruby: Don't segfault if callbacks throw exceptions (RHBZ#664558).
    (Thanks Chris Lalancette).
    
    See:
    https://bugzilla.redhat.com/show_bug.cgi?id=664558#c6

commit 281608964298a0766ed055d25b5916f2f5a1b781
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 25 14:42:40 2011 +0000

    RHEL 5: Use mke4fs on RHEL 5 as replacement for mke2fs.

commit c5da3a70f60d1b4bb2b5152a2b84089566ebbda9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 25 14:34:31 2011 +0000

    mkfs: Force mke2fs to create a filesystem even on raw IDE device (RHBZ#690819).

commit 17287f82d5037a013dcf1cb0a2040aa9a01f92f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 25 12:32:08 2011 +0000

    Rename $tmpdir/sock to $tmpdir/guestfsd.sock.
    
    No functional change; this simply makes the purpose of the
    socket clearer.

commit 96e8cc9c7e9dfc2168552e473fa2e06b6762fac6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 25 11:22:38 2011 +0000

    inspector: Add detection of Slackware.

commit 4b045484ddcaa8085866da3bf3c38f11a55ac2ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 24 12:23:13 2011 +0000

    Version 1.9.13.

commit 99074d84562ff6274f0c7f464a6147aa856dec87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 23 16:00:48 2011 +0000

    New API: guestfs_inspect_get_product_variant
    
    This returns a product variant for inspected operating systems.  In
    practice this is a useful way to distinguish between consumer and
    enterprise/server versions of Windows that otherwise have the same
    version number.

commit 7ae92da6a9c31f0131f064c7f9f8ee67ddce95c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 22 11:50:26 2011 +0000

    fish: Add better quick help to --help output.

commit ca363bbea25b0858f2a39010659d2c95a3f70ba7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 22 11:50:03 2011 +0000

    fish: Add -w|--rw option to --help output.

commit a7403cbcd53daf29595d092a5fe1263da1ac9f92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 22 11:20:38 2011 +0000

    inspect: Don't fail for Windows guests with multiple disks (RHBZ#674130).

commit 9062e0c1943994c17e10625a9c9fe368597fd6a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 22 11:05:21 2011 +0000

    inspect: Simplify Windows root heuristic code.
    
    Add special is_file_nocase and is_dir_nocase functions and
    remove the duplicate checks for files and directories with
    different cases.

commit e2e624bc3b03e11ca6e2e537afed6a8c6c53df7e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 22 11:15:21 2011 +0000

    umount-all: Use /proc/mounts instead of output of 'mount' command.
    
    The particular issue is that ntfs-3g (or FUSE?) no longer appears
    to update /etc/mtab, which meant that umount-all was not unmounting
    these partitions.  But parsing /proc/mounts is simpler and more
    robust in any case.

commit 5ad6943d1665f54d55df5e03c42a6aede79cddb7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 19 18:41:23 2011 +0000

    guestfs(3): 'kernel' -> 'supermin appliance'.

commit 9d91867485f6e7cdef2a65bec6490229fc97f099
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 19 18:18:56 2011 +0000

    guestfs(3): Indent line to keep code together.

commit 874794d2a98cee47dce183e36bc2f9f8307c7f0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 19 12:40:24 2011 +0000

    todo: Add ntfsck.

commit 7b45c67d0f4d0263b1fc46ad55b9be2331ceedb6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 18 20:02:29 2011 +0000

    fish: Add all stamp-*.pod files to CLEANFILES.

commit e68168e50f90e143704b0be6c4909541a772b573
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 18 19:33:06 2011 +0000

    Version 1.9.12.

commit 25ce295e50361aa70714896982c37d11eb76af28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 18 18:27:21 2011 +0000

    proto: Fix both-ends-cancel case.
    
    In the case where both ends cancel at the same time (eg. both ends
    realize there are errors before or during the transfer), previously we
    skipped sending back an error from the daemon, on the spurious basis
    that the library would not need it (the library is cancelling because
    of its own error).
    
    However this is wrong: we should always send back an error message
    from the daemon in order to preserve synchronization of the protocol.
    
    A simple test case is:
    
      $ guestfish -N fs -m /dev/sda1 upload nosuchfile /
      libguestfs: error: open: nosuchfile: No such file or directory
      libguestfs: error: unexpected procedure number (66/282)
    
    (Notice two things: there are errors at both ends, and the
    loss of synchronization).
    
    After applying this commit, the loss of synchronization does not occur
    and we just see the library error:
    
      $ guestfish -N fs -m /dev/sda1 upload nosuchfile /
      libguestfs: error: open: nosuchfile: No such file or directory
    
    The choice of displaying the library or the daemon error is fairly
    arbitrary in this case -- it would be valid to display either or even
    to combine them into one error.  Displaying the library error only
    makes the code considerably simpler.
    
    This commit also (re-)enables a test for this case.

commit c0a0e1e605dce8660ddf25e3eb1d70ee19e918ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 18 17:17:30 2011 +0000

    proto: Fix FileIn ops that abort during the chunk upload stage.
    
    As a previous, incorrect attempt to fix RHBZ#576879 we tried to
    prevent the daemon from sending an error reply if the daemon had
    cancelled the transfer.  This is wrong: the daemon should send an
    error reply in these cases.
    
    A simple test case is this:
    
      guestfish -N fs -m /dev/sda1 upload big-file /
    
    (This fails because the target "/" is a directory, not a file.)
    Prior to this commit, libguestfs would hang instead of printing an
    error.  With this commit, libguestfs prints an error.
    
    What is happening is:
    
      (1) Library is uploading
      a file                          (2) In the middle of the long
                                      upload, daemon detects an error.
                                      Daemon cancels.
      (3) Library detects cancel,
      sends cancel chunk, then waits
      for the error reply from the
      daemon.                         (4) Daemon is supposed to send
                                      an error reply message.
    
    Because step (4) wasn't happening, uploads that failed like this would
    hang in the library (waiting for the error message, while the daemon
    was waiting for the next request).
    
    This also adds a regression test.
    
    This temporarily breaks the "both ends cancel" case (RHBZ#576879c5).
    Therefore the test for that is disabled, and this is fixed in the next
    patch in the series.
    
    This partially reverts commit dc706a639eec16084c0618baf7bfde00c6565f63.

commit 42e0ab9c8a0313c5e52f0582a89d7ebb5f7f0dfe
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 18 16:18:37 2011 +0000

    proto: Don't drop outgoing message when daemon cancels (RHBZ#576879).
    
    This is a (potential) fix for the long standing protocol bug
    which causes loss of synchronization when a FileIn action
    fails very early on the daemon side.  The canonical example
    would be the 'upload' action failing immediately if no filesystem
    is mounted.
    
    What's supposed to happen is this:
    
      (1) library sends
      request message              (2) daemon processes request
      first chunk of data          and sees that it will fail,
                                   sends cancellation
                                   (3) discards chunks of data
      (4) library sees daemon
      cancellation and stops
      sending chunks
    
    It was going wrong in step (1), in guestfs___send_to_daemon.
    In some (timing related) circumstances, send_to_daemon could
    receive the cancellation before sending the first chunk, at
    which point it would exit, *discarding the first chunk*.
    This causes the daemon to fail in step (3) since it reads the
    next request as if it was a chunk, thus losing synchronization.
    (The protocol specifies that you always have to send at least
    one chunk if there is a FileIn or FileOut parameter).
    
    The patch changes guestfs___send_to_daemon so that if it detects
    cancellation, it sends the remaining data in its output buffer
    instead of discarding it.  (This also fixes another edge case
    to do with sending partial data although I don't think we
    ever saw that in practice).

commit 3c7d0b696af676cf43c150dabfa843cb3e13f404
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 18 16:17:09 2011 +0000

    daemon: Improve protocol debug messages.
    
    This adds 'guestfsd: ...' prefix before each message, and
    also puts a message at the top of the main loop just after
    a new message has been received.
    
    The intent is to make it simpler to follow the protocol.

commit da5fc067aab4b21fd5ba832269416b7bc35ee166
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 18 11:22:25 2011 +0000

    regressions: Enable both tests for bug 576879 (not fixed).

commit 3aee5a8908430250f7dcd9abe31bdc5dacaef08d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 18 11:21:55 2011 +0000

    daemon: Print error for invalid chunk.cancel field.
    
    The chunk.cancel field should always be [0|1].  If it is not then
    something has gone badly wrong -- probably loss of synchronization.
    If this occurs print a debug message and return error from
    receive_file function.

commit dbd29d06f84e1309d0f7532cf7c1c112542c78b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 18 11:20:26 2011 +0000

    proto: Improve debug messages.

commit db564a3ec6039b1aad8398f6ef3b2272f3ac7815
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 18 11:19:31 2011 +0000

    haskell: Small fixes for ghc 7.

commit dc2ff7ddd46d2fb8596aa53ee1ba04089876b163
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 17 12:46:57 2011 +0000

    regressions: Rename the file we are uploading too.
    
    This updates commit cbd8da6d4dd2e4cbc3b87fbc7cb7d6129eb69172.

commit c3ba8054a9fc14cea7541acb1f3f3de531d4fe65
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 17 11:57:40 2011 +0000

    regressions: Split the test rhbz576879.sh into two halves.
    
    We suspect that there are in fact two separate bugs.  In any
    case it makes sense for the two tests to be done separately.
    
    Note that these tests still fail.

commit ee8e5a718a709887072283303e40dc29a0100f62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 16 11:50:16 2011 +0000

    tests: Ignore return value from fwrite.

commit 8d0468f295bdeb4607dc2aedc110b73fbf93f87b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 15 21:49:53 2011 +0000

    Version 1.9.11.

commit 43a212f009cc6d5731a90c87caf3f653ee811dbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 15 22:00:54 2011 +0000

    ruby: Missing files from EXTRA_DIST.

commit fc9c4a606ad5f8cf97e20d4d9866f31dd5e436ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 15 16:46:00 2011 +0000

    perl: Binding and test for guestfs_last_errno (RHBZ#672491).

commit 3213ba0a03ccffe07d056e9619c361148f7ea573
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 15 15:00:58 2011 +0000

    ruby: Use ALLOC_N to avoid potential memory leak (RHBZ#667610).

commit f695997a87393719f29f20f23537a471d026b7e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 15 14:52:03 2011 +0000

    ruby: Remove unnecessary checking around StringValueCStr (RHBZ#667610).

commit 74e759432df821a8740b69058780a21cc94a1baa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 15 14:48:12 2011 +0000

    ruby: Add rdoc documentation (RHBZ#667610).

commit c8b425394a86c5f3232bce2b446c89a4e37d7258
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 14 22:37:21 2011 +0000

    New event API - Ruby bindings (RHBZ#664558).

commit 8e4e4b97699877e0a16c957f3fdc31db922d6e9f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 14 19:42:47 2011 +0000

    New event API - Perl bindings (RHBZ#664558).
    
    The methods $h->set_progress_callback and $h->clear_progress_callback
    have been removed, and replaced with a complete mechanism for setting
    and deleting general-purpose events.
    
    This also updates virt-resize to use the new API.

commit c850e40393412713c2313f33421594c458fa7e93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 14 16:44:17 2011 +0000

    New event API - OCaml bindings (RHBZ#664558).
    
    The functions set_progress_callback and clear_progress_callback have
    been removed, and replaced with a complete mechanism for setting and
    deleting general-purpose events.

commit 97d079c886427420a8bba0d47ec9d915b5c91ded
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 10 12:32:22 2011 +0000

    New event API (RHBZ#664558).
    
    This API allows more than one callback to be registered for each
    event, makes it possible to call the API from other languages, and
    allows [nearly all] log, debug and trace messages to be rerouted from
    stderr.
    
    An older version of this API was discussed on the mailing list here:
    https://www.redhat.com/archives/libguestfs/2010-December/msg00081.html
    https://www.redhat.com/archives/libguestfs/2011-January/msg00012.html
    
    This also updates guestfish to use the new API for its progress bars.

commit cd422886d07525d5c11064f01a1ba97065ef04d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 14 13:19:47 2011 +0000

    New APIs: guestfs_first_private, guestfs_next_private to walk over
    the private data area.
    
    This commit adds new APIs for walking over the keys and pointers in
    the private data area associated with each handle (note this is only
    applicable to the C API).

commit c8276e12112360c930815dda0a7f691e07b60b39
Author: Angus Salkeld <asalkeld@redhat.com>
Date:   Tue Mar 15 22:43:02 2011 +1100

    check the pid is > 0 before calling waitpid()
    
    Signed-off-by: Angus Salkeld <asalkeld@redhat.com>

commit 58186fc6fb51b7ea38a2d458f2f112d1ba3c9199
Author: Angus Salkeld <asalkeld@redhat.com>
Date:   Mon Mar 14 22:40:12 2011 +1100

    check the pid is > 0 before calling waitpid()
    
    Signed-off-by: Angus Salkeld <asalkeld@redhat.com>

commit f577664627bcc183b5f2fb3b6fdaf6d1dfac4f51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 11 10:47:05 2011 +0000

    RHEL5: Old pod2man didn't have --stderr or -u options.

commit 11b6db00c7205b202742edc73448b05d590b5acd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 11 10:23:58 2011 +0000

    configure: Remove unnecessary variable assignment.
    
    Left over from pre-virtio-serial days.

commit 531a1ff383e2bc3f6e7048ffd70be38b1f68f67a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 11 10:22:58 2011 +0000

    RHEL5: Make use of 'futimens' function optional.

commit 72b348513d0ad92cee3960a071cf1279efcee088
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 8 16:22:10 2011 +0000

    Version 1.9.10.

commit 3d881ef0a1ff2c1027bebde6b155e9756f3cf628
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Mar 8 08:10:19 2011 +0000

    Detect Red Hat Desktop as 'rhel' distro (RHBZ#682979).
    
    /etc/redhat-release on Red Hat Desktop contains the following
    string:
      Red Hat Desktop release 4 (Nahant Update 8)
    
    Previously we matched against the string "Red Hat Enterprise Linux"
    but since this does not contain that string, this distro wasn't being
    detected correctly.
    
    Note this also changes the obsolete Perl code, for the benefit of
    virt-v2v.

commit 9b5076a1ac4bef4e01dc8ac9cabe66ce5154f053
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 7 19:30:31 2011 +0000

    Include <locale.h> in compilation units that use setlocale function.
    
    Fix required by gcc 4.6.0.

commit 85d3a57be65914d849f647e51a098bbe37d38350
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 7 19:28:30 2011 +0000

    generator: Introduce error code (errcode) concept.
    
    There was a lot of repeated code to map return types (eg. RErr)
    to error cases (eg. -1 or NULL).
    
    This commit introduces an error code type and two functions to
    map return types to error codes and error codes to strings.

commit cfdd51b2741437d368d3ae682024d7f5d76758c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 7 15:55:56 2011 +0000

    Fix trace segfault for non-daemon functions (RHBZ#682756).
    
    Previously we expanded the code for 'trace_return' unconditionally for
    all non-daemon functions.  However this code was not prepared to
    handle all error conditions, and in fact would segfault if it tried to
    print RStringList or RHashtable where r == NULL.
    
    We need to make the code conditional on the return value, calling
    either 'trace_return' or 'trace_return_error' as appropriate.
    
    Note the difficult case for RConstOptString which returns NULL in
    non-error cases.

commit 3c2cd16cc24c1ae40f805b8ea037bfe94364200d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 7 10:53:22 2011 +0000

    Fix URL of transifex instance to be the canonical one.
    
    This updates commit 182a2ceae6d6f50448159e24d8b5c0c92f44407f.

commit 909b59ebd9d4231bfd91c0de48cb7a392db6ae88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Mar 7 10:45:27 2011 +0000

    Import project into transifex.
    
    http://www.transifex.net/projects/p/libguestfs/

commit 30bb0d5c9da7a780457cbd078930a32dc7d36646
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Mar 5 09:17:41 2011 +0000

    debian: Rename nilfs2-tools to nilfs-tools.

commit c855137f9f8f90b6619706f111c87973d7b11739
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 4 12:13:32 2011 +0000

    virt-make-fs: Round disk size to integer, fix for qemu-img 0.14.
    
    qemu-img used to allow you to specify a fractional image size in bytes
    (or at least, it used to ignore the part after the decimal place).  In
    qemu-img 0.14 it no longer does this so we round down the size to a
    whole number of bytes.

commit 94605d8b799a2b3647a529b600470f0c0af90f7a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 4 12:13:12 2011 +0000

    virt-make-fs: In debug mode, print qemu-img command line.

commit 7559c34de2a60d7af036d8789595870453e222fc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 4 09:59:15 2011 +0000

    Version 1.9.9.

commit 3acf7ee0ad1329d0ccbe7f742680d9a94ca33f20
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Mar 3 13:23:23 2011 +0000

    Fix inspection code when PCRE or hivex is missing.

commit 79d5ec3d1f5bebcf656ad73bdb9fd25a0125c0a8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 2 05:11:10 2011 +0000

    java: Add a test of g.list_filesystems (a function that returns a Map).

commit e8a40b3644047e1956a5a37c4c38b480f515928e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 2 04:49:12 2011 +0000

    java: Fix generated functions that return RHashtable.
    
    Creating a HashMap directly from JNI is possible but very tedious
    (see: http://java.sun.com/docs/books/jni/html/fldmeth.html#26254)
    
    Instead we use the existing code to return hashes from JNI as plain
    String[], then add some code in the Java wrapper to convert these to
    HashMap<String,String>.

commit c6ba96e194bc161c0ba89db9d584cc3ef85bdff3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 2 04:33:39 2011 +0000

    java: Return Map<String,String> for RHashtable functions.
    
    There's no point returning the specific HashMap type here.
    Return the generic interface type instead.
    
    Note that no users are actually calling these functions yet,
    since at present they always fail.

commit 190a3aaad558a67df8b0212582c7c13f6ccecbae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 2 04:30:30 2011 +0000

    java: Fix a minor whitespace error in generated code.
    
    In functions that don't have javadoc, the function prototype wasn't
    being indented correctly.

commit 52920efc4a9b7b5e35a9216a84040fd328be1f2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 2 05:10:31 2011 +0000

    java: Remove old test file if one was left around.
    
    If a test.img file was left over from a previous run, then it
    would cause the subsequent test to fail.  Therefore remove any
    old test.img file.

commit f809f4606a9eda29c9db3c1748967627bf12a006
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Mar 2 05:08:20 2011 +0000

    java: Enable assertions when doing 'make check'.
    
    It turns out that Java assertions are disabled by default.  You have
    to add the 'java -ea' flag to the JVM.  Who knew ..?
    
    Because of this oversight, the tests weren't actually performing the
    assertions that we wanted (although in fact none of the assertions
    were failing).
    
    This change enables assertions when running the tests.

commit cf9bfb590394b45acc94c63ea1c504445b66585e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Feb 6 17:18:24 2011 +0000

    Version 1.9.8.

commit 6193ad44156e57789b2dc9188c546374aad17b02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 3 19:33:30 2011 +0000

    daemon: Ignore return value from chdir.
    
    This updates commit 7eb012f3710bb554d5fc2c4229036901b0b5ad90.

commit 97b4248a19cb21c61ea15daf120d6ed426a8929d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 28 19:25:02 2011 +0000

    fish: Add guestfish --live, guestmount --live options.
    
    The other programs have the variable, but the flag is not enabled
    either because it doesn't make sense or because the implications are
    not well understood.

commit a3e0ff941d9e1a809b3bb6b4a8bfef542fc6561e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 27 22:45:50 2011 +0000

    Add documentation for attach method.

commit ceb1c86f8ef7b888f8e4b03dac1125fb6cdfec6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 28 13:19:52 2011 +0000

    Add guestfs_add_domain 'live' flag.
    
    This optional flag controls whether this API call will try to connect
    to a running virtual machine 'guestfsd' process.
    
    If the flag is given and the virtual machine is running, then the
    libvirt XML is parsed looking for a suitable <channel> element, and
    'guestfs_set_attach_method' is called with the corresponding
    virtio-serial socket path.

commit d88c689addef73ecdff270a12692e318636a9f51
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 27 15:54:33 2011 +0000

    lib: Implement attach-method unix:<path>
    
    Allow connections to a Unix domain socket which is connected
    (via virtio-serial) to a guestfsd running free in an existing
    guest.
    
    In order to use this you have to add the following element
    to the libvirt XML:
    
      <channel type='unix'>
        <source mode='bind' path='/tmp/socket'/>
        <target type='virtio' name='org.libguestfs.channel.0'/>
      </channel>
    
    (or perform the equivalent on the qemu command line).
    
    Then in guestfish, you can do:
    
      guestfish \
        attach-method unix:/tmp/socket : \
        run : \
        ll /
    
    (or any other commands as desired).

commit 0a5780cc068631f0049331a5298ef3719ddc49a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 28 15:44:40 2011 +0000

    daemon: Remove -f (don't fork) option.
    
    This option was not being used.

commit af442cee73d73f9041664b2e9ff938100595f44e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 27 16:54:48 2011 +0000

    daemon: Allow -r option to run daemon standalone.
    
    This changes several aspects of the daemon.  Currently:
    
    * sysroot will be "" (ie. operate directly on /)
    * CHROOT_IN/CHROOT_OUT are disabled
    * autosync doesn't try to unmount everything

commit 3ae59c39135b8abcee98ee00abe5d6e6125d3470
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 3 18:49:35 2011 +0000

    daemon: change to root directory
    
    Ensure the daemon always starts with current directory == root.

commit 9756319171fa21143a5105577fe6653afebc593a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 27 11:20:43 2011 +0000

    New APIs: set-attach-method, get-attach-method.
    
    These allow you to get and set the attach method.  The format
    is one of:
    
    * appliance
    * unix:<path>
    
    It's stored broken out into an enum and a string in the handle.

commit f34ca3288a5d0d21ee932a38893c91fa6fe06d5d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 27 10:12:34 2011 +0000

    lib: Move appliance launching to separate function.
    
    This is just code motion.

commit b08a2716e8dfc91ba37010aa2d709bd134c0d1a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 3 10:56:01 2011 +0000

    php: Ignore another generated file in php/extension directory.

commit 9ab7551acdad4629eb0ac12e20689fe5cf524bae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Feb 3 09:39:49 2011 +0000

    daemon: Parse /proc/mounts instead of /etc/mtab
    
    Since Fedora util-linux 2.19, the %post script does:
    
      rm -f /etc/mtab
      ln -s /proc/mounts /etc/mtab
    
    We are no longer running %post scripts, so this means that /etc/mtab
    is a plain file in the appliance.  Usual 'mount' still updates it, but
    for some reason mount.ntfs does *not* update it in Fedora 15, meaning
    that you couldn't mount and then operate on NTFS partitions.
    
    It seems better to always parse /proc/mounts (ie. what the kernel
    thinks is mounted) unconditionally, rather than relying on the
    capriciousness of the external mount command.
    
    Therefore, parse /proc/mounts instead of /etc/mtab, but add a note
    saying that in future we should really be parsing
    /proc/self/mountinfo, but that needs a custom parser, and the format
    is rather tricky:
    
    http://lxr.linux.no/#linux+v2.6.37/Documentation/filesystems/proc.txt#L1462

commit db3ac5c958c516eaf368f0d016760ee32f1be1df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Feb 2 20:26:19 2011 +0000

    regressions: Fix rhbz557655.sh so it works with tracing enabled.

commit 8452106ba4ac22dfad12fea0a6f30d2ed4e741a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 31 09:34:47 2011 +0000

    guestfs-perl: Fix missing \n
    
    This updates commit 477eebc83dcd33d00d34398692692dae6af04f22.

commit 7006620a7c90df456d374b3466e997459a2790ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 30 23:53:15 2011 +0000

    Version 1.9.7.

commit a255323f09c91d23b7495f67f3528ef0e902114c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 30 23:53:04 2011 +0000

    virt-make-fs: Fix typo in man page.

commit 4ce84b8a14068ead4ff5dab60f75a660310d1c5a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 30 23:41:05 2011 +0000

    perl: Translate C examples into Perl and include a manual page.

commit bfbbb7332466454c231ca3142364685f4d1859f7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 29 07:01:06 2011 +0000

    perl: Ignore internal_* functions in POD coverage test.
    
    This updates commit 1d999540bddd7aea7c2d0fef8b15223d4acc645f.

commit 01d554fe1ae0e457aafadb690ff905227c2a3263
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 28 22:51:36 2011 +0000

    Fix test-guestfish-a.sh regression test for new trace format.
    
    This fixes commit 1d999540bddd7aea7c2d0fef8b15223d4acc645f.

commit 6d2232426aff8ab62e6393d814d557f73d08f769
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 28 21:41:06 2011 +0000

    autobuild: Add a 'make clean' step.

commit 5658a9b89b37e72ec1c81436adb25e1f1f24c967
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 28 17:11:40 2011 +0000

    lib: Fix use-after-free bug in XPath parsing code.

commit 0dfa3ccc294f42b1d8f9c9c32f63082bd4a24012
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 28 15:28:25 2011 +0000

    Add a new internal-autosync API to perform autosync.
    
    Instead of explicitly calling umount-all; sync, we add a daemon
    function called internal-autosync which does the same.
    
    Apart from slightly simplifying the process of closing the handle, the
    main advantage is we can modify the daemon for the standalone case so
    that internal-autosync does not do the umount-all operation.

commit 468cc23c703cdd2f36347612f0eb94356cc5ad35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 28 11:14:42 2011 +0000

    Add a prefix to output when tracing (RHBZ#673479).
    
    Also separate the call and return lines so that everything can be
    easily 'grepped' from debug output.  The trace output now looks like
    this:
    
    $ guestfish -x -N fs exit
    libguestfs: trace: is_config
    libguestfs: trace: is_config = 1
    libguestfs: trace: add_drive "test1.img"
    libguestfs: trace: add_drive = 0
    libguestfs: trace: is_config
    libguestfs: trace: is_config = 1
    libguestfs: trace: launch
    libguestfs: trace: launch = 0
    libguestfs: trace: part_disk "/dev/sda" "mbr"
    libguestfs: trace: part_disk = 0
    &c.

commit de0c714c07fcfd6c8ae711aeb40e103275134b28
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 27 17:27:41 2011 +0000

    daemon: Replace root_mounted global with intelligence.
    
    We used to maintain a global flag 'root_mounted' which tells us if the
    user has mounted something on root (ie. on the sysroot directory).
    
    This flag caused a lot of trouble (eg. RHBZ#599503) because it's hard
    to keep the flag updated correctly when the user can do arbitrary
    mounts and also use mkmountpoint.
    
    Remove this flag and replace it with a test to see if something is
    mounted on *or under* the sysroot.  (It has to be *or under* because
    of mkmountpoint and friends).
    
    This also replaces a rather convoluted "have we mounted root yet"
    check in the mount* APIs with a simpler check to see if the mountpoint
    exists and is an ordinary directory.

commit 26080fad2388d985afc47bcf8912e532fd36b6d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 27 15:54:00 2011 +0000

    daemon: Add perror to two exit paths to make errors clearer.

commit 4951e7e1234c7fa205a733bde24dc00c07b04a5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jan 27 09:23:01 2011 +0000

    debian: Include actual shared libraries in python-guestfs package.

commit 2494b7d619ec29008501bc4839b61e7253ca95f4
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Wed Jan 26 15:34:01 2011 +0000

    mkfs-opts: Add optional "features" parameter.
    
    This allows the -O parameter to be added to the mkfs command line.
    This is used to select filesystem features.

commit b2f74fea69c9b66eba5d85fc939e77a5d5accfe9
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Wed Jan 26 15:32:18 2011 +0000

    mkfs-opts: Add a note about blocksize param and UFS filesystems.

commit 6ab2dd227bff7839c8b9a0b68e25b854ebc37d48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 26 14:15:23 2011 +0000

    generator: Fix generation of library-side stubs with optional String arguments.

commit 56c066badebe15bf290da0086b643f3bb6876200
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 26 10:00:44 2011 +0000

    packagelist: Add ufsutils for Debian and Ubuntu.
    
    Note there is no mkfs.ufs available for Fedora (see RHBZ#541618
    for details).

commit 9d6e8a6f51416c310b56355908847bd5fe6a2688
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 22 18:05:35 2011 +0000

    Version 1.9.6.

commit e8a52fd34bc133efb10d414f27d24a7a1426e0a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 22 14:46:37 2011 +0000

    fish: Fix typo in error message (copy-in should be copy-out).

commit 0fddb7c414345c81fa1b09edbb403824d59c5697
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jan 19 21:47:23 2011 +0000

    Use /var/tmp for the cached appliance (for FHS compliance).
    
    The FHS advises large files not to be stored in the root
    filesystem[1], and that /var/tmp is persistent across reboots[2]
    (whereas /tmp is possibly not[3]).
    
    Therefore we should store the large cached supermin appliance in
    /var/tmp instead of /tmp.  /tmp is still used for all other temporary
    files and directories.
    
    In either case you can override this by setting $TMPDIR.
    
    [1] http://www.pathname.com/fhs/pub/fhs-2.3.html#THEROOTFILESYSTEM
    [2] http://www.pathname.com/fhs/pub/fhs-2.3.html#VARTMPTEMPORARYFILESPRESERVEDBETWEE
    [3] http://www.pathname.com/fhs/pub/fhs-2.3.html#TMPTEMPORARYFILES

commit a07eddff703bd5c2589069447ac620aefa3021ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 18 22:38:05 2011 +0000

    fish: Initialize pcmd structure.
    
    On Debian we get this warning which I'm pretty sure is bogus:
    
    fish.c:690: error: 'pcmd.cmd' may be used uninitialized in this
    function [-Wuninitialized]

commit 0a7fe3877c8049ebe62022aedcf8b95853f101d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 18 13:21:30 2011 +0000

    Version 1.9.5

commit 71f1e826354948c8a04968e167bd66cbe3758b83
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 18 11:46:03 2011 +0000

    fish: <! cmd executes a shell command and inlines the resulting commands.
    
    The new guestfish construct "<! cmd" executes the shell command
    "cmd", and then anything printed to stdout by "cmd" is parsed
    and executed as a guestfish command.
    
    This allows some very hairy shell scripting with guestfish.

commit 233a12a56e48391fe136bf1b58ca2c063c8b1db5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 18 11:24:38 2011 +0000

    fish: Factor out command line parsing.
    
    Factor out the code which splits a string into a command line.

commit b2e9c951d5d5aa644e451ef098753df2b8fd3a4f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 18 10:33:01 2011 +0000

    fish: Make exit_on_error into a completely local variable.
    
    Note that 'time' and 'glob' (which both run subcommands) do not
    correctly pass the exit_on_error flag in the remote case.  This is not
    a regression: the current code doesn't work either.

commit c9c3cea48017825bc3f237dcbc1b61ce3e1a00b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 18 10:21:49 2011 +0000

    fish: exit_on_error is a local variable.

commit 5d6c9b0728c913e7bacda9ac228d3ed6becce30f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 15 16:40:49 2011 +0000

    todo: Live CD inspection works, but not for Windows 7.

commit e2e3a9958669f8e714ae8e9660cb21231813ba94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 15 14:56:36 2011 +0000

    Version 1.9.4.

commit 61401b994a455ff74e255d6f95ad56a78df42e2d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 15 14:56:25 2011 +0000

    README: Note that po4a is mandatory if compiling from git.

commit f5d159fad2d0f6f32d31ce4ae6047ab38c4b3f46
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 14 22:20:51 2011 +0000

    Add ability to inspect install disks and live CDs.
    
    For examples of the virt-inspector output, see the additional
    inspector/example-*.xml files in this commit.

commit 1fc70a859ac24d2d3f5fa569293bb4550239f085
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 15 13:18:36 2011 +0000

    inspect: Add macros for file size limits.
    
    This also bumps the file size limit for "small text files"
    up to 2 MB, since we want to parse Windows CD txtsetup.sif
    files that are usually around 500K in size.

commit 191ea87fc8fdfb63b2a0967f9f825c8ab59ef6f1
Author: Nikita A Menkovich <menkovich@gmail.com>
Date:   Fri Jan 14 13:39:38 2011 +0000

    New API: resize2fs-M to resize ext2/3/4 to minimum size.

commit aa07d95f9b9eb9d44a641597bb2683277a27cb18
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 11 21:54:57 2011 +0000

    Version 1.9.3.

commit a8bad495e33af751738912dce66fc84e90801076
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 11 13:55:23 2011 +0000

    df: Skip final '/' character when calculating basename.
    
    Previously it was including the final '/' character when calculating
    the basename for the -a option eg:
    
    Filesystem                                Size       Used  Available  Use%
    /Ubuntu1010x64:/dev/sda1                  9.4G       2.3G       6.6G   25%
    
    With this patch the '/' is not printed.

commit 8f2ae017b5812e6f0a80b900169659de146bd03d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 11 10:43:51 2011 +0000

    fish: Don't fail if some mountpoints in /etc/fstab are bogus (RHBZ#668574).
    
    Fix guestfish (and other C tools) so that they ignore errors
    when /etc/fstab contains bogus entries.
    
    Update the documentation for inspect-get-mountpoints to emphasize
    that callers must be aware of this when mounting the returned
    values.
    
    Add a regression test.
    
    Update the example code ("inspect_vm") to reflect the way this
    API ought to be called.
    
    For more detail see:
    https://bugzilla.redhat.com/show_bug.cgi?id=668574

commit 85687eb5b5432b677cbcf8928ce7c50ca7e8ef2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 11 10:47:11 2011 +0000

    Add logo used on the website.

commit b33dd2c2a05d7308cc572eaba19f349c86d95850
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 10 10:41:20 2011 +0000

    Add cartoon fish logo (not completed).

commit 343bd3c38e6fc02da1d48013fefac84d25a8a35c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 9 13:13:02 2011 +0000

    todo: /proc/self/mountinfo

commit 5a8bb03ee78f046c212be3e93f984b569eeb2cdb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 8 20:51:58 2011 +0000

    todo: Add notes on inspecting ISO images.

commit c7f4e2d7dacdfe01c58a65d902618c8c7140c68a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jan 8 10:15:39 2011 +0000

    virt-filesystems: Ignore errors when getting label and UUID (RHBZ#668112).
    
    If virt-filesystems was pointed to an image that contained
    bogus or blank filesystems, then calls to vfs-label and/or vfs-uuid
    could fail, resulting in errors like this:
    
    libguestfs: error: vfs_label: /dev/vda1:
    
    These errors can be ignored and shouldn't stop virt-filesystems
    from working.

commit 3049281c9e77058cadf58ec63e2761990f2cbc95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jan 7 20:38:55 2011 +0000

    resize: Fix typo in man page (thanks avesh@IRC).

commit fd8d12eea6377d5c2977b601be1a9aa191c05c1f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 4 16:05:11 2011 +0000

    fish: fails to tilde expand '~' when $HOME env is unset (RHBZ#617440).
    
    This also adds a regression test.

commit 81584928e4297ccf6527dd2429b903ff86b527b4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jan 4 16:02:48 2011 +0000

    fish: Fix off-by-one bug in tilde expansion.
    
    Although this doesn't seem to cause a crash, valgrind confirms
    that this is a genuine off-by-one bug.  It could potentially
    cause a crash if you did:
    
      echo 'echo ~root/foo' | guestfish

commit c27393ce538decb7059174f4201dff04dc6ee896
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 3 17:31:46 2011 +0000

    Version 1.9.2.

commit f039b1603b74a8db0e76012141374d3a1535b7f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 3 17:16:44 2011 +0000

    New tools: virt-copy-in, virt-copy-out, virt-tar-in, virt-tar-out.
    
    Relatively trivial wrappers around the equivalent guestfish
    commands.  Change also includes new man pages.

commit 826d17e3102caa3a953f3f11b870b3c8ce39d5aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 3 17:17:54 2011 +0000

    .gitignore: Use full paths for some ignored files.

commit de580b3b74d4d891f8323ca93f95f6f8453d1d2c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jan 3 14:36:19 2011 +0000

    docs: Add QMP to ROADMAP file.

commit 65d87926e471345e6c3d6e95b797d39778ffec6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 2 22:55:48 2011 +0000

    filesystems: Document the columns in --long output.

commit 9771a5235124f3891fd00183cc93618b902ac18d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 2 21:43:22 2011 +0000

    Add initial announcement to release notes.

commit 75c27f1a89d33a4cb2261c75e2d2c1c6d84bdcef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 2 21:01:43 2011 +0000

    Update TODO file.

commit 6d0fdd575798ff5629baac49f30527c141b51788
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 2 21:01:41 2011 +0000

    inspector: Apps in Windows VMs are now listed - update documentation.

commit fef3381f53dd36f25d7f9c6a08d8ecb3331ca3f2
Author: Douglas Schilling Landgraf <dougsland@redhat.com>
Date:   Sun Jan 2 18:55:12 2011 +0000

    Lib.pm: unknown filesystem /dev/hd{x} (cdrom) (RHBZ#666577)
    
    This a purpose patch to avoid the message "unknown filesystem /dev/hdc".
    Where /dev/hdc is an entry in fstab for CDROM.
    
    Example of fstab:
    /dev/hdc                /media/cdrom            auto
    pamconsole,exec,noauto,managed 0 0
    
    https://bugzilla.redhat.com/show_bug.cgi?id=666577
    
    Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>

commit 69b150eb8591db6eb02430c3fa027c16652f1e4a
Author: Douglas Schilling Landgraf <dougsland@redhat.com>
Date:   Sun Jan 2 18:53:55 2011 +0000

    Lib.pm: unknown filesystem label SWAP-sda2 (RHBZ#666578)
    
    Hi,
    
    This is a purpose patch to avoid the message: unknown filesystem label
    SWAP-sda2.
    
    Instead of validate the label with 'eq', use '=~' and /$label/i.
    
    https://bugzilla.redhat.com/show_bug.cgi?id=666578
    
    Thanks
    Douglas

commit f5882ee60b1203a43d7a061cda6643c0d255b026
Author: Douglas Schilling Landgraf <dougsland@redhat.com>
Date:   Sun Jan 2 18:52:52 2011 +0000

    Lib.pm: avoid message "unknown filesystem /dev/fd0" (RHBZ#666577)
    
    This patch to avoid the message "unknown filesystem /dev/fd0".
    https://bugzilla.redhat.com/show_bug.cgi?id=666577
    
    Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
    
    Thanks
    Douglas

commit b6e6932f50ec7393a907792630c36e20a4e838a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jan 2 16:50:39 2011 +0000

    Tempora mutantur, nos et mutamur in illis.

commit a6702140a7cbd17614f4d913bc4a9031800e2018
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 31 11:11:02 2010 +0000

    podwrapper: Fix up the HTML output so most inter-page links work.

commit fc07b1800ec24f674a167a9e5968b603caa64fd0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 31 10:44:32 2010 +0000

    podwrapper: Fix script indentation.

commit 7df21e50afdfc4ec093afd1859be85b8b6876f7f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 31 10:39:05 2010 +0000

    podwrapper: 'builddir' was not defined - use a properly defined path.

commit b3c1dead3297e8b314aae0cb0e7b86d2577c3b0f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 31 08:41:44 2010 +0000

    Version 1.9.1.

commit f0273dbb35a59d0ed21bf8bd47cf773e9ec8aaf1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 30 23:32:09 2010 +0000

    docs: add-domain: Remove ref to not impl add-libvirt-dom API call.

commit 51c7c3cdf7fdfc1f680aa819c665dc8bf852cbd7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 30 23:14:12 2010 +0000

    docs: Refresh programming language list in guestfs(3).

commit d369183479fcd28694281b6abad65432dfb3ac43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 30 23:08:18 2010 +0000

    docs: Refresh programming language equivalence example in guestfs(3).

commit cdd90a94792d2b73cbdd2f9d38dc1be172526d2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 30 22:56:25 2010 +0000

    docs: Fix missing g handle in guestfs(3) man page.

commit deb0ba70eda2c1b0419797f5fb68d22b93f05221
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 30 22:56:07 2010 +0000

    docs: Refresh guestfs(3)/DOWNLOADING.

commit 849275b63e56d5d43d6a3658f91aae7d84617e54
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 30 22:46:29 2010 +0000

    docs: Refresh guestfs(3)/MOUNTING

commit 416cb2d5620e0f993f60a2cc7135f1ccc54857f0
Author: Jaswinder Singh <jsingh@redhat.com>
Date:   Thu Dec 23 13:45:26 2010 +0000

    Update Punjabi translations (RHBZ#665358).

commit bd6da002c1fafe6aed21bc265fc20b38326372b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 21 17:23:08 2010 +0000

    recipes: Refresh guestfish recipes.

commit d113a41043dce2fc195e9995f6f0b5838b3191be
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Tue Dec 21 13:42:27 2010 +0000

    Updated Polish translation (RHBZ#502533).

commit de49d2df5f57fd83941eb0ea8b2f7b9fa6603ff7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 20 22:33:45 2010 +0000

    fish: --ro will be default in 1.10, not 1.8.

commit 06c3f73c59745cfdfa7dfebc2f4d0144817d48bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 21:58:05 2010 +0000

    docs: Update API support.

commit 978737d818b8eeb057edfa8e13216977587a70fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 22:08:49 2010 +0000

    api-support: Fix detection of similar APIs.
    
    Because we didn't match on word boundaries, the previous
    code would get confused by similar APIs, eg. getxattr vs getxattrs.

commit 476cc7c8b550482fc29b38d209f023e0a22609ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 21:53:09 2010 +0000

    docs: Obsolete HACKING file, move content into guestfs(3) man page.
    
    Add a new section called "EXTENDING LIBGUESTFS" to the
    guestfs manual page which contains all the information
    previously in "HACKING".

commit f62005a7f35d80f02348bfde139456a6d226163e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 21:52:46 2010 +0000

    docs: Refresh README file.

commit eba4426f539a745bf1b9694c64fef914cc253863
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 19:29:02 2010 +0000

    Update TODO file.

commit 537aef8fc5ab7e0e9c001a9b045b031f42b74fd7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 15:53:07 2010 +0000

    Version 1.9.0.

commit d484b9268cc3bb6676aa2330eea505391e81671b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 15:39:04 2010 +0000

    Update BUGS, PO files for 1.8.0.

commit aaa0fc6ebedc062d5c06f9cf052096159777ba08
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 14:31:01 2010 +0000

    Prepare for next stable branch: version 1.8.0.

commit 54309d2de5faf68eacd8f1f7f3e462cbd7c6a9ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 14:25:50 2010 +0000

    Update RELEASE-NOTES.

commit 5f1f1a4a8ab43e75f4f2be901a11b031d15c46b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 14:20:17 2010 +0000

    Add ROADMAP for 1.10.

commit de2392ddccf708a4cd6d677fe159970599ac8e61
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 12:04:43 2010 +0000

    fuse: Add more tracing for calls into guestmount functions.

commit 84ab8e4e2fa76d98ccbc83d8a481f4a7536795ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 11:01:59 2010 +0000

    appliance: Don't exclude upstart (/sbin/reboot) (RHBZ#661280).
    
    Don't exclude upstart from the appliance.  It provides /sbin/reboot
    which is required by virt-rescue.

commit 525aa2f1d1e5749de58bb0d1d4b5d48519244d6c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 10:56:06 2010 +0000

    appliance: Don't hard-code febootstrap --exclude parameters.
    
    Create a separate file 'excludelist.in' that contains these
    regular expressions, and process it the same way as packagelist.in.

commit ee0aa7df2e2abff59d7eb50ff15b82e08f9dbe0e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 19 10:55:03 2010 +0000

    appliance: Use a temporary file when processing packagelist.in.

commit 9e1bd615d1cb52db1b8cb7c6c2806a13f171a235
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 17 18:56:15 2010 +0000

    docs: Add section on using /dev/fd/* with upload and download calls.

commit dfc937ab9a575ccbde0f314873792e205d24e048
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 17 10:21:41 2010 +0000

    docs: Fix link to function in documentation of "du" and "du-s" commands.

commit 09d4b22774071922108224fb6197c0b6ee8e354d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 16 23:21:29 2010 +0000

    Version 1.7.24.

commit e4400bf47c9892fd9bba2591ce4a778ddb781758
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 16 20:23:17 2010 +0000

    ntfs-3g: Document problems with symlinks and alternatives (RHBZ#663407).

commit a53a7074ee1cd3c48eb72f8cf9d4e82394987688
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 16 20:05:48 2010 +0000

    New APIs: getxattr and lgetxattr to get single extended attributes.
    
    These APIs are essentially required to work around a problem
    with ntfs-3g.  This filesystem (or FUSE?) does not list all
    extended attributes of a file when you call listxattr(2).  However
    if you know the name of an extended attribute, you can retrieve
    it directly using getxattr(2).
    
    The current APIs (getxattrs etc) are simple to use, but they
    don't work if we can't list out the extended attributes (ie.
    by calling listxattr(2)).
    
    Example using the new APIs on an ntfs-3g filesystem:
    
    ><fs> lgetxattr "/Documents and Settings" system.ntfs_attrib | hexdump -C
    00000000  16 24 00 00                                       |.$..|
    00000004
    ><fs> lgetxattr "/Documents and Settings" system.ntfs_reparse_data | hexdump -C
    00000000  03 00 00 a0 34 00 00 00  00 00 18 00 1a 00 10 00  |....4...........|
    00000010  5c 00 3f 00 3f 00 5c 00  43 00 3a 00 5c 00 55 00  |\.?.?.\.C.:.\.U.|
    00000020  73 00 65 00 72 00 73 00  00 00 43 00 3a 00 5c 00  |s.e.r.s...C.:.\.|
    00000030  55 00 73 00 65 00 72 00  73 00 00 00              |U.s.e.r.s...|
    0000003c
    ><fs> getxattr "/Documents and Settings" system.ntfs_reparse_data | hexdump -C
    libguestfs: error: getxattr: getxattr: No such file or directory
    ><fs> getxattr "/Documents and Settings" system.ntfs_attrib | hexdump -C
    libguestfs: error: getxattr: getxattr: No such file or directory
    ><fs> lgetxattr "/Documents and Settings" system.ntfs_attrib | hexdump -C
    00000000  16 24 00 00                                       |.$..|
    00000004
    ><fs> getxattr "/Users" system.ntfs_attrib | hexdump -C
    00000000  11 00 00 00                                       |....|
    00000004

commit d031afab5c819b9a0a9c9868bfc5ad736587f321
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 16 18:45:08 2010 +0000

    appliance: Add 'attr' package for xattr support in virt-rescue.

commit be0915bd5207dc9e55c701f9227496800a4ca056
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 12 23:18:26 2010 +0000

    generator: List files generated in a separate file.

commit 7de9d1305d1c186c26df6ffe305a3c9d87c8e35f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 12 23:02:44 2010 +0000

    docs: Update RELEASE-NOTES to latest.

commit 73dfb3140d97c34dbdbc7bcc7491a067f733696c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 12 23:02:30 2010 +0000

    README: Advise using febootstrap >= 3.3.

commit 2bcd799de57456905ef746c546be3fc1c503e9ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 12 22:36:06 2010 +0000

    Version 1.7.23.

commit e70ad6ec6e46e7fa07b8090832d8b6e53367730d
Author: Thomas S Hatch <thatch45@gmail.com>
Date:   Sun Dec 12 10:55:09 2010 -0700

    Removed hfsprogs from supermin packages for Arch

commit 1b7de4262944758c832413637b916f8ff64054de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 12 10:02:00 2010 +0000

    fish: Clarify documentation for --ro option.

commit c175d4715049748ae4f99b6de35b5cdaa6d3d13d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 12 10:01:30 2010 +0000

    fish: Document equivalence of -a/add etc. in man page.

commit e2c650b56db438b1814e92290a3b11598bdaaadd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 12 09:48:59 2010 +0000

    fish: Split ..|.. options into separate items in man page.

commit fe429b6fd3b80fd65d9e756526efb6778cc6608c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 11 23:35:18 2010 +0000

    appliance: Don't set utime on cachedir until we know it is safe.
    
    This could be used to touch an arbitrary file (albeit one which
    must already exist), and this could have been a security problem.

commit cd39c0a716d30e0affdb17ffa719439381d1f14d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 11 23:23:36 2010 +0000

    appliance: Touch cached appliance files so they don't get tmp cleaned.

commit 5969808203f220210c55239feceb891e6db4cc6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 11 23:07:56 2010 +0000

    Remove extra \n character from end of error messages.

commit f89d6a6c22c926b86714fc7cbacfde59fc72fd2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 11 18:08:08 2010 +0000

    Version 1.7.22.

commit 1908a2f12aca5f91a520469678b5e95ad061e1db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 11 17:22:43 2010 +0000

    appliance: Be careful about cleaning up old appliances.
    
    This change resolves several issues with current appliance
    building:
    
    (1) Old appliances are cleaned up.
    
    (2) Race conditions between appliance building is handled better.
    
    (3) Several bugs fixed.

commit da8ce5d903ba64d08bc25b4d852e39b8f132dfe5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 10 17:38:17 2010 +0000

    daemon: Use prog_exists to check for features.
    
    This updates commit 0938509e0422363554023ab99381fd70a22a6e08.

commit 55f39b4717ab92bb25dcd076d50023bdb40e2687
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 10 17:19:02 2010 +0000

    debian: Work around warning in Debian udev init script.
    
    See also:
    http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=606622

commit 6600b74d7d7c0a396c0c1d521d6182dcec0ab356
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 10 15:05:17 2010 +0000

    win-reg: Add Windows Tips to documentation.

commit 1c6c2fc161128e16a2b49bcfb456e0f952fda0f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 10 14:36:18 2010 +0000

    win-reg: Move documentation after options, combine shell quote sections.

commit 00a274fea34cebaac94ed46c323b03e0b46323e4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 10 13:44:25 2010 +0000

    Version 1.7.21.

commit 09517ecb3a53fb76ac5479726f0e6aa47dbd3625
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Dec 10 12:19:49 2010 +0000

    Remove several unused local variables.
    
    (Revealed by compiling under Debian where this is a warning).

commit de464b2dbff7b43f7c86612a4ebe43d09ab1dddb
Author: Thomas S Hatch <thatch45@gmail.com>
Date:   Thu Dec 9 22:04:24 2010 -0700

    Added packages for Archlinux support

commit 913774f1189342c88e7d5049f8dd87a5421e60b8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 9 18:31:23 2010 +0000

    debian: Dependencies for all the different names of qemu/KVM.

commit 44119ffcec4876f7da12b44dfa15ea330ec26850
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 9 18:31:03 2010 +0000

    debian: Quilt is not used for patch management.

commit 8473cb996076fcdb79f056e639218e19734fb0c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 9 18:30:08 2010 +0000

    cat: Remove some unused local variables in virt-cat.c and virt-ls.c.

commit 7e68656631aa6433d7821d9b48adf1517d524b98
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 11:41:13 2010 +0000

    Add debian/ directory (temporarily).
    
    This was created initially from pkg-libvirt/libguestfs.git
    commit 680ff0b0e8c9133ef987e68392bd3990715f6891.
    
    This is a temporary measure to allow us to build Debian and Ubuntu
    packages more easily.  When downstream packaging is being done on
    these distros we will remove this directory again.
    
    To build a Debian package, use this command:
    
      debuild -i -us -uc -b

commit ed98fbdf75073c1bfadc53e4556cd7e9f472a5e6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 9 16:24:35 2010 +0000

    debian: Exclude file-rc.
    
    This package duplicates /etc/init.d/README which is
    really supplied by sysv-rc package.

commit c320ab40ae87f2b46dde2932ec6a36497877df05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 9 12:42:33 2010 +0000

    build: Use ./configure --with-python-installdir=DIR to select Python dir.
    
    We don't always want to install in the site-packages directory.  Allow
    the directory to be chosen using a configure option.  Rename the
    variable PYTHON_INSTALLDIR to reflect its true purpose.

commit 578af778f45260d8dffc374002d2ecb4a342ace2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 9 12:35:41 2010 +0000

    build: Add "checking ... result" around Python tests.

commit 51d5169f0161f759f72d5751329a544568b9545c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 9 12:06:09 2010 +0000

    build: Remove check for root.
    
    With the new package building system, it is no longer dangerous to run
    'configure', 'make' or 'make check' as root (although it is still not
    necessary and not advisable).  In any case we don't need to check
    this.

commit 0b2b8f714a7f940d20ea3fa48de605b3aa3f8539
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 9 16:41:20 2010 +0000

    inspector: Remove some unused local variables.

commit 282faf8b0ae3e13c35df9b0cb5d153e88c68e208
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 9 11:54:59 2010 +0000

    fish: Remove some unused local variables.

commit f40fb3f24602fd69af523e9713a7197068bc2b60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 17:37:25 2010 +0000

    build: Remove AM_GNU_GETTEXT_VERSION macro.
    
    See discussion on the mailing list:
    https://www.redhat.com/archives/libguestfs/2010-December/thread.html#00032

commit 0a7a153ca018731fae08e72628d1c7466ea8803d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 8 12:12:08 2010 +0000

    rescue: Add notes about networking.
    
    In particular the 'ping' command does not work because it is
    using QEMU user networking.

commit 3f551e91ea20bb0cd2c3e7ca0d28c3e4ecc79bf9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 8 12:11:53 2010 +0000

    rescue: Add note about using virt-rescue as root/non-root.

commit 243be0857041ad3c09d7da5d92f950ea003497ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 22:16:02 2010 +0000

    docs: Link to guestfs-examples(3) after simple example.

commit 580aa27a6451de46751217c913bbf834630b116b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 22:15:45 2010 +0000

    docs: Note that guestfs_sync is no longer necessary.

commit fe63331054013c68c0f28aa6cf534d2067ab2dde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 18:41:40 2010 +0000

    Version 1.7.20.

commit 4a87bd80e66599910fbbdeb8732a7ed154b5c1f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 18:39:11 2010 +0000

    build: relink-static.sh script removed from EXTRA_DIST.
    
    This updates commit 9bc15f5d98a3a17d465a94f42dc3ffb60c077293.

commit 5e98b8e7b965f49e017aaf6aff270d29a6a8df10
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 17:55:38 2010 +0000

    ubuntu: deactivate LVs and VGs before removing them.
    
    Even with the '-f' option, LVM on Ubuntu sometimes cannot remove
    active LVs and VGs.
    
    Change lvm-remove-all so it deactivates each LV and VG before
    removing them.

commit d538bb514ebe6c62ff7dca27209f28b6ec1049ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 17:32:40 2010 +0000

    Revert "umount-all: Add udev_settle after unmounting disks."
    
    This reverts commit ad2abf89c364d5ec73fb12af63b053637d99d757.
    
    Ubuntu still has errors even with the addition of udev_settle
    after umount-all.  Therefore this was just masking the problem.

commit 87b49ec6d20151b8b9cf6f5bc556b57ed5c2be7f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 16:51:41 2010 +0000

    debian: Fix ntfs3g available API on Debian.
    
    Really we should have a test for "is program on $PATH?" but this
    fix will do for now.

commit ac8f9058c84a45f6f03cd4de70f0e988d792024b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 17:16:20 2010 +0000

    fuse: Set UID and GID when performing FUSE tests.
    
    This avoids breakage on Ubuntu.

commit 6dc46aaa3d96c57fdaf97cc6705abc622e71c9c9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 16:23:41 2010 +0000

    autobuild: Skip some tests on Ubuntu.

commit e32d4c4db93ff8898ef63efb5c8ae9fe53d939cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 16:22:23 2010 +0000

    ubuntu: Allow test-luks.sh to be bypassed to workaround Ubuntu bug.
    
    This is necessary because of too old cryptsetup on Ubuntu.

commit affcf36943403d97db5d8596ff58fbf9d1e3de89
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 16:15:32 2010 +0000

    umount-all: Add udev_settle after unmounting disks.
    
    This helps avoid an error on Ubuntu, but it's not clear if this
    is a real solution or just helps by adjusting the timing of some
    race condition.

commit c3606f016e1a7c4a63554406e96d2bf8161cd957
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 15:29:55 2010 +0000

    fuse: Disable test which doesn't run reliably on Debian.
    
    See discussion in RHBZ#660687.

commit 3644879a5deb4bfb6c46a3abb0d1244bcb33334b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 14:49:34 2010 +0000

    fuse: Fix emulation of open call.
    
    We were being over-complex in this call.  All the FUSE API requires
    this call to do is to check permissions.

commit 241a7fb6674035586f166c19f6daa5769673dde6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 13:29:40 2010 +0000

    fuse: Fix segfault in guestmount --verbose.
    
    If hash_delete returns NULL and --verbose option was given then
    this would cause a segfault.

commit ef2e39029686b74b3373b53b50ecb0a38fa52790
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 09:48:20 2010 +0000

    Add autobuild script.

commit 95fde0c6b82cd5c0b10f6cd97c1c2d621af660d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Dec 7 09:53:16 2010 +0000

    gitignore: Ignore all local* files in the main directory.

commit f416af67e310a01f1f241fb0064a1728f70157da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 21:24:59 2010 +0000

    appliance: Don't quote the --exclude parameters.
    
    The quotes appear literally on the command line:
    
    $ s="--foo 'bar'"
    $ echo $s
    --foo 'bar'

commit 93fca1c2dbd9bfaab190a61380795f74d7bf52df
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 17:44:06 2010 +0000

    Add --with-febootstrap-yum-config.
    
    This allows the febootstrap --yum-config option to be passed through,
    allowing a separate yum configuration to be used.
    
    The hope is that this will enable building in Koji.

commit 0a58d3a6a349a211f89e993511b3320ee64d117b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 18:16:39 2010 +0000

    Remove ability to build static distribution.
    
    We are now going to build binaries for each distribution so
    there is no need to build the quasi-distro-independent static
    binaries any more.

commit 55cbd6a1c045f8ad5d0daf5f0822c8ae2eaa5771
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 16:46:00 2010 +0000

    regressions: Disable test for 576879.
    
    This test has worked only intermittently for a while.  Disable
    it.  The upstream bug has been reopened.

commit 858d386f0ab2ae0c2b9619d323c99f58ef2905db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 15:55:36 2010 +0000

    build: Use grub-pc instead of old grub on Debian and Ubuntu.

commit 4ee9e5545581fa3e3f4413b818cf6399200d8c29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 15:01:38 2010 +0000

    build: Add diff to package list for Debian and Ubuntu.

commit 5d1dc0c3a3d5160e5a6031cf91065a23b4b9963e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 14:59:03 2010 +0000

    build: Add cpio package to package list (for Debian and Ubuntu).

commit 6d109d0d3053221cdf4b85a3e7d4d70f77fe5dcd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 15:04:00 2010 +0000

    build: Look for other db_dump variations (for Ubuntu).

commit 3c23ecfe34fb90805fe7f351c6f543abae72b8ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 14:32:03 2010 +0000

    ubuntu: Disable xfsprogs from Ubuntu package list.

commit 6e28b51bcb22a0a20726250e983ea4e27664edcf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 14:31:17 2010 +0000

    ubuntu: Make Ubuntu into a separate distro for the package list.
    
    This allows us to select Ubuntu packages separately from Debian ones.

commit d92d22fc87181d01fc8767ed9e2ef601cb9bce30
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 17:39:31 2010 +0000

    build: Don't emit warnings about stack protector failures.
    
    These are seen on gcc 4.5.1 used in Ubuntu.

commit 1f8fc608dca6dd8c0c5bc2e229d8913e9227591f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Dec 6 13:39:37 2010 +0000

    debian: Enable more packages in packagelist.in.
    
    These were previously disabled because of problems with
    debirf.  Now we are not using debirf, we can use them
    again.

commit 7693520339b513e98d240d6e042cce1abf7e08c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Dec 5 11:20:21 2010 +0000

    Version 1.7.19.

commit 27223308548e54b8ef9c184937eb8e1b13fe824d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 4 23:47:47 2010 +0000

    Debian: Extra packages needed to run C API tests.

commit b756e0da87e940cdf06f476149bd910cad7505fa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 4 21:14:17 2010 +0000

    appliance: Change to using febootstrap 3.x supermin appliance.
    
    This removes all support for building the ordinary / old
    style appliance using febootstrap 2.x, debootstrap, debirf,
    fakeroot and fakechroot.
    
    Instead this uses febootstrap 3.x to build the supermin appliance
    in a simpler cross-distro manner.

commit 315ef2636c0933716740c2592a5083f9bd175667
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 4 19:07:15 2010 +0000

    appliance: Put /init in a separate supermin appliance component.

commit 916b80a6d740d839069566cb007d470e51ae29c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Dec 4 19:06:39 2010 +0000

    appliance: Don't look for kmod.whitelist.
    
    This file is not used for building the supermin appliance.

commit 081a84a4272a2e78f545bd7f3d50e74555a2b881
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 2 13:35:14 2010 +0000

    New API: mkfs_opts, mkfs with optional arguments.
    
    This is an extensible version of 'mkfs' which supports optional
    arguments.  There is now no need for 'mkfs_b' since you should
    use 'mkfs_opts' with the optional 'blocksize' argument instead.

commit c651392e6f221dad3cf8adbf0277ae6cb8f10075
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 2 13:32:40 2010 +0000

    generator: Code to handle optional arguments in daemon functions.
    
    Previously we only supported optional arguments for library
    functions (commit 14490c3e1aac61c6ac90f28828896683f64f0dc9).
    
    This extends that work so that optional arguments can also be
    passed through to the daemon.

commit 34e0b136702b310280119500a6a577740d827267
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 2 13:31:52 2010 +0000

    fish: Fix generation of code to handle Int/Int64 optional arguments.

commit 2a24e32e39c9c54c4379f2312511be9a20a94647
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 2 11:35:57 2010 +0000

    Fix argv struct mixup over Int/Int64.

commit e4e395cd287e97e0c4333d81ba39dd6767536763
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Dec 2 10:23:30 2010 +0000

    todo: Refresh documentation.

commit 95cd2c716c3e46e00b930dc69f1f9bc4431102e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 1 18:00:17 2010 +0000

    Version 1.7.18.

commit c71e6723ecc322a962bffa85f8cf78883205b5ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 1 13:33:31 2010 +0000

    Add progress notification messages to upload and upload-offset APIs.

commit 3d17f5c0a23c2857525706cd5e0e62d3aa86e2d0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 1 13:31:25 2010 +0000

    protocol: Handle progress notification messages during FileIn.
    
    If the daemon sends progress notification messages while we
    are uploading FileIn parameters, these are received in
    check_for_daemon_cancellation_or_eof.  Modify this library
    function so that it turns these messages into callbacks.

commit 9df9a5f17cb2e33724d439610b512c452dcd0573
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 1 13:24:23 2010 +0000

    protocol: Really read 4 bytes while checking for cancellation.
    
    We've not actually hit this bug in practice, but at least in
    theory while checking for cancellation we could read > 0 but
    fewer than 4 bytes, which would effectively be discarded and
    we would lose synchronization.
    
    Note the socket is non-blocking.
    
    Change the code so that we temporarily set the socket back to
    blocking and force the read of all 4 bytes.

commit d7f7f4ad3ecb07feef6ebc8a9cd87da61ba9f983
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 1 13:28:26 2010 +0000

    protocol: Send progress_hint in header.
    
    For actions that have FileIn arguments, count the size of all
    the input files and send that in the progress_hint field of the
    request header.

commit 87e0417d666c714c16350d67b12b2ddf3714bb3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Dec 1 10:30:44 2010 +0000

    protocol: Upload progress messages and optional arguments.
    
    Two unrelated changes to the protocol to support progress
    messages during uploads, and optional arguments.
    
    Note that this makes an incompatible change to the protocol,
    and this is reflected in the protocol version field (3 -> 4).

commit 927d1d23430af531ea845f2b50510f5fc0f19d1e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 16:52:48 2010 +0000

    df: Fix segfault when using virt-df -a filename
    
    If 'filename' doesn't contain a '/' character then virt-df
    was calculating NULL as the basename and later segfaulting.

commit 52160ec3222201496a40caf914e4b8e55d7c6780
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 15:01:29 2010 +0000

    Version 1.7.17.

commit fddf7a160827c30cf1caba9ff3c1a6a3a0c501b1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 14:17:37 2010 +0000

    php: Combine tests to reduce number of launches.

commit 3da3f8e3e64bfe28c0fb84441e4fd9d5c73b7340
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 14:10:40 2010 +0000

    haskell: Combine tests to reduce number of launches.

commit 9ae79c4682e4195172b66afb1d797a096f78620d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 14:06:27 2010 +0000

    java: Combine tests to reduce number of launches.

commit 5f6bdf04e3bdbd8793352590494c4e1bbb2b3ace
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 13:59:50 2010 +0000

    python: Combine tests to reduce number of launches.

commit 6ddc47c719ba98d9620e4aa2b5c9e99703111371
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 13:56:33 2010 +0000

    ocaml: Combine tests together to reduce number of launches.
    
    Combine launch, lvcreate and readdir tests together into a
    single 'basic' test, so that we don't launch the appliance
    so often when testing in this subdirectory.

commit 97e4f0369513a4ba5ed90e2a2b4a7edb8459f0a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 12:42:55 2010 +0000

    capitests: Convert many InitBasicFS tests to InitScratchFS.
    
    These tests run much more quickly if you don't have to run
    'mkfs' and (particularly) partitioning/LV commands between each
    test.
    
    The total time for running 'make -C capitests check' on my laptop
    has gone from 413 seconds down to 221 seconds.

commit 6a8e4c0a026b5a4545fb3e1add68eb8a3e6fb8b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 11:48:35 2010 +0000

    capitests: Add 'InitScratchFS' test environment.
    
    This should allow us to perform filesystem-based write
    tests much more quickly, because we don't need to recreate
    the filesystem from scratch each time.

commit 7aa72aab933da7f81730e8ac465b47616a9052d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 10:42:31 2010 +0000

    capitests: Move test documentation into HACKING file.

commit 8fe9de22c626eae79e1d46002f50809591a921d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 30 10:33:08 2010 +0000

    capitests: Use /dev/sdc for misc tests (instead of /dev/sdb).
    
    This change means that /dev/sdb is not being used during
    the tests (except passively, eg. in listings of devices).
    
    This allows us (in a forthcoming commit) to use /dev/sdb as a
    quick scratch filesystem for testing writes.

commit 4191262d71390c078c0061e425278948c77b1395
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 27 18:48:48 2010 +0000

    docs: Fix small inaccuracies in virt-resize(1).

commit 6a68703df9c23e840923ff4af101980cfb515f0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 27 18:43:23 2010 +0000

    docs: Fix typo in virt-filesystems(1).

commit a3f5b901eb8ce4aa70463db6b459228dde7a2d84
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 27 18:39:35 2010 +0000

    docs: Remove ref to L</add-drive-opts> wrongly copied into some man pages.

commit 0be8cfc789659d78b92e25b84384515222fc565b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 23:57:42 2010 +0000

    Update API support.

commit c816e8738f8c48bb2e057b2933028664bff666d6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 23:56:41 2010 +0000

    Updated RELEASE-NOTES file.

commit c1995d9460f91f1ee2b67dc9fe0dd40044a299e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 22:36:14 2010 +0000

    Version 1.7.16.

commit 927f6fcd5376023546ab252a305e715626024754
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 21:51:11 2010 +0000

    fish: Don't use external pod2text program.
    
    This removes the dependency from guestfish to the external
    pod2text program (and hence the final dependency on perl for
    guestfish).  This is done by storing the formatted pod2text
    output in guestfish as the help text.

commit 1bbbe254d97de2b678028cf8a41bf563166023ea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 21:49:58 2010 +0000

    generator: More options for internal pod2text generator.
    
    Allow extra width, and trimming options.
    
    This necessitates a change in the memoized format.  To avoid
    causing crashes if a new generator loads the old format, also
    change the filename of the memo file.

commit bf009f672cce15948e523b03bf6461607c2e60bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 18:26:09 2010 +0000

    libtool fix: Don't do fix if there was no -o option to libtool.
    
    For example if libtool is being run as 'libtool --mode=execute ...'
    
    This fixes commit 4cf4f2b66f850bb39c5bf29d3cd12ada9114d67e.

commit 64236cf01fa275449d2dc071f5c9b2688fc6ee09
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 16:50:50 2010 +0000

    Version 1.7.15.

commit da84bcdbb93ef2cc30dd92d7ece58c479b71c411
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 16:53:06 2010 +0000

    build: Add several missing shell scripts to dist.

commit 86e9b708fd1c4e2c1a471ab4bec360de694d0e1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 16:48:55 2010 +0000

    Remove dependency_libs from libtool *.la files.
    
    Add a libtool wrapper which kills dependency_libs in libtool *.la
    files, to ensure that libtool doesn't add unnecessary extra libraries
    when linking.
    
    See http://lists.fedoraproject.org/pipermail/devel/2010-November/146343.html

commit 55b1093e2c71a19f9ae5870ff1344bd16f0ce0b6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 16:49:54 2010 +0000

    df: Missing direct dependency on libvirt.
    
    virt-df has an (optional) direct dependency on libvirt.  Because of
    libtool's over-linking behaviour this was being missed.

commit 0fdb99a558827dffb3bedc49c6e045dae9ab9e15
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 11:36:50 2010 +0000

    rescue: Rewrite virt-rescue in C.

commit 15adcdfb38e2f80acf7482e09664986e73ae366e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 11:37:28 2010 +0000

    Update HACKING description of tools/ subdirectory.
    
    This fixes commit 18374b5b7d3154e0b8b8a07e3590f6eee762b58e.

commit 0fd7fdeb1d457efda12dc0bb558190d48c9f2f53
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 26 10:18:29 2010 +0000

    daemon: Close leaked file descriptor along checksum error path (RHBZ#657499).

commit e4e5a7866c711d7f6d58ff531c817354a9043d2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 25 18:53:54 2010 +0000

    Version 1.7.14.

commit 91f87d9b2786e736f09310775a6afd22a93612e7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 12:05:04 2010 +0000

    df: Rewrite virt-df in C.
    
    I have diffed the output from the original virt-df with this
    new version, and they agree very closely.  Some differences:
    
     - Old virt-df have a divide-by-zero error in cases where the
       number of used inodes was 0.  New virt-df fixes this.
    
     - New virt-df uses gnulib human_readable library which displays
       numbers to 3 significant figures for -h output (old version
       used an ad hoc function).

commit f8b6c01a0072c7b1067cd7edfdd51b06ab3869a5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 25 15:38:26 2010 +0000

    Export private function 'guestfs___for_each_disk' for use by virt-df.
    
    This private function (not part of the API) allows us to
    iterate over disks from a guest, avoiding the business of
    writing all the XPath code yet again.

commit 8840a73793f0047101c4eebc9cc1ae6d63be2b93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 13:16:01 2010 +0000

    fish: Keep device names in options drives list.
    
    In the 'struct drv *drvs' structure, keep a list of the
    device name(s) for each added drive or guest.  The device name
    is the canonical name as that drive would be known inside
    libguestfs, eg. "/dev/sda"

commit 02320251315e7e2612110076424a77f22f635ac2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 25 15:36:57 2010 +0000

    Fix memory leak (xptype XPath obj) in add-domain API.

commit 8530a9ea9097afd12a4f6d2a3f60a192daa32675
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 20:02:09 2010 +0000

    Version 1.7.13.

commit 1df96aae0a1d84cc749f72b3df4bcf1e420501b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 20:06:22 2010 +0000

    build: Remove some non-existent files from CLEANFILES.

commit 8d9da52498a12c018327c628e208e5a157210aeb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 18:49:37 2010 +0000

    ruby: Translate C examples into Ruby and include documentation.

commit 41e43bf1e710c8314940c381de03da63df0d1eb8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 18:10:50 2010 +0000

    python: Translate C examples into Python and include documentation.

commit 7bbbb905f1e57a82570789312774b34ae0232813
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 13:34:16 2010 +0000

    ocaml: Translate C examples into OCaml and include documentation.

commit 82600b19948f04999cc96d1d552b393d33c7076f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 17:19:28 2010 +0000

    docs: Standard C examples, and guestfs-examples(3) man page.

commit 4621bc617ee0ed625771f84334431c033a6671fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 15:19:33 2010 +0000

    build: Centralize all POD manipulation in 'podwrapper.sh' script.

commit 54e0538cbd44ee7a8fa448c3365df8a5a7adecd9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 14:28:32 2010 +0000

    build: Rename bugs-in-changelog.sh

commit 5270580e6fb9347d073b1d31bc33d7a38e09fcf6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 14:25:57 2010 +0000

    build: Rename update-bugs as update-bugs.sh.

commit 7f012c62d1d15b6cc40db8a2c02c5657e8492a35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 12:42:17 2010 +0000

    generator: Remove unused variable.

commit 34d5724bedec8be7b6463376dc80b7b91d237467
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 11:17:45 2010 +0000

    fuse: Add note in test about how to debug guestmount.

commit f5e9d61d90a5b6ad653046bf61cfb3fff9f7cee0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 10:00:06 2010 +0000

    build: virt-make-fs requires String::ShellQuote, add to configure.

commit 301a01e3fc9c9cec75217a902435a57356a89a6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 24 08:38:35 2010 +0000

    regressions: Fix test-launch-race to work in non-supermin case.

commit db44bf09a89879f4bb613f061da7e41c847b45ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 20:05:56 2010 +0000

    daemon: blkid cache is at a different location on Debian.
    
    Remove both possible cache locations.

commit ea3d46a1056730f85d3dd04edd857c8ae5c63dd1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 19:56:30 2010 +0000

    debian: Include ntfsprogs in the appliance.
    
    This allows us to build NTFS filesystems at least.  Mounting
    NTFS doesn't work in Debian because of a problem with debirf.

commit fd72c33f77e4638fa99319b079a99f007fc0f838
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 19:05:53 2010 +0000

    inspect: Detect if db_dump and db_load programs are available.
    
    If db_dump is not available then disable RPM application detection.
    
    Note these utilities have odd names on Debian.

commit 6dcc2621380896f61e62862744586fa0817347ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 18:42:28 2010 +0000

    build: Move po4a detection up near other program detection.

commit 673b207a2d2e7e0f2abe5f50837da88db6075e16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 18:41:59 2010 +0000

    daemon: In sfdisk call blockdev --rereadpt with device name.

commit 8a5dcca3b88da682cd28986f046b0c9ec5bc78f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 18:12:26 2010 +0000

    ocaml: Fix some unused parameter warnings in OCaml bindings.

commit a810debe5f424035a6f1505e8f688b708758cd0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 15:55:50 2010 +0000

    Update README to reflect Perl modules that are really still required.

commit 80505c143ee6d14d08028e23f51d8123337e3d94
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 15:54:08 2010 +0000

    build: XML::Writer Perl module is no longer required.

commit dc997f3cd55ef13a2863c3c124481479b85124ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 12:05:15 2010 +0000

    filesystems: Fix command synopsis in usage message.
    
    This updates commit fbc2555903be8c88ad9430d871cf0d27c8fded1e.

commit b5766b58c3fcc100ca77d4a534ec48df114f598e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 10:21:56 2010 +0000

    Version 1.7.12.

commit 18e77dca92394c39a5a4ac79b8e7c09f04859d5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 10:29:12 2010 +0000

    fish: Link to virt-inspector from guestfish man page.

commit 54cc8e303bed5be559e77a3d8ffbf49812dc81de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 22 17:33:35 2010 +0000

    New tool: virt-filesystems
    
    This tool replaces virt-list-filesystems and virt-list-partitions with
    a new tool written in C with a more uniform command line structure
    and output.
    
    This existing Perl tools are deprecated but remain indefinitely.

commit 90ae9f176655bcb1ec15b864257960983fdfe11c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 22 12:37:55 2010 +0000

    ls: Rewrite virt-ls in C.

commit 4a4a7e3e0faff433ff09481d396ae385f693aaff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 09:47:34 2010 +0000

    resize: Fix canonical device function (RHBZ#655554).

commit 04a260cb22aecdda8b87cb2cc6be8272cad22dc5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 23 09:03:23 2010 +0000

    inspector: Make whole disk paths canonical (RHBZ#655554).

commit b62104419a321cd3bc64869e8f15217fc7d1a6b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 22 17:32:32 2010 +0000

    inspector: Fix documentation of -x option in usage.
    
    This updates commit c5cb65f0aac3298e634b183f73fda6644a158018.

commit 46cd7f609e311c071c089eb693afef478997a705
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 22 17:31:15 2010 +0000

    cat: Fix documentation of -x option in usage.
    
    This updates commit d29e9a552f5823d1d8cb8d4962cb1301bbf60b0e.

commit 9ab226d5e23d5f24e5d31969b01734026283f7fe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 22 13:09:26 2010 +0000

    cat: Continue after encountering an error.

commit dd6580fb4b43438c894abd41240e6b0456adcd0b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 22 12:38:18 2010 +0000

    cat: Fix documentation for command line with format option.

commit 37ca9d60096c2705d6272afdbcefb852a79953cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 19 22:50:30 2010 +0000

    inspector: Fix rule to build HTML file.
    
    This updates commit c5cb65f0aac3298e634b183f73fda6644a158018.

commit caf61ebaa08f412369c88d930e660337d1748211
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 19 22:31:24 2010 +0000

    Version 1.7.11.

commit 037ab34fdc7226b7eaadb0165834fa96cffac669
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 19 22:30:54 2010 +0000

    po-docs: Remove virt-inspector.pl reference from Makefile.am.

commit 63a6ceb40348d37a72da193e9edf9730bf5ad185
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 19 12:48:21 2010 +0000

    inspector: Rewrite virt-inspector in C.

commit c67e0eecf2ae42787243d1e34169733380671cfa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 19 15:31:22 2010 +0000

    fish: Fix memory leak in handling of encrypted volumes by -i option.
    
    This fixes a memory leak introduced by
    commit a232e62dcf508517a32b9a8d7e4529e827be721b.

commit 41c064454d0834b7278e83a7f1413fe81c738f4b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 19 15:30:45 2010 +0000

    inspect: Fix memory leak of hostname.
    
    This fixes a memory leak introduced by
    commit fab75c0337d7897d10ea5e95e47ac05eab81ace9.

commit 6e387a9601e4a12c1d73d3893f96f903c17c300f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 19 15:13:00 2010 +0000

    cat: Fix run-cat-locally script so it doesn't go via Perl.

commit ef55e04b855edc4382c9b9bfdc2b2e5b986dd5b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 19 13:05:49 2010 +0000

    cat: Give a better error if the user specified no drives on command line.

commit dd4957010a47d7f555f384bbf71d3ae119d78200
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 19 12:56:06 2010 +0000

    cat: Tidy up documentation for --format option.

commit 2977dd202717067e033371e31c88b526de023a7c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 18 15:32:05 2010 +0000

    Remove FIPS .*.hmac files from the supermin appliance (RHBZ#654638).

commit f456d85c9de1d0d74775e299c6c70e85f7c3e8da
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 17 23:13:36 2010 +0000

    Version 1.7.10.

commit 003d184d1241e0c3ab3bbc7ffa4f796e4d14ecab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 17 16:43:18 2010 +0000

    generator: trace mode prints return values.

commit 8442e3de12c4d6aaa910a686b23e438076ab4c4e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 17 16:06:55 2010 +0000

    generator: Make return value into an explicit variable.
    
    This is just code motion.

commit 6b86c3ca192379a7e02a61f5329d6e123cb40ac2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 17 15:54:06 2010 +0000

    generator: Make trace flag an explicit variable.
    
    This is just code motion.

commit 0edc6626efd794332082da3735a48a3d688ae2ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 17 15:07:45 2010 +0000

    todo: Suggest that trace should include return values.

commit c68e6e7a48f4cec6817bca2c3770b57c0e71205e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 23:34:07 2010 +0000

    rescue: Fix typo in documentation of --network option.

commit 757e89ebafd61d11f8e68e6bb00435b9f675abd3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 19:08:16 2010 +0000

    Version 1.7.9.

commit 324121346ae35db7a68804d3a5880cf5830710e3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 17:46:50 2010 +0000

    inspector: Replace old examples with ones derived from phony images.

commit 2511c177f14a48d8823666fb860511dd90b46180
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 17:37:30 2010 +0000

    images: Make phony Windows image for testing.

commit 8870c7e6769d78aafc5b075a5c2c8a0e545795b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 16:27:20 2010 +0000

    images: Make phony Ubuntu image for testing.

commit 25344a23e90b8728f7ee2bb53d03cf65de3cf95f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 16:17:33 2010 +0000

    images: Make a phony Debian image for testing.

commit 3d2ce613a501df453368abf63a1c85aef2424123
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 15:41:16 2010 +0000

    images: Make a better phony Fedora image.
    
    This now includes a product string, major and minor version,
    hostname and even some applications.

commit 64ae05a319fb041a96bf878903eeb3e7e2f2ebf1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 15:56:11 2010 +0000

    daemon: findfs-uuid and findfs-label should not return /dev/mapper paths.

commit 93baa728ad80b40b151c6467e6b6513cd77906de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 12:57:36 2010 +0000

    New API: inspect-get-hostname to return the hostname of the guest.
    
    This returns the hostname of the guest.  Tested on RHEL, Fedora,
    Debian 5, Ubuntu 10.10, FreeBSD 8, Windows 7.

commit c7b9c6dda60f85a59214ed406af642daadfbf91e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 12:45:50 2010 +0000

    inspect: Check /etc/lsb-release is not too large before calling head on it.

commit 0f1af390e6d33c6a8630ddf04fa48f17f023a3cc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 12:35:39 2010 +0000

    inspect: Add function to read the first line of a file, with safety checks.

commit b997553619f232326a37ae1b17ce0d6f320e37e9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 16 11:16:17 2010 +0000

    inspect: Abstract the wrapper that sets up Augeas.
    
    This is just code motion.

commit 0a17987ec1425603c44be33c1644a5e541102bda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 15 23:22:08 2010 +0000

    Version 1.7.8.

commit 096c4ea6e6e165f887facd9832c988ff8791f8b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 15 14:17:20 2010 +0000

    inspector: Replace code for listing applications with new core API.

commit fe4ace37d3897595ea392a9318e9caf8dd04bd08
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 15 12:26:36 2010 +0000

    New API: inspect-list-applications.
    
    This converts the current Perl code in virt-inspector for
    listing applications, into C, making it a part of the core API.
    
    This is also capable of fetching the list of Windows applications
    from the registry.

commit 496558585452b0ffb44086f1382d4fdd6d6a826a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 15 12:40:02 2010 +0000

    inspect: Centralize all file downloads through a single function.

commit 6f8e0fac85ec3e9b356fc688512fb5400f70ff3b
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 15 22:06:34 2010 +0000

    inspect: Add support for Linux Mint and Mandriva.
    
    Linux Mint is derived from Ubuntu.
    
    Mandriva has a release file, but it also has /etc/lsb-release and
    the same parsing code can be reused.  Mandriva has a package manager
    called urpmi.

commit 64eb62cc33807117dccac3d844acc7c05e62928e
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 15 22:21:15 2010 +0000

    docs: Put list of distros in alphabetical order.

commit 998986d94747d32a7193070231f77205eae6fc41
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 15 22:20:51 2010 +0000

    docs: Debian and Ubuntu are now separate distros.

commit 024158a1432214b58e8c99654b5d17878781a9c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 15 16:31:30 2010 +0000

    todo: live CD inspection

commit 45455268472de3cf293453d1a1757e0c1c25175c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 15 10:14:16 2010 +0000

    Version 1.7.7.

commit 6582ea4f643cdf20ed8171d33f8d5112dbf0c220
Author: Maxim Koltsov <kolmax94@gmail.com>
Date:   Sun Nov 14 16:21:56 2010 +0000

    build: Missing backslash again.

commit 51026a7fc3cdb6e566944a13ffadea9b64f86136
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 18:06:28 2010 +0000

    Version 1.7.6.

commit fb64d411fced0bc8380b59df3324b39fea95e3ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 14:58:50 2010 +0000

    filearch: Refuse to download initrd if it is huge.

commit 02d7944b0d5475799b82f0f7f8a146f198d05b6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 14:55:14 2010 +0000

    inspect: Fix error out path if minor_version parsing fails.

commit e1fce43d901ac523e8f6ad576df50d9ff511a3ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 14:54:52 2010 +0000

    inspect: Refuse to download software hive if it is huge.

commit 9f7872f846f40a5a0554c1a32c198519eb096e27
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 14:49:37 2010 +0000

    inspect: Refuse to parse /etc/fstab if it is huge.

commit 315f9cbbc50ae0bd1c5f1d02a0cf8e687a9178b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 14:49:07 2010 +0000

    lib: Make some error strings localizable.

commit 9cd627f997d9a4404a0478fa88d0c6ec2b074af3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 14:42:06 2010 +0000

    inspect: Inspection support for FreeBSD.
    
    This adds inspection support for FreeBSD.
    
    However this is not quite enough to allow guestfish -i freebsd.img
    to work, because guestfish will try to mount the filesystems,
    which cannot be done because Linux requires special mount options
    for the Universal Filesystem (UFS) used by *BSD.  Nevertheless
    you can manually run the same commands.

commit b5cf156375c85afe2092717316aba6ca2116ee1c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 14:41:01 2010 +0000

    inspect: Optimize root filesystem check.
    
    Avoid duplicate checks for things like /etc and /bin.

commit 45f00c3c56c49d5a9390a6a77a690cab93ea2bdb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 14:39:21 2010 +0000

    lib: Add match3 function.

commit 678b4f867ed61daa24336566e28afac5f0027849
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 14:37:53 2010 +0000

    lib: Add safe_asprintf function.

commit 54cc6e5be1e0ad724a506dc0a02614bc122a8681
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 12:25:56 2010 +0000

    docs: Add a section on security.

commit c3da7d0c557df014a399647a8bd33af58178ca3b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 11:32:47 2010 +0000

    docs: Rearrange guestfs(3) sections.
    
    This rearranges the sections into a more logical order:
    
     - synopsis and introduction
     - API-related overview sections
     - (security will go here, see next commit)
     - API in detail
     - architecture and other internals
     - usual end sections

commit e145f0e8d5588c0295b35f7281a88e0860370a25
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 08:13:18 2010 +0000

    static: Use correct libraries for static binaries.
    
    Also add virt-cat.static target.

commit 5deb4fcb63bf8afe166f01f979960cb64142c46c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Nov 13 07:15:46 2010 +0000

    Version 1.7.5.

commit 09ed384f59dbdc75de3d0234be051d52411e51cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 12 20:25:45 2010 +0000

    ruby: Add 'make install' rule for ruby bindings (RHBZ#652796).

commit 41d5c730ee6d4901496aa52b72c311fbbd1382d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 12 19:33:55 2010 +0000

    todo: Notes on parsing.

commit 506fa1780c58ff396acc0bcf5d4a91f7c4e06f11
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 12 12:29:14 2010 +0000

    New APIs: inspect-get-package-format, inspect-get-package-management.
    
    This APIs reimplement some parts of virt-inspector in C.

commit 235b0322ff6f7cc27310daac920452b4e0519f14
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 23:36:54 2010 +0000

    capitests: Remove warning about dead definitions.
    
    This updates commit cb7ec8be4ce6068b6cbc6522a67826cdbd161024.

commit 23341ea03e7c0243b87dce15f22654bd41c8243c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 23:36:04 2010 +0000

    Check that just including <guestfs.h> on its own works.

commit 6c555c53e5b73ac0495c5734500a1fccb73a8254
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 23:18:57 2010 +0000

    Don't need to include XDR headers in <guestfs.h>.
    
    Include the XDR headers in the internal guestfs-internal.h instead.
    
    This is knock-on effects to several other source files which
    were implicitly relying on indirectly loaded headers.

commit 24332219d7d719791c5fb5e679326f36cb2fcfe9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 23:17:37 2010 +0000

    Be less verbose in the macros defending typedefs in <guestfs.h>.
    
    This updates commit 4d59e271046f2b5f0d9b1730cd23425fd631c76c.

commit 3639bd363d4b9be0db854e40389ed2d15dcca50e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 22:25:15 2010 +0000

    perl: Ignore debug functions in Test::Pod::Coverage.

commit 0f155475a104bf57896e6c36e8e63e487cb5cc13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 19:04:40 2010 +0000

    Version 1.7.4.

commit 2933c963522d8ca5879b7a9d21b79430c5482a35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 18:03:12 2010 +0000

    build: xml-light is no longer required (thanks Maxim Koltsov).
    
    At some point we removed the last thing that required
    xml-light, but were still testing for it at various places
    in the build.  This removes all traces.

commit ac743b256574a8c6fb9f673502321e2340fda7cf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 14:53:51 2010 +0000

    Rewrite virt-cat in C.
    
    With changes in the core API since 1.5, virt-cat was little
    more than a Perl wrapper which did some command line argument
    processing.  Thus it could easily be rewritten in C.
    
    This version also shares core command line argument processing
    with guestfish and guestmount, so the options have changed
    slightly (old-style command line *is* supported).
    
     virt-cat -a disk.img file [file ...]
     virt-cat -d domname file [file ...]
    
    Several other guestfish options are supported including encryption,
    and with the new style multiple files can be downloaded.  See the
    man page for details.

commit 472d12856f835dc3eb43ea9195c23d1ae1bb1ade
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 16:20:25 2010 +0000

    Generate a dummy 'Fedora' fedora.img in images directory for use by tests.
    
    We were generating this dummy 'Fedora' image already in the
    tools directory.  It contains just enough Fedora-like files
    to fool our inspection code and thus to test the tools.
    
    This is general enough that we can use it everywhere.

commit a3856017ae6905bc60e9df3b05f75557e22f231e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 12:14:37 2010 +0000

    Defend all typedefs in <guestfs.h> with #ifdefs.
    
    This allows other libraries to redefine those typedefs
    if they need to use but not depend on <guestfs.h>.

commit a5d84e0c53a3c6a698ed087b75a2a55fd56b5de1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 11:51:02 2010 +0000

    lib: Make <guestfs.h> be completely generated.
    
    This removes the 'not-quite-separate' guestfs-actions.h and
    guestfs-structs.h files.

commit ff9390e5cf83334ec7bb0f93a80315da2504e092
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 11 11:49:49 2010 +0000

    Fix small typo in a comment in src/Makefile.am.

commit de71c43ab9a05b5565d3a82d65f38444643d3fcb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 10 11:31:01 2010 +0000

    capitests: Add the code to test (proposed) add-libvirt-dom C API.
    
    This API was dropped as there are some problems with it.  This
    commit adds the original test code, but commented out.

commit 010516d64d902d619527a0c0274d71d29ec253c4
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 9 18:56:00 2010 +0000

    fish: Use core add-domain API to implement '-d' option.
    
    This also makes libxml2 and libvirt into optional dependencies.
    If they are missing then the core API will print an error, as
    will the '-d' option to guestfish.

commit 57563d4a911c6c6086be329c93cfaa139ca3020a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 9 18:53:01 2010 +0000

    New API: add-domain
    
    This new API allows you to add the disks from a libvirt
    domain.
    
    In guestfish you can use the 'domain' command to access the
    API, eg:
    
    ><fs> domain Fedora14 libvirturi:qemu:///system
    1
    
    The returned number is the number of disks that were added.
    
    Also here is a proposed (but commented out) low-level API
    which would allow you to add a domain from a virDomainPtr.
    However there are several problems with this API -- see discussion
    on the list:
    https://www.redhat.com/archives/libguestfs/2010-November/thread.html#00028

commit 214cdaa32dbdcc72c410eea46bc3ab1f1a90274a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 9 12:08:06 2010 +0000

    generator: Add Pointer parameter type to the generator.
    
    This allows generic "foo *bar" pointers to be passed to
    library functions (not to daemon functions).
    
    In the language bindings (except Perl) these are handled
    as generic int64s with the assumption being that any
    pointer can be converted to and from this.  There is room
    to add specific support for some pointer types in future
    by specializing the match cases.  However this is inherently
    tricky because it depends on the implementation details of
    other bindings (eg. to support virDomainPtr in OCaml depends
    on the implementation details of the ocaml-libvirt project).
    
    Perl is slightly different in that you have to supply a
    typemap.  Again this would depend on the implementation
    detail of an external library unless you supplied a generic
    typemap for int64.

commit 1095847fc0b1f0e67de8672b5da7da952adc5112
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 10 10:32:33 2010 +0000

    New API: debug-cmdline for printing QEMU command line (internal only).
    
    This is an internal-only debugging API so may be changed or
    removed at any time in the future.

commit f34871bc6f37ee94e4bdb720e328ae16f9b44ca3
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 9 18:50:57 2010 +0000

    Add internal facility to checkpoint and roll back the command line.
    
    This internal interface can be used to ensure that certain
    operations are atomic.

commit e1c0c01ca96c765a5c0e257d7453cfab3f3f665e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 9 15:59:40 2010 +0000

    lib: Make pcre, libmagic and hivex libraries optional.
    
    This change makes these libraries optional.  If they are not
    available at compile time then certain core API features will
    be disabled (see below).
    
    This also changes PCRE detection to use pkg-config instead
    of the ad hoc autoconf checks.
    
    The large inspect.c file has been split out into separate
    function-specific files.
    
      file-architecture: requires pcre & libmagic
      inspection: requires pcre & hivex

commit b51f13fd80d5ff36cf8aa1b52425919ea0bc7031
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 10 10:32:12 2010 +0000

    Don't include debug* commands in the documentation.

commit d6b83c5de9b2e035de871d2178ae0bb395dc8300
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 10 10:51:46 2010 +0000

    capitests: Add whitespace in Makefile.

commit 779c64dd9b2acda84db5a3f8ebd49801b38bd571
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 9 15:10:32 2010 +0000

    inspect: win64 regexp was dead code.

commit cf70cff140bbe5945310b271a38f4cb402143ee3
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 9 14:50:23 2010 +0000

    lib: Augeas (client side) is not needed by the library.
    
    However it is used by the daemon.

commit b624bf7c06f910bb34a159659b19f6c452d97a16
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 9 12:05:08 2010 +0000

    ocaml: Error on compiler warnings.

commit de933235ab1ce1cb15e5bf10b4f84c47d9916a59
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 9 12:04:29 2010 +0000

    ruby: Remove extra space before parenthesis.

commit 7c607fa9b6dcb082bb8d94ac28b38a12ea8ae063
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 8 22:36:24 2010 +0000

    Revert "autogen: Touch ocaml/.depend"
    
    This reverts commit a0f85ba643990da25b6afe6a2bbd2407cf312c73.

commit 194424c9f70d3ed39fbfbe8befec8e587ee23033
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 8 22:35:13 2010 +0000

    Revert "Remove ocaml/.depend from git."
    
    This reverts commit 064569bcbf854a9cf588ce31851d987d5f114ec8.
    
    This commit does the wrong thing: creating an empty ocaml/.depend
    file is wrong because building the OCaml bindings will fail.
    Not having this file will prevent automake from running.  Therefore
    this file has to exist with the correct content in git.

commit 062da05c8dd3ae91e5b2c8db407cce6aef1e7453
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 8 15:52:07 2010 +0000

    Version 1.7.3.

commit bfb1c1ff7d1d0805c5a8ecdfa87e7ecd72005d0c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 8 15:29:35 2010 +0000

    build: Create an AUTHORS file.

commit f57128379310c2cd434992fc177c27eccf2d28dd
Author: Maxim Koltsov <kolmax94@gmail.com>
Date:   Mon Nov 8 15:10:14 2010 +0000

    build: Don't try to rebuild po-docs/<lang> if no po4a.

commit 379fcc68e1c66a3aeab5dc584eff3621b37c8d5b
Author: Maxim Koltsov <kolmax94@gmail.com>
Date:   Mon Nov 8 15:08:01 2010 +0000

    build: Add ./configure --disable-php option.
    
    This disables the PHP language bindings.

commit 7bbfbf24d72b6e5c409d55a301a0d89631fb4df2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 8 14:53:48 2010 +0000

    build: Test for virt tools Perl libraries conditionally.
    
    Only test for these if $PERL is defined, and use $PERL as
    the interpreter.

commit df422ad7d11ff11070d849afb35c88dbd28de55b
Author: Maxim Koltsov <kolmax94@gmail.com>
Date:   Mon Nov 8 14:46:46 2010 +0000

    build: Add ./configure --disable-haskell option.
    
    This disables the Haskell language bindings.

commit 7de0d6ca1ea10a11865d8ad53c6689f753485195
Author: Maxim Koltsov <kolmax94@gmail.com>
Date:   Mon Nov 8 14:35:13 2010 +0000

    build: Add ./configure --disable-ruby option.
    
    This disables the Ruby language bindings.

commit bab834f56b616248583c5d23889b877b4da455e3
Author: Maxim Koltsov <kolmax94@gmail.com>
Date:   Mon Nov 8 14:27:27 2010 +0000

    build: Warn if Python include or site-packages not found.

commit cf9c9011041e8cb7cee904166a76c6c054a25135
Author: Maxim Koltsov <kolmax94@gmail.com>
Date:   Mon Nov 8 14:24:59 2010 +0000

    build: Add ./configure --disable-python option.
    
    This disables the Python language bindings.

commit 7664886700df08fe29d949a2aa88fa3f5168174d
Author: Maxim Koltsov <kolmax94@gmail.com>
Date:   Mon Nov 8 14:16:15 2010 +0000

    build: Add ./configure --disable-perl option.
    
    This disables the Perl bindings.

commit ac0afa77d3c116edadc1b7c7c8da659621f5c137
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 8 13:59:44 2010 +0000

    ocaml: Remove the old OCaml viewer program.
    
    This program is obsolete and the code has been reused for
    guestfs-browser here:
    http://people.redhat.com/~rjones/guestfs-browser/

commit ea26bc44c049f4f2b11be98d2d1f9935490a2669
Author: Maxim Koltsov <kolmax94@gmail.com>
Date:   Mon Nov 8 13:55:49 2010 +0000

    build: Add ./configure --disable-ocaml option.
    
    This can be used to disable the OCaml bindings.  Note that
    OCaml is still required in any case where you need to rerun
    the generator.

commit 64092d1d909f100edf6b8367326ee2e571a6feab
Author: Maxim Koltsov <kolmax94@gmail.com>
Date:   Mon Nov 8 13:12:53 2010 +0000

    build: Add ./configure --disable-fuse option.
    
    If this option is specified, FUSE support is unconditionally
    disabled.

commit 871e44f278e6ddbe149dbb38fc805104c1fa13b9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Nov 8 12:46:31 2010 +0000

    supermin: If disabled, don't compile in supermin code or check for supermin.
    
    If supermin is disabled at compile time and the user just wants to
    use the ordinary appliance, there is no need to compile in all
    the supermin code, and in particular there is no need to check
    for the supermin appliance (which involves running
    febootstrap-supermin-helper that probably doesn't exist).
    
    This fixes a warning message observed under Debian w/o supermin:
    
      sh: febootstrap-supermin-helper: command not found

commit be2ef502308a492b0f5c575c4f9d85a64eb42b63
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 5 18:36:02 2010 +0000

    fish: Add --rw option (does nothing yet).
    
    This adds the guestfish --rw option, intended in future
    to be required for writing to disk images.
    
    At the moment this does not change the default and so does
    nothing.  This patch is intended for backporting to the
    stable branches so that we can start to introduce scripts
    which use 'guestfish --rw'.

commit d2cbc070c5d0027dcc9a3dc045a07b40047c946a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Nov 7 09:54:51 2010 +0000

    Add missing generated files to the tarball (thanks maksbotan).
    
    C# bindings were omitted entirely.  Add a Makefile.am for this
    directory even though we don't build these.
    
    Because of a missing backslash, some POD files were not being
    included.

commit 4304cf3c031ecdf237760523cfda97f4de6e6c8d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 5 15:17:45 2010 +0000

    fish: Add --listen --csh to for csh, tcsh compatibility.
    
    (Thanks Eric Blake).

commit bc92acfea99d2a977812d1b9afa27759748727e1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 5 15:07:11 2010 +0000

    fish: Suggest safer form of eval.
    
    eval "$(guestfish --listen)"
    
    instead of various other forms.
    
    (Thanks Eric Blake).

commit 3adb161845b53f2d247458cb39ca5c9319d1ff74
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 5 15:04:08 2010 +0000

    fish: More portable export sh statment.
    
    Don't depend on bash, but allow sh/dash/etc format:
    GUESTFISH_PID=nn; export GUESTFISH_PID
    
    (Thanks Eric Blake).

commit 3bce8292034c931057e51ad53e9400f3aac49e6d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 5 13:43:08 2010 +0000

    New API: inspect-get-roots to return roots from last inspection.
    
    Return the roots found by the last call to inspect-os, but
    without redoing the whole inspection.

commit 7679cb5d765672c6652473b117f55423e9f39860
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 5 13:42:07 2010 +0000

    generator: Don't die if an API call isn't listed in API versions file.
    
    For example, it may just have been added.

commit 99a14149b61547d0ecb07e255806aed9028d3ca6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 5 12:20:21 2010 +0000

    Version 1.7.2.

commit 05de69f8df35aa8456adb1cff8c7dc764c0087ee
Author: Guido Günther <agx@sigxcpu.org>
Date:   Fri Nov 5 12:24:32 2010 +0000

    configure: Test for 'kvm' binary.

commit 1f87028fd868ce64a541742385a9001028768375
Author: Guido Günther <agx@sigxcpu.org>
Date:   Fri Nov 5 12:23:11 2010 +0000

    Include <stdarg.h> in public header.
    
    Public headers use va_list, and this gives an error unless <stdarg.h>
    had been included before the header.

commit edf29e619762c8d1b6c93d0637572a0163f3f771
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 5 11:54:54 2010 +0000

    Don't print out key material in trace output.

commit d6021fd6fffcc796c003868a0c9b94344b499e30
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 5 11:39:24 2010 +0000

    fish: '-i' option automatically handles whole-disk encryption.
    
    This feature is also available in guestmount because of the
    shared option parsing code.
    
    You don't need to do anything to enable it, just using -i
    will attempt decryption of encrypted partitions.
    
    Only works for simple Fedora whole-disk encryption.  It's a
    work-in-progress to make it work for other types of encryption.

commit 3c744b7aeedb09bfd1c9e5eb51ac3ac5b5d002c7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 4 17:43:17 2010 +0000

    docs: Fix API support script.
    
    Before libguestfs 1.0.69 we needed to look in src/guestfs.c to
    see all the API calls.

commit 14fdc9b35db5ee2b21706f06ff6d2377ca267405
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 4 17:23:21 2010 +0000

    fish: Fix missing guestfish commands in HTML docs.

commit fc527c9a4d1b7b31abdcfe9ee51a004f75fbe793
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 4 17:04:03 2010 +0000

    fish: Make the 'help' command more helpful.

commit 028d9ef401adf3488ecc004d634bb0ea8fb26939
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Nov 4 08:43:10 2010 +0000

    docs: Which API calls were first supported in which upstream versions.
    
    Run src/api-support/update-from-tarballs.sh (this won't work
    unless you have a local copy of the tarballs from the website).
    
    src/api-support/added contains the result of running the
    script, a list of pairs: (API name, version first appeared).

commit 165ccfbeb5d64a9bdcf82b3e238f5cb8d99f7d00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 23:17:51 2010 +0000

    virt-win-reg: Current is the control set Windows chooses at boot.

commit bc06ac816a0eeb1c8800bc5bff64745d97fa6531
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 22:23:55 2010 +0000

    HACKING: Mention PHP bindings.

commit e5f3f017f0882f1d36cad384152458d168de5ffa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 22:11:22 2010 +0000

    docs: Indent *_va and *_argv functions correctly.
    
    This fixes commit f661db2c393d1b7e4211c55682b7fac82a70e36d.

commit 8909e650664a869f41e0621028d5c36d6d9cd400
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 21:09:51 2010 +0000

    Version 1.7.1.

commit b78bad718b650dbc466c8376c82539d9123a760e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 20:34:42 2010 +0000

    fish: Use a perfect hash for faster command lookups.
    
    Existing command lookups are approx O(n^2).  Replace this
    with a perfect hash implementation which should be a lot
    faster.

commit c12c6804a61b11d258ba62b76651bdc99184be5b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 19:26:10 2010 +0000

    generator: Properly lay out and indent multi-line C function decls.

commit f616952f5a6371f90269c48e9769f3ac1047e0cd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 18:33:31 2010 +0000

    docs: Clarify no additional error available from guestfs_create.

commit 33c5f21721cf3b4c471e79b3a07ed92deeb7ab92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 18:29:58 2010 +0000

    docs: Clarify default error handler.

commit 423b5f72a87befa9106323669025562915e48cda
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 18:02:08 2010 +0000

    docs: Error strings are in fact localized, documentation was wrong.

commit bb18617f6662dbb8cc74f5c5d5adbcf1f69ab7ae
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 18:01:48 2010 +0000

    docs: Clarify, not every function that returns int returns -1 for errors.

commit 5a928b804602454950b00f792d208c3d1705e626
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 17:24:50 2010 +0000

    capitests: Test guestfs_last_errno call.

commit ddfaa5e6dacaad44b0f59aa90d1a899f4b2fa680
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 16:15:48 2010 +0000

    fuse: Use guestfs_last_errno instead of errno-reversal-hack.

commit 4e0d8e0547e3154d66af55f72eb1ef38555c52e5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 15:49:36 2010 +0000

    lib: Expose errno through new API guestfs_last_errno.
    
    If either the daemon sends back an errno, or a system call
    fails in the library, save the errno in the handle and then
    make it available to callers through the guestfs_last_errno
    function.

commit 38318ee14afb642b272b42c62a418ecfd0f49292
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 12:53:00 2010 +0000

    daemon: Send back the errno as a string.
    
    This changes the protocol again so that if the errno is available,
    it is converted to a string (like "EIO") and sent back over the
    protocol to the library.
    
    In this commit the library just discards the string.

commit 0cdd044176350a1f470185b30016a124eb8f22bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 17:00:29 2010 +0000

    capitests: Test guestfs_add_drive_opts with optional args from C.

commit 53be06189bd7d3c2fe580c179f313705ac452d60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 16:56:34 2010 +0000

    capitests: Test some basic aspects of the C API.

commit 6875477f2e574d361aa43f33d36f358a81ac4736
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 17:37:07 2010 +0000

    capitests: Use ftruncate instead of seek + write to create test files.

commit b59ee14962bb6ef4a2085c23f823ed7223290d3a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 17:34:27 2010 +0000

    capitests: Don't open test files with O_NONBLOCK.
    
    I have no idea why we were doing this.

commit e626edcbfe91fb6224f4ac05d0027ebcbac0743a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 17:26:00 2010 +0000

    capitests: Set path in TESTS_ENVIRONMENT instead of in tests.c
    
    By exporting LIBGUESTFS_PATH with the right path to the appliance,
    we no longer need to hard code the path in tests.c

commit 55bda0b8cfe4d8ae2dde33cf4549b9aaa296c20b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 15:46:46 2010 +0000

    generator: Remove unnecessary macro redefinitions.
    
    These macros are already defined in guestfs-internals.h

commit be921d8db187456b652a28f0e49b6c9cf6a4da3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 15:48:04 2010 +0000

    Define internal safe_calloc shorthand.

commit 626407443c6cf26edcc9d01a8b572edf703edc62
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Nov 3 12:52:24 2010 +0000

    daemon: Don't use ../src path to include generator_protocol.h
    
    This file is already hard-linked into the current directory, so
    the relative path is not required.

commit a1fab8d8740ba01eb5e0079e8bcc44490368caa1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 2 20:57:40 2010 +0000

    tests: Remove use of sfdisk from tests.
    
    Some older tests used sfdisk to create partitions for the
    tests.  sfdisk is buggy (more so than parted -- what is it
    with partitioning tools?) so replace these tests with
    equivalent part-* commands.

commit 5f4b254b88bdf556bb236194e759d4cb5ad17da3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 2 20:33:06 2010 +0000

    daemon: Tolerate failure of blockdev --rereadpt after sfdisk.
    
    See commit 840536ea5a0568296dfd3e483442c76b93c5a949
    and commit 956fc5a3feacc970ea763697bf28fb686c875408.

commit d4f5c38fb83faba4ab85a9cc091fcd06f6200679
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 2 17:05:58 2010 +0000

    binary: Link guestmount static binary with -lm.
    
    This is indirectly required via the new shared guestfish
    C inspection code by libxml2.

commit 5aab918091ff6d01fc03ed55f96229b523fd2b53
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 2 17:05:43 2010 +0000

    website: Distribute BUGS and RELEASE-NOTES files to website.

commit 516c8d39808f6e06ca7cab81ef532af9255647db
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 2 16:23:58 2010 +0000

    Version 1.7.0.

commit 6ca18db52cc8cbb890ebee2bf245920541314034
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 2 16:18:30 2010 +0000

    Final RELEASE-NOTES file for version 1.6.0.

commit 8ce22f0d59c117949a4066669b55b5ff8303bca7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Nov 2 10:11:04 2010 +0000

    inspect: Add support for MeeGo.

commit 2475cbec1b04ae6fe9b59ca6cc1a7bab6d3a1a9b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 29 15:49:36 2010 +0100

    Version 1.5.26.

commit c7bb3a258b6e32168e53a1ba3edfc61818b2a391
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 29 11:54:34 2010 +0100

    inspect: Add support for Ubuntu.

commit 0201a02ee8e3908cfc5a0e31ef09f4bc081128d2
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 29 10:53:05 2010 +0100

    inspect: Add detection of Gentoo.

commit d2edd73bcba41897f66074965f05343c16f82ef3
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 29 10:32:53 2010 +0100

    inspect: Add detection of Arch Linux.

commit 55d15b79d563b4eb46d791e62bba6454bae14ab7
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 29 10:21:33 2010 +0100

    inspect: Add detection of Pardus.

commit faa093c84f0803cb7b98419cec2ecf0d5d8256e4
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 29 10:50:39 2010 +0100

    inspect: Generic parsing of MAJOR.MINOR in product names.

commit c19ade8160c08ad28a727504e910537e282c488b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 29 10:49:38 2010 +0100

    inspect: Generic parsing of release files.

commit 2b09fe716df7636f800df1766f486feb160395f9
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 29 10:23:28 2010 +0100

    inspector: Sort <filesystems> section.

commit 98ad2d3892d4f2707d1be888efd71b3f21e27284
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 29 09:46:59 2010 +0100

    inspect: Ignore Pardus "/.swap" swapfile.

commit 74061ca1003b62569c5a506f64cddbce0143adb4
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 29 09:53:57 2010 +0100

    autogen: Touch ocaml/.depend

commit a473d9f76aad525202c09dce343f29dc3f1948f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 28 22:56:11 2010 +0100

    inspector: List Debian packages.
    
    List Debian packages by downloading and parsing the file
    /var/lib/dpkg/status.

commit 38b1b3aad2b780ae52e55b1666f6cfbf16409f3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 28 22:32:50 2010 +0100

    inspector: Introductory documentation for XML format.

commit f3662faad2586a516e7008c0cf9b2ff512db8474
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 28 22:32:05 2010 +0100

    inspector: Debian package format 'deb' instead of 'dpkg'.

commit b05136144689cae10e16fbecb88cac1575c11b34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 28 22:29:43 2010 +0100

    inspector: Return canonical block device paths in XML.

commit 4e9b2638b0f174734b662bf412fb0ee78e90604f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 28 18:46:13 2010 +0100

    Version 1.5.25.

commit bcdf9a21abcc8664c32ed18a425408f89c9d6444
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Oct 28 15:19:14 2010 +0100

    Ensure atomic creation of a cached appliance
    
    Cached appliances are discovered by their predictable path. Previously we were
    creating a cached appliance directly in this predictable path. This had at least
    2 undesirable effects:
    
    * Interrupting appliance creation would leave a corrupt appliance
    * 2 processes could simultaneously attempt to create the same appliance, causing
      corruption.
    
    This patch causes the cached appliance to be created in a temporary directory,
    and then renamed to the predictable path. As rename is an atomic operation, this
    makes the whole creation atomic.
    
    This patch also changes the predictable path to have a prefix of 'guestfs.'.
    This will make it simpler for system administrators to clean up old cached
    appliances.
    
    This patch resolves RHBZ#639405

commit 3ace83d91094ae58d02581bf920737ce4901ba37
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Oct 28 15:19:13 2010 +0100

    Call febootstrap-supermin-helper using the new -u and -g options
    
    Use febootstrap-supermin-helper's new -u and -g command line options to setuid,
    rather than doing it in libguestfs.
    
    This resolves an issue with the generation of the cached appliance checksum. The
    checksum was being generated by a call to febootstrap-supermin-helper through
    popen(). Unfortunately, a bash misfeature meant that euid would be reset to uid,
    and the checksum was generated for uid, not euid. When virt-v2v is writing to a
    RHEV target, uid == 0 and euid == 36, which resulted in a cached appliance being
    created for root with permissions for uid 36.
    
    Note this requires febootstrap 2.10.

commit dec0148b7b3c5ed398f539401004bab48eb37777
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Oct 28 15:19:12 2010 +0100

    Log the febootstrap-supermin-helper command line
    
    A side-effect of change 17e7cb9937a63ed8f9bb0fb6ac7302758be76846 was the the
    febootstrap-supermin-helper was no longer logged. This change adds it back using
    the new guestfs___print_timestamped_argv internal function.

commit 771d8f16ce5df04df45c07badff0bf04f7143cf0
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Oct 28 15:19:11 2010 +0100

    New internal function guestfs___print_timestamped_argv
    
    This function generalises the existing print_cmdline used to output the qemu
    command line to output any given command line, and exports it to other modules.
    It also adds a timestamp to the old print_cmdline output for consistency with
    guestfs___print_timestamped_message.

commit 46107d001bce3682e5c52164f56c3ed1647d599c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 28 13:41:12 2010 +0100

    list-filesystems: Use core list-filesystems API (RHBZ#642933).
    
    Change virt-list-filesystems to use the core inspection API
    instead of the deprecated Sys::Guestfs::Lib::get_partitions
    function.

commit 1e936b73b59b95b3f9cbc4d62415f7c662118c25
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 28 13:40:23 2010 +0100

    Sys::Guestfs::Lib: deprecate get_partitions (RHBZ#642933).
    
    However the code is left since this function is used
    by virt-v2v amongst others.

commit 70454f8b3ba772572269d721cbd1c00305245119
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 28 11:31:23 2010 +0100

    inspector: Rewrite virt-inspector (RHBZ#642930).
    
    Rewrite virt-inspector:
    
     - remove old and unsupportable features
     - use the C inspection API
     - don't run programs from the guest
    
    The RNG has been updated to reflect the new XML-only output.
    
    The new example files show the new XML output.

commit 7db8ba592217e0e12afd8917f7c86d49b9b60ef9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 27 16:06:11 2010 +0100

    tools: Use C API for inspection (RHBZ#642930).
    
    Update the following tools to use the C API for inspection:
    
     - virt-cat
     - virt-edit
     - virt-ls
     - virt-tar
     - virt-win-reg
    
    None of the tools in the tools/ directory now use the deprecated
    Perl inspection APIs.

commit d4b41d89b55923ca46ad12dd3976ed09ab2f6da7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 27 16:47:33 2010 +0100

    New API: inspect-get-windows-systemroot to get systemroot.
    
    We are already using heuristics in the C inspection code to
    determine the Windows %SYSTEMROOT% directory.  This change
    just exposes this information through the API.

commit 69631356c9872b2e557673907250ac6d6af4e0ce
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 27 15:47:45 2010 +0100

    Sys::Guestfs::Lib: deprecate inspection functions (RHBZ#642930).
    
    Deprecate the guest inspection functions in this module, remove
    documentation, and point users at the core API functions instead.
    
    However we will keep the code here since it is used by virt-v2v
    and virt-inspector.

commit 5f216ef6a593b8a88f80879a2e20183ac3a852c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 27 14:51:17 2010 +0100

    daemon: Fix /dev/mapper paths from mounts and mountpoints (RHBZ#646432).
    
    Make the LV paths returned by these two commands canonical.

commit a2e90585ade4c1d7545e5085916b5b4873b4f528
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 28 11:58:56 2010 +0100

    edit: Clean up tmp file handling in virt-edit.
    
    This was probably not a security issue, but this change
    makes the code cleaner by not opening the tmp file twice.
    
    Also be more careful about error checking in close syscall.

commit ff78dd5642c095783a9074e1e162068bb4aa3e19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 27 17:32:21 2010 +0100

    doc: Warn about security implications of running commands.

commit bc5e6a0c7f4803fe65db2b471095f4810a82c6c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 27 15:33:35 2010 +0100

    virt-ls: Small fix to documentation.

commit 009b34e040f33130dc61000e9cbeb2b5cb30b980
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Oct 28 15:15:07 2010 +0100

    Remove ocaml/.depend from git.
    
    ocaml/.depend is automatically generated. This patch removes it from git.

commit 059ee1e68d75ad79d9e38c4747df1c8809e454ba
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 27 12:21:02 2010 +0100

    Version 1.5.24.

commit d6bd9842f1d5f50be9b72b5f07e9218c6423b60b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 27 12:17:26 2010 +0100

    Disable test for RHBZ#576879 comment 5.
    
    This test has started to hang, for reasons we don't understand.

commit 6235af35e382a171e5e91003a882981c38e13a75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 26 15:28:28 2010 +0100

    Unify guestfish and guestmount options processing (RHBZ#642932).
    
    In guestfish, factor out the processing of the options -a, -c,
    -d, -i, -m, -n, -r, -v, -V, -x into a separate set of files:
    options.c, options.h, inspect.c, virt.c.
    
    Change guestmount so that it uses these same files (from the
    ../fish directory) to process the same options.
    
    This unifies the handling of these options between the two programs.
    It also adds the useful inspection feature to guestmount, so you
    can now do:
    
      guestmount -d Guest -i --ro mnt/

commit eaffa763f437481eb030b95ebc953cb961765765
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 26 13:01:47 2010 +0100

    df: Add --uuid option to print guest UUIDs instead of names (RHBZ#646821).

commit 5afd048a9fefa97d64d5509d93bf0c695fa1983d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 26 12:46:26 2010 +0100

    todo: Remove obsolete items from TODO file.

commit f9dca09164e2b092392a5b210e8561696f2dacde
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 26 10:44:11 2010 +0100

    Document problems mixing mkmountpoint and umount-all (RHBZ#599503).

commit c0bcb9b0e682008ed30b67971c78e1b79e8c9cca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 26 10:04:56 2010 +0100

    appliance: Repo name is not Fedora-specific.
    
    The --with-repo parameter is also used by Debian to specify
    the Debian software repository, so remove references to
    Fedora.

commit e229accb831388f6fa2eabf9974372dc516a2620
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 26 10:03:50 2010 +0100

    appliance: Remove repo from appliance filename (RHBZ#638901).
    
    There's no need to have the appliance filename contain the
    repository name it was built from, and this change gives
    downstream users more freedom to mix and match libraries
    and appliances if they want to.

commit bb4d946e8b7c6e4c60c6e571f2015a5f8eee53d1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 26 09:56:55 2010 +0100

    inspection: Ignore floppy disks and CD-ROM drives (RHBZ#642929).

commit 148c23b7d6f4016075f84f65301d2358166e26f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 25 13:22:17 2010 +0100

    Enable autosync by default.

commit 89f298aa32fbc3167cffdd2eb4116be2246bebdf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 25 12:59:50 2010 +0100

    /dev/mapper paths should not be returned from C inspection APIs (RHBZ#638899).
    
    With this patch, /dev/mapper paths do not appear in the output
    of guestfs_inspect_os, as you can see from this example:
    
    Welcome to guestfish, the libguestfs filesystem interactive shell for
    editing virtual machine filesystems.
    
    Type: 'help' for a list of commands
          'man' to read the manual
          'quit' to quit the shell
    
    Operating system: Fedora release 13 (Goddard)
    /dev/vg_f13x64/lv_root mounted on /              <--- NB
    /dev/vda1 mounted on /boot

commit d65803c323ce81fd739d888bbcc97c6390699557
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 25 12:52:49 2010 +0100

    New API: lvm-canonical-lv-name: make LV name canonical.
    
    When logical volume names appear in places like /etc/fstab
    files they can have the form "/dev/mapper/foo-bar".  This
    function takes such names and makes them canonical.
    
    Note that this operation cannot be performed using the current
    API, because 'guestfs_stat' does not work on device names, and
    we don't really want to make a 'stat-device' call since that
    exposes too much non-useful detail about the appliance.
    
    With this patch you can do this:
    
    ><fs> debug ll /dev/mapper
    total 8
    drwxrwxr-x  2 root root   4096 Oct 25 12:51 .
    drwxr-xr-x 16 root root   4096 Oct 25 12:51 ..
    crw-------  1 root root 10, 62 Oct 25 12:51 control
    lrwxrwxrwx  1 root root      7 Oct 25 12:51 vg_f13x64-lv_root -> ../dm-0
    lrwxrwxrwx  1 root root      7 Oct 25 12:51 vg_f13x64-lv_swap -> ../dm-1
    
    ><fs> lvm-canonical-lv-name /dev/mapper/vg_f13x64-lv_root
    /dev/vg_f13x64/lv_root
    ><fs> lvm-canonical-lv-name /dev/mapper/vg_f13x64-lv_swap
    /dev/vg_f13x64/lv_swap
    ><fs> lvm-canonical-lv-name /dev/mapper/foo
    libguestfs: error: lvm_canonical_lv_name: lvm_canonical_lv_name_stub: /dev/mapper/foo: No such file or directory
    ><fs> lvm-canonical-lv-name /dev/mapper/control
    libguestfs: error: lvm_canonical_lv_name: /dev/mapper/control: not a logical volume
    ><fs> lvm-canonical-lv-name /dev/vg_f13x64/lv_root
    /dev/vg_f13x64/lv_root

commit e227c7f19ca7d4d493004e3f393d435ef1fe024b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 27 10:33:14 2010 +0100

    rescue: Add --network option.
    
    This enables networking in the rescue shell.

commit d0f774bd586fc39e7d963019b863bf796f4d5867
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 27 10:31:41 2010 +0100

    Don't use kernel module whitelist with ext2-based appliance.
    
    Since the ext2-based appliance is cached, and since it is not
    all loaded into memory (as with the initrd), we might as well
    put all the kernel modules in there.
    
    Note the kmod.whitelist.in file is still used for building the
    ordinary appliance.

commit ff01a30373eab8cd9c69cb10d7ed2243c2b0819b
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Oct 27 10:55:24 2010 +0100

    Fix networking in the appliance.
    
    Commit 4963be85 re-introduced networking to the appliance,
    but didn't configure the custom network the appliance expects
    since we switched to link local addressing. This patch
    configures QEMU to use the custom network again.
    
    Note that you still need to use guestfs_set_network (g, 1)
    to enable user networking.

commit 8ae2f58a3582b39555b7cd40b4ff55334a442d2c
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Oct 26 13:54:17 2010 +0100

    Don't include control characters in BufferIn trace output (RHBZ#646822).
    
    The example below shows what the output looks like for a large
    random buffer.
    
    $ guestfish -N fs -m /dev/sda1 -x -- \
        touch /test : \
        pwrite /test "$(dd if=/dev/urandom bs=128k count=1)" 0
    [...]
    pwrite "/test" "\x7f\xa0/\xb3\x80\xd3\xbc\xc3\xc3.\xb1\xe0\x1b\xafC\x06\xd5;\x0ajJ[o\xc1\xdd\xae\x1f\xce\xb2\x8d\xb3\xd0\x11\xcc$%\xe6<\xc7\xc7\xe7BU*\xc4l%\xaa\xea\xe9\x1an\xda]\xc6I\x0eC\xf9;\xec\x12a\x1f\xeaRH\xb2P\xd6+\xc4\xe6\xa5bW\x99\\x9d\xc8\x9bJ\xef\x99-\x16:h5\xe2\x0f\xa2\xa08\x9bU\x0b$\x138\xcf\xd4j\x9b\x83{%\xac0\xdaa1Xx\xbd`\x8e\xdd\x82\x87\x07\x98\xd2\x9ed\x8bq\xd0\x1f5\x8f\xab\xad4z1\xda\xc4b\xc1\xbc\x0f\xaa\xea\xc1\x15(\xfd1\xc2\x0bF\xe6\x9e\xb0+/g\\xab\xb0b\xde_\xca\xf9\xad\xe1?%\x17\xad\x98\xa4e\xc1\xe0f'\x89\xe9>\xff\xadhYi\xe7\x8c]%\xef\xe0\xa1R\xe5\xd5\x03K\xefI\xdf\xad\xd3\x82\xdb\x0f\xdd\xc3\x8f"\xf1G\xea\xf9r\xdd\xff\x88\x81\xb7\xf2\x0e\x0f\x1d;:\xf2F1\xdb\xb5D\xa1^\x928\xf5\x8e)\xab\xc4\xc3H(\xd0ol\xc6\xe4\xd6\xa3L\x1c\x06\xf4"<truncated, original size 130567 bytes> 0
    [...]

commit 07c43a805991f03837e4a7cbcefb9c1000f39f87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 25 12:54:59 2010 +0100

    daemon: Print failed path in stat command errors.

commit 968940a6e0ad7bb05d7eed03735b08e93a61a476
Author: Karel Klíč <kklic@redhat.com>
Date:   Mon Oct 25 12:48:36 2010 +0100

    fish: Fix too-short allocation in tilde expansion (RHBZ#636061).

commit 442112c2b646339587272e5348b28ccd0de609c8
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Sat Oct 23 12:52:35 2010 +0100

    Update Polish translations (RHBZ#502533).

commit f7d8afffc57eb73d8a6935f2fad25adb4bb09f68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 23 10:45:25 2010 +0100

    fish: Quote optional argument name in error message.

commit 554254a8fc8fa55af92739a8acc09519b8f76b1f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 23 10:45:06 2010 +0100

    fish: Reject unknown opt args (RHBZ#642934,CVE-2010-3851).
    
    This updates commit 0c1d3c02a8147617ee0646e37d011235abdd2c22.

commit d9e90a8786cac342bdae2771b8093706d9654749
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 23 10:23:45 2010 +0100

    fuse: Add --format option to docs (RHBZ#642934,CVE-2010-3851).
    
    This updates commit 44c5ee1163918bd5c9e6aa6c292f0c3bb15b7b25.
    
    Document the --format option in the guestmount manual page.

commit 419f9f3d3b275080008d096c5ddfaf59d9e61526
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 22 23:12:16 2010 +0100

    Version 1.5.23.

commit 04e79b3611845b7aa68de1bb1fb6619ba05aac93
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 22 12:48:25 2010 +0100

    resize: Specify format of input, output disk (RHBZ#642934,CVE-2010-3851).
    
    This adds two new options: --format specifies the format of the
    input disk, and --output-format specified the format of the output
    disk.
    
    Requiring the format of the output disk seems a bit strange at first:
    after all, this is the disk that the virt-resize user has to create.
    However it is needed because we sometimes reopen this disk, after
    copying data over the first sector, and in theory a raw-format guest
    could write a qcow2 header here and have it copied to the output
    disk, which we would subsequently reopen.

commit 77c560de2e50ba3a679056c431c705399696a992
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 21 23:33:15 2010 +0100

    virt-make-fs: Specify format of disk (RHBZ#642934,CVE-2010-3851).

commit bcd36a4b9d78f3ac60300fe54860589a7349c9aa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 21 23:06:24 2010 +0100

    df: Specify format of disks (RHBZ#642934,CVE-2010-3851).
    
    The format parameter is taken from libvirt if available, else
    the user should supply the '--format' parameter (eg. for local
    disk files).

commit a0f6933595398e4404c7a22e8545d832b5345dbf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 22 10:59:53 2010 +0100

    tools: Specify format of disks (RHBZ#642934,CVE-2010-3851).
    
    Sys::Guestfs::Lib is changed in two ways: firstly we take the format
    string from libvirt and pass it to add_drive_opts.  Secondly we allow
    an extra format =>  parameter to open_guest which allows the
    format to be specified for disk images.
    
    All the tools are changed to add an extra --format parameter allowing
    the format to be specified for direct disk images.

commit c278af1438d208c2ea7a5609d0adb883fb251208
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 22 15:01:55 2010 +0100

    fuse: Specify format of disks (RHBZ#642934,CVE-2010-3851).
    
    For command line disk images, specify the format using --format option
    in the same way as for guestfish.

commit 04d76e1f3439b3c5d25f725be937b2a57dc746bf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 21 23:05:26 2010 +0100

    fish: Specify format of disks (RHBZ#642934,CVE-2010-3851).
    
    For libvirt guests, the disk format is copied from libvirt (if
    libvirt knows it).
    
    For command line disk images, you can use --format to override
    format auto-detection.

commit e12ef763d02392bcb28a009d682d87cbb5e2e8b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 20 11:34:57 2010 +0100

    generator: Optional arguments, add-drive-opts (RHBZ#642934,CVE-2010-3851).
    
    This large commit changes the generator so that optional arguments
    can be supported for functions.
    
    The model for arguments (known as the "style") is changed from
    (ret, args) to (ret, args, optargs) where optargs is a more limited
    list of arguments.
    
    One function has been added which takes optional arguments, it is
    "add-drive-opts", modelled as:
    
      (RErr, [String "filename"], #required
             [Bool "readonly"; String "format"; String "iface"]) #optional
    
    Note that this function is processed in the library (does not go over
    the RPC protocol to the daemon).  This has allowed us to simplify
    the current implementation by omitting changes related to RPC or the
    daemon, although we plan to add these at some point in the future.
    
    From C this function can be called in 3 different ways as in these
    examples:
    
      guestfs_add_drive_opts (g, filename,
                              GUESTFS_ADD_DRIVE_OPTS_READONLY, 1,
                              GUESTFS_ADD_DRIVE_OPTS_FORMAT, "raw",
                              -1);
    
    (the argument(s) between 'filename' and '-1' are the optional ones).
    
      guestfs_add_drive_opts_va (g, filename, args);
    
    where 'args' is a va_list.  This works like the first version.
    
      struct guestfs_add_drive_opts_argv optargs = {
        .bitmask = GUESTFS_ADD_DRIVE_OPTS_READONLY_BITMASK,
        .readonly = 1,
      }
      guestfs_add_drive_opts_argv (g, filename, &optargs);
    
    This last form lets you construct lists of optional arguments, and
    is used by guestfish and the language bindings.
    
    In guestfish optional arguments are used like this:
    
      add-drive-opts filename readonly:true
    
    In OCaml these are mapped naturally to OCaml optional arguments, eg:
    
      g#add_drive_opts ~readonly:true filename;
    
    In Perl these are mapped to extra arguments, eg:
    
      $g->add_drive_opts ($filename, readonly => 1);
    
    In Python these are mapped to optional arguments, eg:
    
      g.add_drive_opts ("file", readonly = 1, format = "qcow2")
    
    In Ruby these are mapped to a final hash argument, eg:
    
      g.add_drive_opts("file", {})
      g.add_drive_opts("file", :readonly => 1)
      g.add_drive_opts("file", :readonly => 1, :iface => "virtio")
    
    In PHP these are mapped to extra parameters.  This is not quite
    accurate since you cannot omit arbitrary optional parameters, but
    there's not much than can be done within the limitations of PHP
    as a language.
    
    Unimplemented in: Haskell, C#, Java.

commit 0d87f5754493da5b567f00fea09affa97316d8d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 20 10:49:59 2010 +0100

    generator: Rearrange argt logically (RHBZ#642934,CVE-2010-3851).
    
    This structure has accreted over time.  Rearrange the types
    into a logical order.

commit d5f3d2540ff36211c85347869f8259b437d8739b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 22 17:10:49 2010 +0100

    daemon: Use stdint UINT64_C instead of <const>ULL.

commit 74a6861c1e121f3eb1a346427ca6d84b705ed3d5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 22 12:13:07 2010 +0100

    inspector: Add comment about why --fish option implies write mode.

commit 2ba9140346c1ef91b13dd0ed628f7f5f1b5a1c7f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 21 18:47:44 2010 +0100

    php: Create test file properly before running test.

commit 76b4365743ca86bdb7e291d77e8d63e381ab6e5f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 21 18:41:56 2010 +0100

    php: Note that tests are testing the wrong thing.

commit 1615d295801c12b8a97fbaff88852b799e18dd1d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 21 16:39:04 2010 +0100

    ruby: Run tests one at a time, instead of in parallel.

commit 359ef5a5ec7b7e19bacce243233b210ec9690bef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 21 13:59:36 2010 +0100

    generator: Refactor code for Perl bindings.
    
    This simplifies the code that generates the Perl bindings
    by removing repeated sections.

commit 32e3114f69e777d90688998720d9316bde6ee301
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 21 11:59:49 2010 +0100

    generator: Missing newline character.

commit ea633b29c145a819225c0c8819bf687a57aec5a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Oct 21 10:50:25 2010 +0100

    fish: Change 'int argc' to 'size_t argc' throughout.

commit ac607aa2c79b939cff8b3fcf06a9850e6358c036
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 20 13:35:43 2010 +0100

    generator: Remove unused parameter.
    
    generate_c_call_args optional decl parameter is never actually
    used, so remove it.

commit 8437744bb8300cb79194c26471784afdf7ae6731
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 19 15:18:15 2010 +0100

    Version 1.5.22.

commit 824592ab6904cd1abf281a74a62c548d7bd5db0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 18 14:34:28 2010 +0100

    virt-resize: Document guest boot stops at "GRUB" (RHBZ#640961).

commit 01fec9df3551e187de698a408f78d7f71b036ebc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 18 14:18:58 2010 +0100

    df: Correctly quote libvirt domain and filesystem in --csv mode (RHBZ#639986).
    
    This fixes virt-df --csv when used with libvirt domains that contain
    quotes, spaces, commas and other lesser-used characters.

commit 8600fb42bdb4ea6a1b54c5696ea3de01d927baab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 18 13:35:06 2010 +0100

    virt-resize: Document qcow2 output format (RHBZ#642826).

commit 2daa12290a1e7235eac6f23b86968df9385345f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 18 13:33:02 2010 +0100

    virt-resize: List truncate(1) in SEE ALSO section.

commit 034452f4e3e047ace0b8be039530e1e9cac84f34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 18 13:18:20 2010 +0100

    tools: Add section describing quoting libvirt domain names to docs (RHBZ#643624)

commit eaee41c78d361da1e7e460daabd41f5a47460eee
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 18 12:56:54 2010 +0100

    parted: Don't return "loop" for non-partitioned devices (RHBZ#634246).
    
    If you ran part-get-parttype command on a device which didn't
    contain a partition, it used to return the string "loop".  This
    is an internal representation that parted uses.  We should instead
    return an error because part-get-parttype makes no sense for
    devices which are not partitioned.

commit a29096a18edb5afe394c42c0e94fc640720af108
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 18 12:44:08 2010 +0100

    contrib: Note about what needs to be done for visualization.

commit 7290f033c2508b7ef281ef3f0966e59917b51b48
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 18 12:41:41 2010 +0100

    todo: Add wishlist items to to-do list.

commit 3ef273cd63944ee1a854430bd21b631538e8c31e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 6 16:38:12 2010 +0100

    todo: Add note about using blktrace.

commit cafcfa439e2f95e8ef2e568c2d11bc0e52d05746
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 6 11:30:02 2010 +0100

    contrib: More trace visualization.

commit b5d66a723c1b5866483ba789f3750c647cb58de9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 6 10:19:20 2010 +0100

    debug: Add qtrace <device> on|off to allow selective traces.

commit 7ff645770611ff8417a3275b2f43c9ac3954c5ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Oct 6 09:08:39 2010 +0100

    part-disk: Align whole disk partition to 64 sectors.
    
    Change the part-disk command so it aligns the partition to
    64 sectors (instead of 1 or 34 sectors as now).  This should
    ensure that the filesystem contained within is aligned.

commit 66ccba3e13e00409afd15d4ef2609fb409b65a4b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 5 22:48:37 2010 +0100

    contrib: Fix small mistake in README file.

commit 1646246dff3c12f47f865fb688049b8d12b6ede2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 5 22:21:43 2010 +0100

    contrib: Update README files.

commit 5df5e7aa4423c4c8cc993d9f88e7e7327a6deec9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Oct 5 22:19:15 2010 +0100

    contrib: Visualizing block device access and alignment.

commit 3931ac5a0e3914b17ae68a59b5a425c6317fb58b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 4 20:34:36 2010 +0100

    ocaml: Add g#ocaml_handle method.

commit ac445ea87963365dfd1531a946321ce303fb248c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 4 20:33:14 2010 +0100

    ocaml: Document g#close () method for objects.

commit 5921a59de156111176e07ebb588752617230de05
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Oct 4 20:29:05 2010 +0100

    ocaml: Create the handle when the object is instantiated.
    
    Previously we had only one handle shared between all objects .. oops.
    This fixes commit 67636f721056d2f2250b0ff8acd981a0294536a9.

commit 30ac71e5337515cddacae09b6ebeeaed4e03cf71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Oct 3 21:18:25 2010 +0100

    ocaml: Add alternate object-oriented programming style.
    
    In original style:
    
    let () =
      let filename = Sys.argv.(1) in
      let g = Guestfs.create () in
      Guestfs.add_drive_ro g filename;
      Guestfs.launch g;
      let roots = Guestfs.inspect_os g in
      print_endline (Guestfs.inspect_get_product_name g roots.(0))
    
    The same code in the new OO style:
    
    let () =
      let filename = Sys.argv.(1) in
      let g = new Guestfs.guestfs in
      g#add_drive_ro filename;
      g#launch ();
      let roots = g#inspect_os () in
      print_endline (g#inspect_get_product_name roots.(0))

commit a3d9db712985bd286cd9d9c1e2f77dec46ac6b6f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 2 09:10:22 2010 +0100

    test-copy: Skip this test if /dev/fd is missing, because of broken mock 1.1.4.

commit 94b3eccdf48aa83b8c54b8a009f4fafa0d63f573
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Oct 2 09:07:42 2010 +0100

    test-virt-resize: Skip this test on 32 bit hosts.

commit e15f1431f0ea2a795522ce5396f68ea0d95b4b30
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 1 21:04:07 2010 +0100

    Version 1.5.21.

commit 125c751ba916912e4c0707f0be5c42c2c44f6d9c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Oct 1 10:46:38 2010 +0100

    fish: Fix glob command (RHBZ#635969).
    
    This is a fix for the glob command in guestfish which was inadvertently
    broken in commit c359347dd42c9f5b875630537ee3641264826b89.
    
    This also appears to fix:
      https://bugzilla.redhat.com/show_bug.cgi?id=635969
      glob echo mkfs ext2 /dev/vd[b-t]1 prints garbage

commit e4cb389ab5eb017a96c11759b4e5c21b18e889f0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 27 17:06:14 2010 +0100

    Add test for virt-resize.
    
    This tests a number of things which have caused problems for us:
    
     - resizing PVs and LV content
     - handling GPT format disks
     - using qcow2 as a target disk format
     - shrinking disk images
    
    Note that the disk content is empty (not a real VM), but this is
    adequate since all we want to test are the operations and calculations
    done by virt-resize.  We are not interested here in whether e2fsprogs
    and LVM actually works.

commit 8a688c8781f2ecb9be27f8c1ff10ce88c45250c8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 27 17:00:45 2010 +0100

    resize: Fix handling of GPT and qcow2 (RHBZ#633766, RHBZ#633096).
    
    Previously we copied the bootloader data directly from the
    source disk image to the target disk image using host file
    operations (before launching libguestfs).  This has two problems:
    firstly it has no chance of working with qcow2, and secondly
    it didn't behave properly with GPT.
    
    This changes the code so that everything is done through
    libguestfs.  Block device sizes are now calculated properly
    for qcow2 (RHBZ#633096) because this is done using the libguestfs
    blockdev_getsize64 call.  The partition table is still created
    by parted, but to workaround a bug in parted this is done before
    copying the bootloader.  Finally the bootloader copy is done
    using the new APIs pread-device and pwrite-device.
    
    Shrinking now works, at least for simple cases (RHBZ#633766).

commit 688404df9a1cc8a5d4630fb2cf00674b0d0f04ca
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 27 12:00:10 2010 +0100

    New API: pread-device, partial read for devices.

commit 3f92157c6ac1cffc401d341f9f5044c8725db0a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 27 10:51:38 2010 +0100

    pread: Check count and offset parameters are not negative.

commit 95568578bbd05a752af66b35fa10cb7b0f13f1d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 27 10:12:22 2010 +0100

    Freshen POD (manual pages) stylesheet.

commit 24be31f3cc5993c48c87551aac5ca0bd684c693c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 26 22:41:24 2010 +0100

    Version 1.5.20.

commit e660e24e6af4c354f656b137f54d10e6b0d83306
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 26 18:00:11 2010 +0100

    New API: pwrite-device
    
    This is the same as the existing 'pwrite' API call, but allows you
    to write to a device.

commit 2a771bd5ef2e31cc54165b0dfa01e1be3246ecfa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 26 17:59:50 2010 +0100

    pwrite: Check offset is not negative.

commit db54f832bdf63ecdd0394ef6bbb5fe18388070d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 26 22:21:10 2010 +0100

    fish: Refresh guestfish documentation.

commit 1c070aec87bd2fb87e819d5e24dc0bad44244ac2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 26 19:34:46 2010 +0100

    Document ambiguity between devices and paths in API.

commit 3b0daace51026e82710bd896bcf51ca8ecddafac
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 24 19:28:01 2010 +0100

    Document accurately how supermin appliance uses /tmp as a cache.

commit c08054d28038a3193756cdba62c0592a419b4622
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 24 18:54:37 2010 +0100

    Allow $TMPDIR to override most temporary directory uses.
    
    Be more consistent in allowing the user to override use of the
    temporary directory by specifying $TMPDIR.  Also prefer P_tmpdir
    macro (defined in <stdio.h>) if that is defined, rather than
    hard-coding "/tmp" for the fallback location.

commit c16672088a628bcee33781b7629934a962542007
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 24 18:53:21 2010 +0100

    Call blockdev --rereadpt then udev_settle after sfdisk commands.
    
    This updates commit 956fc5a3feacc970ea763697bf28fb686c875408 so
    that we call udev_settle after rereading the partition table.  This
    ensures that the devices nodes for the new partitions have been
    created.

commit 13c7c9f58f2b823eb1399fa2274b012cf923ea6c
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Thu Sep 23 18:11:35 2010 +0100

    Update Spanish translations (RHBZ#636918).

commit 20e80fc30a283326730058cb1a648317ddaab45c
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Thu Sep 23 14:45:50 2010 +0100

    Update Polish translations (RHBZ#502533).

commit ba6cba408d36094a58a2df64513ad253aa3f4b2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 22 21:50:46 2010 +0100

    Version 1.5.19.

commit 10d01dcb0286018feff1bca78fc8e572e2238dbd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 22 17:43:34 2010 +0100

    regressions: Test just-built guestfish.
    
    Instead of testing the installed /usr/bin/guestfish.
    
    This fixes commit ddda0f7bd00a37274dae38f4ce93955b8cfdf7d7.

commit c0e6d6c376f64da7050c17516df049293606bdc7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 22 16:35:52 2010 +0100

    Call blockdev --rereadpt after sfdisk commands.
    
    On fast machines sfdisk has some sort of race where it
    fails to re-read the partition table it has just created
    (it's not clear if this is a race in sfdisk, the kernel or
    some other component).
    
    This commit works around the problem by calling
    blockdev --rereadpt after sfdisk operations, which
    experience shows is enough to stop the problem from
    happening.

commit 106e0a1e0af411add25aebba2e8b88e6f8524225
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 22 15:37:34 2010 +0100

    Version 1.5.18.

commit f921515905146dffa3487e799d6e50123ee6bdfa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 22 14:10:58 2010 +0100

    Test guestfish -a and guestfish -d options.
    
    Since these options were both broken in released version 1.5.17,
    best to have a regression test to catch this in future.

commit 87c244db93d33600e93f6d2129f372eaf19099f6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 22 14:10:13 2010 +0100

    appliance: Ignore unreadable dbus service file (Fedora 15).

commit 12ba38ad204619e62c0d7aa10e17fedfaa39c534
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Sep 22 11:59:58 2010 +0100

    fish: Fix segfault in free_drives() function.
    
    This updates commit 8ea62c8d7f3f7f7e4057b93105cf979271aa13f4
    so it doesn't try to free the optarg (stack-allocated) strings.

commit cc8975eb8698534bf20fa208a39b83a2a3f7fcdd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 21 21:57:50 2010 +0100

    Version 1.5.17.

commit 5956aa37b46710198342c5fa163714b213e2c961
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 21 22:49:18 2010 +0100

    Update release notes for new features in 1.5 branch.

commit 9c2cd2b33159c3db9a3581b92eba175e6c7f3cd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 18 10:09:04 2010 +0100

    fish: Implement 'hexedit' command.

commit bcdf22c949ebaca2441db8456efc738d724dd6ad
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 20 18:23:58 2010 +0100

    New APIs: upload-offset and download-offset
    
    These APIs allow you to efficiently write and read parts of
    files or devices.

commit c7f60de2b76b39011e0779ffa28f95f9eb54243a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 21 19:49:08 2010 +0100

    leak: Clear history before exiting guestfish.
    
    Clear the in-memory history before exiting.  This removes
    some but not all memory leaks associated with using the GNU
    History library.  As far as I can tell it is not possible to
    free up everything used by GNU History.
    
    (Found by valgrind).

commit ffa229a748ab04e2c0f492cfbff77aab36d1e190
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 21 19:40:23 2010 +0100

    leak: Free list of drives and mountpoints in guestfish.
    
    Previously the list of -a, -d, -m, -N parameters were leaked.  This
    change frees them explicitly.
    
    This is not such an important fix since guestfish is a one-shot
    program, but it aids in finding other leaks in future.
    
    (Found by valgrind).

commit fb30374115e17e1d48c153b778f1302e1b1092e2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 21 19:38:50 2010 +0100

    leak: Free PCRE regexps when library is unloaded.
    
    The compiled PCRE regexps used for inspection were being leaked when
    the library was unloaded.
    
    (Found by valgrind).

commit f5aaab0cdf3a4d1b115b1c33cdd4b411ff85628f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 21 19:37:24 2010 +0100

    leak: Appliance name was leaked during guestfs_launch.
    
    This frees the string containing the name of the appliance
    which was previously being leaked during launch.
    
    (Found by valgrind).

commit af38b4c19ae8df17cfd040bb19fc3e40e62ab7b6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Sep 21 13:22:58 2010 +0100

    Add more exclusions to .gitignore.

commit c25f00ed43de89ef6fb7d1b6693f6c0fbd513990
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Sep 21 10:50:41 2010 +0100

    Fix appliance build dependency problem
    
    The appliance was being completely rebuilt every time guestfsd was updated. This
    was because make.sh depended on guestfsd, which it had to do because it
    called update.sh to install guestfsd.
    
    This fix removes the call to update.sh in make.sh, and therefore the dependency
    on guestfsd. The Makefile already includes a rule to run update.sh when guestfsd
    is updated, so this was unnecessary.

commit 4e04834917e10bc1fa3de7dc5228685221c22964
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Sep 21 08:53:44 2010 +0100

    fish: Add --echo-keys option to allow passphrases/keys to be echoed.
    
    See also:
    http://catless.ncl.ac.uk/Risks/26.17.html#subj13.3

commit 4aa97428075dd04c79b203fe3392c0bd8ec02115
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Sep 19 15:55:46 2010 +0100

    df: Add --one-per-guest option for using one appliance per guest.

commit cf1112f7a33e0d7fd44e4b6d0959c9e290487cb0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 20 14:02:06 2010 +0100

    Fix error launching libguestfs when euid != uid.
    
    When writing to a RHEV target, virt-v2v launches the libguestfs
    appliance with euid:egid = 36:36, which is required to write to
    an NFS target using root_squash.
    
    Since we changed to using a cached appliance, this causes an error on
    start up, as the cached files are owned by root, but the cache directory
    is owned by 36:36.  The reason is that bash resets euid to uid and
    egid to gid so when febootstrap-supermin-helper is executed, it runs as
    root:root.  The cache directory was created by libguestfs directly so
    it has the correct ownership.
    
    This patch fixes the issue by using explicit fork/exec instead of
    system (ie. not going via a shell) and by setting the real UID and
    GID to the effective UID and GID before execing.

commit 1a3abd696992cbf145adb35445c8107da1304e4f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Sep 20 13:06:13 2010 +0100

    todo: Suggest removing repo name from appliance name.

commit 14b708fd07fee1357ecffbe562c215dbe46ab289
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 18 09:38:05 2010 +0100

    generator: Generate guestfish-only commands.
    
    The guestfish-only commands such as 'alloc' and 'edit' are
    now generated from one place in the generator instead of being
    spread around ad-hoc in the C code.

commit 177a3e9757e188618862dade6c0606a02fab5413
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Sep 18 08:57:30 2010 +0100

    fish: In guestfish(1) turn command references into links.

commit cf24cce5318c068afbdf35d98279bff138cf2345
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Sep 17 14:35:43 2010 +0100

    fish: Correction for online help for 'edit' and 'more' commands.
    
    This corrects commit b5c287bcd456bdb02d8ec0443483df34f4fd6b5d
    and commit 639ca1828b167bf59353f0cd3c8c79c6289bbd5d.

commit 7d02860a5f0dddbc70638b2c5f2ea41745d53c56
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 15 22:12:35 2010 +0100

    Version 1.5.16.

commit 046a09a3ec66157d9afcd88b7f4492ad3a742f8c
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 15 22:08:35 2010 +0100

    configure: Make "fedora-13" the default repository.

commit fa25c1a46fab361f837fd0178247f8f904981680
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 15 21:47:37 2010 +0100

    fish: If -m option fails, suggest a mountpoint.

commit f5557efe754b9c5ae1316f0c557657db572391fc
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 15 20:49:32 2010 +0100

    todo: Remove section since we now have list-filesystems API.

commit ac88268ba9202b1c0488ea7034e102b30c8d590a
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 15 20:35:06 2010 +0100

    Version 1.5.15.

commit 5f5b2849c29c799837e1371c5db4b9c4faef9a41
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 15 17:22:29 2010 +0100

    New API: list-filesystems: list filesystems
    
    This API is a simpler replacement for the guestfish commands
    list-devices / list-partitions / lvs, in the case where you are
    just examining a guest by hand to see what it contains.
    
    Typical usage and output in guestfish is like this:
    
    $ guestfish --ro -a /dev/vg_trick/F13x64
    ><fs> run
    ><fs> list-filesystems
    /dev/vda1: ext4
    /dev/vg_f13x64/lv_root: ext4
    /dev/vg_f13x64/lv_swap: swap
    
    It can also be used to replace programs that try to mount
    devices to determine if they are mountable filesystems.

commit 4f3c86ca34e531508ea732ad7f8e068a3a652fd6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 15 16:39:36 2010 +0100

    New API: part-to-dev: Convert partition name to device name.
    
    This adds a formal API for going from a partition to the containing
    device, eg. /dev/sda1 -> /dev/sda

commit da910e09e7d99c93728b70d0facc7c07a9ce0b68
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 15 17:15:44 2010 +0100

    generator: Add TestOutputDevice.
    
    This is for testing functions that return a device or partition
    name, so that we can compare the return value with the canonical
    device name (eg. "/dev/vda1" == "/dev/sda1").

commit cf8614e752c25e99590f66db5b6782d71ed31f1e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 15 16:37:24 2010 +0100

    todo: More use of libblkid.

commit 6c56f2ef3d474306e93d44456364557c4521edb6
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Sep 14 22:29:08 2010 +0100

    fish: In usage message use new-style -i option syntax.

commit 8c2651283f5fc00e42e4506398770fb455e70b9a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Sep 14 22:28:10 2010 +0100

    fish: Update copyright dates in usage message.

commit aa6cec8e404c19f50b15cde0f3bcc8540093efbb
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Sep 14 22:27:06 2010 +0100

    fish: Remove extraneous space from usage message.

commit aca42f5c16d2c69ef7cbac2f76d63312c8980f26
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Sep 14 22:17:24 2010 +0100

    todo: More ideas.

commit 6cbbac31fb9bd678d9560fdd2b82f83baa63ae94
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Sep 14 13:29:59 2010 +0100

    Version 1.5.14.

commit 4337a3a45d702d2653ebe4a3735ee334a9706e55
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Sep 14 12:24:54 2010 +0100

    configure: Check for virtio-serial support in qemu.
    
    All other vmchannel methods are obsolete, but we were still trying
    to check for them.  This replaces all of them with a simple check
    for virtio-serial.

commit 5d2f6ce80c72b858c51bab7adb47e2927aa29df6
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Sep 14 12:24:12 2010 +0100

    pardus: Check for cpio in configure.

commit 29e7b45c2bf23f41a7e988ce7716c9c67b7cfeab
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 13 19:06:39 2010 +0100

    Update Spanish translation (RHBZ#633357).

commit c0784812272ec8b997dfab01f0c1c5d93b973fb1
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 13 16:01:53 2010 +0100

    build: Add run-test-tool-locally to EXTRA_DIST.

commit 7649c0cf4491395350cdf4bd212dae6d27fc01e5
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 13 14:47:43 2010 +0100

    Version 1.5.13.

commit 65a49a7240b8bbafdd0338794d3ea16055796fd1
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 13 14:49:16 2010 +0100

    appliance: Disable setting scheduler to noop.
    
    This is a workaround until
    https://bugzilla.redhat.com/show_bug.cgi?id=630583
    is fixed (bug in Linux 2.6.36).

commit 939e1619978e5cf4546016b49b348a0260324c9b
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 13 14:45:18 2010 +0100

    ubuntu: Remove bogus debirf file.

commit fc6857c71c238675f96b8011fb4173358c48cfe0
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 13 14:44:46 2010 +0100

    ubuntu: Add linux-image to the packagelist.
    
    It seems that linux-image (ie. the kernel) is omitted in some
    versions of the base packages.

commit 60b5781e686f83fe8d68fdd0f6cc3547ddee59bf
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 13 14:44:05 2010 +0100

    ubuntu: /proc can be a symlink
    
    If it's a symlink then the succeeding mount commnd will fail.
    Remove it and make a /proc directory.

commit 26128c6404f2f9dd05d62df54876a9981030616b
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 13 14:42:47 2010 +0100

    build: 'make quickcheck' rule now uses new run-test-tool-locally script.

commit a9a60f56747add73f8e7666685b97508e2081fb0
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Sep 11 17:16:22 2010 +0100

    build: hivex is required.
    
    hivex library has been required since we moved the inspection
    code to C.  Check for this in configure.ac.

commit 7ebf831a58ea6014f6b5b436b1cb356594b5bd4c
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Sep 11 13:14:45 2010 +0100

    Version 1.5.12.

commit b292524a51be139c59b3d1cc1c3d0b343f9c6128
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Sep 11 13:41:26 2010 +0100

    build: require Augeas for library.
    
    Augeas has been required since we moved the inspection code to C,
    however we were not correctly enforcing this in configure.ac, nor
    correctly linking to the library until now.

commit b72cdff8fb30454bde72f2996c42bfeb88fcd8b7
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Sep 11 13:20:59 2010 +0100

    generator: Provide no-op generator if no OCaml compiler.

commit 07afd1ee1a4749bdcb17e1aa119e1b30aafe46c6
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Sep 11 13:14:04 2010 +0100

    build: Don't distribute src/generator.ml, no longer exists.

commit 6eee8038f79c15938285d98ed6d2d9674307dc5a
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Sep 11 12:19:25 2010 +0100

    generator: Calculate MD5 of test.iso at runtime.
    
    Because this used to be compiled into the C test, it changed
    every time the ISO was rebuilt (which because of Makefile deps
    was every run).
    
    Now it is calculated at runtime so the C test file doesn't keep
    changing.

commit e6540a21d0ffa8bec749fc809d7a585f33574460
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Sep 11 12:05:03 2010 +0100

    generator: Don't use real uuidgen for UUIDs.
    
    This was one reason why capitests/tests.c changed every time the
    generator was run.

commit 222e3f8dfc2db90904a510438a0452f0e7f5ce72
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Sep 11 09:25:12 2010 +0100

    Split generator into separate source files.
    
    'src/generator.ml' is no more.  Instead the generator is logically
    split up over many different source files.
    
    Read generator/README for help and tips.
    
    We compile the generator down to bytecode, not native code.  This
    means it will run more slowly, but is done for maximum portability.

commit 70b04fbbce90ff47584eeaa017099e951f77b454
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Sep 11 08:11:43 2010 +0100

    syntax: Replace -a and -o with && and || for portability.

commit 690789602788e2c3d2cf1fc5200c3d4ceb9a9f1f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 23:00:07 2010 +0100

    syntax: Use exit (EXIT_SUCCESS) instead of hard-coded number.

commit ba2b0522c30e080dc989f447f924a7883046aff4
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 22:55:32 2010 +0100

    syntax: Remove unused assert.h header.

commit 1ef4538e55adf94e2a4316cebef7154efbfc7f84
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 22:55:03 2010 +0100

    syntax: Remove unused ignore-value.h header.

commit b2a74d74203c9719d5430e851bd0f73a959a1662
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 22:54:30 2010 +0100

    syntax: Remove unused signal.h header.

commit ebc7b0145c5be627023b4068bb6dcd3b0b8cf303
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 22:53:56 2010 +0100

    syntax: Remove unused c-ctype.h header.

commit 85d0853b41ce539dbe477b3a87f941f6dfafd345
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 22:56:22 2010 +0100

    syntax: Fully bracket m4 macro arguments.

commit 94e179d80b1f6a20435e919fb077fe679b160aa3
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 22:52:50 2010 +0100

    syntax: Remove trailing spaces.

commit 24657bcee6d95b7966bc21da21109e02b1603585
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 22:57:10 2010 +0100

    syntax: Use spaces instead of tabs for indentation.

commit 586b8ed9eabfaf944bf126f29825051292f0764f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 22:51:39 2010 +0100

    syntax: Replace _prohibit_regexp with _sc_search_regexp.

commit 24552522ae880081ed3caccebb5f13ca8fcbe5a7
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 13:26:10 2010 +0100

    fish: glob should only print commands when trace mode is enabled.

commit 549823b368dfb93b816b4fdaab4160cfa12b74cb
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 13:25:40 2010 +0100

    fish: Add regression test for copy-in and copy-out.

commit 5d207b436efef1a5c2878926ab1960ad2ff0f558
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 12:01:03 2010 +0100

    README: Document virtio-serial is now the only vmchannel.

commit 5f8d72b100573166c4f265fb0330b562d11a2e0b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 11:53:46 2010 +0100

    fish: const-correctness fixes in copy.c

commit 8a7f4f19f6a2d2d81e8d30d284f7869c8e2c4497
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 10:29:46 2010 +0100

    Version 1.5.11.

commit 4746a20914f795a8a6711154eac7da44759af314
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 10:28:51 2010 +0100

    Update OCaml dependencies.

commit 2da897d70ee0d7a1c33238fd3d907e2aea804622
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 10:28:37 2010 +0100

    Update PO files.

commit 835281c69c9db9bfaa8cf7780d153a95eb23c82f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 10:27:45 2010 +0100

    fish: Fix 'copy-out' command when local directory is "/foo".

commit 8021acd8cea0a2b333a6edd52c2c35cf4c8485bb
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 10 00:02:56 2010 +0100

    fish: Fix typo in documentation of copy-out.

commit 136a9fc723a8c0b8a3a6e71d93b8629c1c289660
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 23:25:37 2010 +0100

    Version 1.5.10.

commit 179fcc3400e510da583311a8d06f5d585f454a6a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 23:25:23 2010 +0100

    todo: Remove discussion of copy-in/copy-out.

commit 0757b9738b48bede5207005a81ddeccfe9b73e9d
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 18:49:10 2010 +0100

    fish: Implement copy-in and copy-out commands.

commit a329f06c76d5cb05f81e78cc3815a54039184f83
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 22:43:32 2010 +0100

    New APIs: is-chardev, is-blockdev, is-fifo, is-symlink, is-socket
    
    These complement the existing is-file and is-dir APIs.

commit 02f3c7f7fb7842d4b148f4e9acdb19a42296956f
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 22:20:28 2010 +0100

    daemon: Move 'exists', 'is-file' and 'is-dir' to separate file.
    
    This commit is just code movement.

commit 99fdac617404973b0df722dd4c78f1a672b951db
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 22:42:57 2010 +0100

    generator: Fix incorrect shortdesc in docs for 'is-dir' command.

commit 77041b419377dec5bed4bc48624fa8bedcd973ec
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 22:42:26 2010 +0100

    generator: Fix documentation for 'is-file' command.

commit d13c23d44ddb440feb30ff288c1b0423eefc322e
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 14:11:32 2010 +0100

    fish: Fix 'more' command to work with any file.

commit 63d76b3cf1815f21cc94220a8414b8083791f846
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 14:11:20 2010 +0100

    fish: Fix 'edit' command to work with any file.

commit c69ef3f39f09b2ed5a3a12e9c8817d88bcbaad3d
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 13:53:08 2010 +0100

    guestfs: Reference guestfs-browser architecture in threads documentation.

commit 7d1242e836b042cd45cef8ec538a3cfa0d3f426f
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 13:52:48 2010 +0100

    guestfs: Document progress notification messages in protocol.

commit 4f925d9fa17a544951d2a0184029e1486960b014
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 13:52:32 2010 +0100

    guestfs: More accurate documentation for initial message.

commit 3a5e46bc730c03d8cee4628d9178cf2a21ca1e36
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 13:51:52 2010 +0100

    guestfs: Remove traces of documentation for non-existent 'low-level API'

commit 82711ad5c4a602d685dd03b3e71c541fc2da6ea2
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 12:00:36 2010 +0100

    guestfs: Fix typo in man page.

commit bef1ad81bab44c8a6b9f57297397c6bc95cbc0f6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 9 13:40:45 2010 +0100

    todo: Notes on virt copy command.

commit 33f32d6063b57d3a9079aeb5d794db56b1073c4d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 8 17:50:44 2010 +0100

    Bring TODO file up to date.

commit 8c0ed9194362e3e17adbd2c8fdacaf672df35e19
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 8 11:03:10 2010 +0100

    Version 1.5.9.

commit 4ad385f8b5bf5095048c6f84596577edaa6ede64
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 8 11:00:00 2010 +0100

    fish: Add guestfish -N bootroot and -N bootrootlv for creating boot+root disks.

commit 07c89596ea8d2275ca38a85cc14e3dde4b630ba7
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 8 10:24:01 2010 +0100

    fish: Add guestfish -N lvfs for creating formatted LVs.

commit c7192d92775acb601cb3b65d03558b95d63f9cd5
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 8 09:58:37 2010 +0100

    fish: Add guestfish -N lv for creating disks with LVs.

commit 83ef701f32a034a3fd97ac4626818afd783a4471
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 8 10:23:28 2010 +0100

    fish: Improve appearance of guestfish -N help output.

commit f5bd06ed702c6311593dbe8a282a4e8b40a28b1e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 8 09:37:22 2010 +0100

    fish: Allow guestfish -N help for listing prepared disk image help.

commit 5b7a1919b518340c5bc5cd64462b0a6747b86423
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 8 09:05:18 2010 +0100

    fish: Generate list of prepared disk image types.
    
    This commit shouldn't change the semantics of the code.

commit 437327d9ca73b01763e8e7e86f37b91d1358e4af
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 6 10:13:31 2010 +0100

    test-tool: Add a 'run-test-tool-locally' script.
    
    This can be used to run the test tool without installing it.
    It sets the environment variables and command line arguments
    up correctly to run the tool from the build directory.

commit 09604d0a1330f22b481f4a87be09a0a2ead8a033
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 6 10:04:01 2010 +0100

    appliance: init script does 'ls -lR /dev' (verbose only)
    
    It's useful to see what files are in /dev subdirectories
    at boot, eg. for looking at virtio-serial ports.

commit 207f8e3117855372db86d17345c6890360aeddb3
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Sep 6 10:03:38 2010 +0100

    daemon: Don't warn about 'long long' usage.
    
    This removes a fatal warning (-Werror) which stops compilation
    on 32 bit machines.

commit 89e7e679407b5c68a29882d34d2dff6bef58890f
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Sep 5 16:51:45 2010 -0400

    php: Remove 'make clean' rule in subdirectory.

commit d823f6333e7d33e93d408cb86e736a8870d4c4d2
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Sep 4 12:45:42 2010 +0100

    Version 1.5.8.

commit a0bbb05a4dfc381f52cdc0378ee67ca262d9bdd2
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Sep 3 12:15:00 2010 +0100

    PHP bindings.
    
    Note that these are not complete on 32 bit architectures.  PHP doesn't
    offer any convenient 64 bit type (on 32 bit).  Therefore you should
    always use these PHP bindings on 64 bit.

commit 916b5399f56d74c8fc4412a44da906b0fa4d96c3
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 2 22:45:54 2010 +0100

    Define LIBGUESTFS_HAVE_<shortname> for C API functions.
    
    The actions each have a corresponding define, eg:
    
      #define LIBGUESTFS_HAVE_VGUUID 1
      extern char *guestfs_vguuid (guestfs_h *g, const char *vgname);
    
    However functions which are for testing, debugging or deprecated do
    not have the corresponding define.  Also a few functions are so
    basic (eg. guestfs_create) that there is no point defining a symbol
    for them.

commit 72634ec8b0746aca6b21622d2bfadbdd4c4ba621
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 2 22:27:35 2010 +0100

    build: guestfs-structs.h was missing from libguestfs_la_SOURCES.

commit c80fbbff8fec97599e213ca4b9c9008a9105bffb
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 2 22:25:47 2010 +0100

    Add full docs pot file.

commit 72aa71bc5f1f5a35ca115f8b14ecdc4f9baa9d58
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 2 14:54:44 2010 +0100

    Allow manual pages and POD files to be translated.
    
    This uses the optional po4a package to split these files into
    PO files for translation, and reassemble afterwards.
    
    Note this creates an extra pot file (po-docs/libguestfs-docs.pot).
    We don't (yet) combine this with the main po/libguestfs.pot file.
    The 'libguestfs-docs.pot' file included in this commit is not the
    real thing, just a short cut down snippet for testing.  The real
    thing is created if you update one of the dependent files and
    rebuild.
    
    Note also the dummy ja.po, for testing the principles.

commit a5c3b090bd8b5abb8131a9a097e4a7bea82b0488
Author: Geert Warrink <geert.warrink@onsnet.nu>
Date:   Thu Sep 2 14:56:36 2010 +0100

    Add Dutch translation (RHBZ#629593).

commit 75a953b52a422a4907a4eac177201d15bed967ed
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 2 12:01:06 2010 +0100

    ruby: Add Guestfs::Guestfs.new() method.
    
    This is a more standard way to create objects in Ruby.  The old
    way was to call the module function Guestfs::create() which still
    works.

commit edf7bc6ddf67468735bcd9d906c2c94664a714fb
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 2 11:11:55 2010 +0100

    perl: Document handle is a hashref.
    
    For details see commit eb566f7dc7974b42ac65729a2e5e5bcee329a0a9.

commit b4addf38cdf1674bc50b0d69ac55191781e79925
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Sep 2 10:58:28 2010 +0100

    perl: Add documentation about testing availability of methods and features.

commit 1695bbe8a4823a06af68b1253e524b358eb79aef
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 1 18:44:33 2010 +0100

    build: Link static -ltinfo into guestfish.static binary.

commit eba212702b7932ded690f72f1545cf76b734188a
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 1 17:12:37 2010 +0100

    Version 1.5.7.

commit 88ddfef1cf7f16ddadd8ae0bd14482ccc259e9d3
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 1 18:10:41 2010 +0100

    fish: Add missing header file to sources.

commit 49a180a492277b5ae156f10c682262254b94d801
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 1 17:12:15 2010 +0100

    ocaml: Add test for progress notification callbacks.

commit d2901550e33c5479361660bbedec1598b6fe3dec
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 1 17:03:19 2010 +0100

    debug: Add 'debug progress' command.
    
    This debugging command generates progress notification messages,
    used for testing purposes.

commit f14776b10f2c33e7035731d429e51eaea25c9737
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 1 15:38:15 2010 +0100

    debug: Arrange prototypes in alphabetical order.

commit f58d3482433576b9277291db04f3eae66e6c5e2a
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 1 15:37:24 2010 +0100

    daemon: Enable debug command by default.
    
    The debug command is useful for internal testing, and so should
    be enabled by default in all builds.
    
    Note that it is still *not* part of the stable ABI.

commit 090150cd733018a9c4bf722cf39766b1583fbde6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 1 13:19:05 2010 +0100

    Consistent use of 'void *opaque' to refer to opaque pointer in C API.
    
    We inconsistently used 'void *data' or 'void *opaque' all over to
    refer to the same thing.  Use 'void *opaque' in all places in the
    published API and documentation.

commit 5cc571fd63b204de50059f998a58fc749cde230c
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 31 20:39:40 2010 +0100

    resize: Add progress bar to virt-resize.
    
    With this commit you will see a plain progress bar during the
    lengthy copy operations, similar to below:
    
    Summary of changes:
    /dev/sda1: partition will be left alone
    /dev/sda2: partition will be resized from 7.5G to 9.5G
    /dev/sda2: content will be expanded using the 'pvresize' method
    Copying /dev/sda1 ...
    [############################################################################]
    Copying /dev/sda2 ...
    [########################################------------------------------------]

commit fc63cca506fb75e2800a0b76243149c85ae6e2e0
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 31 20:14:17 2010 +0100

    perl: bindings to progress callback.

commit f783931aa440070826b906cef7e3923d067c01a3
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 31 17:04:52 2010 +0100

    ocaml: bindings to progress callback.

commit e709504bca365d434b8039a8241ad797d6bc14b4
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 31 18:48:32 2010 +0100

    Implement private data area.
    
    The private data area is a hash table which is associated with
    libguestfs handles, that C callers may use to store arbitrary
    data for the lifetime of the handle.
    
    Later the OCaml bindings will use this in order to implement
    callbacks.

commit 6e5d8a789a869508b268714dfa8c1f501806d081
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Aug 28 12:49:55 2010 +0100

    fish: Implement progress bars in guestfish.
    
    The progress bar is updated 3 times per second, and is not displayed
    at all for operations which take less than two seconds.
    
    You can disable progress bars by using the flag --no-progress-bars,
    and you can enable progress bars in non-interactive sessions with
    the flag --progress-bars.
    
    A good way to test this is to use the following command:
    
    guestfish --progress-bars \
              -N disk:10G \
              zero-device /dev/sda
    
    (adjust "10G" to get different lengths of time).

commit 7e1610db729cdf097ce73e36869dfc6b6b92ded4
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Aug 28 12:48:49 2010 +0100

    fish: Detect UTF-8 output and open termcap/terminfo database.
    
    Provide a generic mechanism within guestfish to detect if
    output if UTF-8 and to open the termcap (or terminfo) database
    for the current terminal type.

commit 7818de077b178711cad4b20261d85e45c090951d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Sep 1 11:54:15 2010 +0100

    Add progress messages to download command.

commit e8ec91d1c96321a1d91742121bfe34edad2f0713
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Aug 28 14:29:21 2010 +0100

    Add progress messages to zero-device command.

commit 3361b83df256c880ee83560056435fcc97e100c2
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Aug 28 14:29:07 2010 +0100

    Add progress messages to zero command.

commit e82889440ce4a2790f5ca7824dba0fe7a38c2daf
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Aug 28 14:28:42 2010 +0100

    Add progress messages to fill-pattern command.

commit 11bfe4912a7fad811f542ad7b5e0971e1469bfe8
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Aug 28 14:28:26 2010 +0100

    Add progress messages to fill command.

commit 6e095c690f40de3c388da4b624f9f5930d50273d
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Aug 28 11:11:32 2010 +0100

    Add progress messages to copy-size command.

commit 2e3677cd90e29c200fab3ac49f0b3cd318fcfaf2
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Aug 28 10:33:24 2010 +0100

    Implement progress messages in the daemon and library.
    
    This implements progress notification messages in the daemon, and
    adds a callback in the library to handle them.
    
    No calls are changed so far, so in fact no progress messages can
    be generated by this commit.
    
    For more details, see:
    https://www.redhat.com/archives/libguestfs/2010-July/msg00003.html
    https://www.redhat.com/archives/libguestfs/2010-July/msg00024.html

commit 2f737aeea11155b1b87fa8232788ae955059de83
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 31 19:25:45 2010 +0100

    ocaml: Remove old entry from .gitignore file.

commit cc8fc865a85e5f3884a00c3040e25c2e8bcadf42
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Aug 27 22:01:23 2010 +0100

    Version 1.5.6.

commit cead8c03fe6fd0798246db5e5309a6381e69aed0
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Aug 27 21:47:49 2010 +0100

    Requires febootstrap >= 2.9.

commit cd27065814cf9069412a570e0028267546bf7a09
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Aug 27 15:27:22 2010 +0100

    daemon: Set O_CLOEXEC flag on the virtio-serial file descriptor.

commit 9daed026300eb720679cd8835247548b810e048b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Aug 27 13:38:49 2010 +0100

    build: Don't add version extra string to the version number.
    
    If this string was non-empty, then it broke a lot of things because
    autoconf and other parts of the build system were expecting this
    string to contain a simple MAJOR.MINOR.RELEASE version number.
    
    This requires changes to guestfish and guestmount so they use the
    guestfs_version API to fetch the version from the library.  (The
    Perl tools were already doing it this way).  In a way this is more
    accurate, because it's no longer hard-coded in the binary, but
    fetched from the dynamically linked libguestfs.so.

commit d072eed0cf31551d772af6fa55afca393bf54086
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Aug 26 16:42:53 2010 +0100

    Update BUGS, PO files.

commit c4fbb683db1fa5f0c821843c188c8f5ccd39b931
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Thu Aug 26 16:40:44 2010 +0100

    Update Spanish translations (RHBZ#627556).

commit 4a3d0d0cd2eb3b8d22b976c40ec9b6257ae5f96c
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Thu Aug 26 16:39:39 2010 +0100

    Updated Spanish translations (RHBZ#626843).

commit e09fe09b07e565af07f8db9955325bb4e2f5a8a9
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Thu Aug 26 16:38:11 2010 +0100

    Update Polish translation (RHBZ#502533).

commit 806b7d8e46b8ff330c673e829ff8bbf8d8bf0ce0
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Aug 26 16:31:40 2010 +0100

    Prepare for version 1.5.5.

commit 09d66dc1f309c6f663f635703864e9cf6a54a606
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Aug 26 15:55:34 2010 +0100

    rescue: Fix typo in comment.

commit 69507dc3fed465c7cf49332d9a3a7d74a4bea3c7
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Aug 26 15:08:20 2010 +0100

    Ignore launch() error in virt-rescue. (RHBZ#618556)
    
    launch() expects guestfsd to start, which it never does in virt-rescue, so it
    always returns an error about the appliance shutting down unexpectedly.

commit 02daa41792391583d4b0f6023f1f47393998df56
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Aug 26 14:34:44 2010 +0100

    Shut down the appliance cleanly
    
    When guestfsd exits, or the user exits the virt-rescue shell, the init script
    exits which causes the kernel to panic. This isn't really a functional issue, as
    all useful work is done by this point. However, it does cause virt-rescue to
    display an unsightly error message.
    
    This patch causes the appliance to power off cleanly before the init script
    exits. Note it actually does a reboot rather than a poweroff. This is because
    ACPI is disabled in the appliance, meaning poweroff doesn't work, but qemu is
    configured not to restart on reboot.

commit 1124ac4c5bbe38759fc8b1c2aeca1ddde7bf4156
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Aug 26 12:11:59 2010 +0100

    Call sync after guestfsd exits
    
    Core files are not reliably written to disk if guestfsd dumps core. This patch
    makes libguestfs do the same appliance cleanup for guestfsd and virt-rescue,
    which seems to fix the matter.
    
    It also removes a redundant sleep and additional sync when exiting virt-rescue.

commit e98d1e958dd655e23e2f6e38567fcaf5a3de2fb6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Aug 26 13:36:10 2010 +0100

    Add a core_pattern debug command
    
    This adds a new debug command, core_pattern, which writes a new pattern for
    coredump files to the appliance kernel, and sets the daemon's hard and soft core
    limits to infinity.

commit 481d9f5ccbec6216a074ac82b2bb5b1e792656f3
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Aug 25 11:53:00 2010 +0100

    Include statically linked binaries in the binary distribution.

commit 9df64bd26a077c4dd590d146c3f0c0765a99b498
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Aug 25 11:41:17 2010 +0100

    Rename global 'xdr_str'.
    
    Two bits of XDR both contained a definition called 'str' which
    means that 'xdr_str' was being exported globally twice.  Because
    of the linker script this didn't affect us.  But it's best to
    rename this global so that conflicts cannot arise.

commit 8b62c5d92c6176eb91446a080db3a17f25516445
Author: Daniel Berrange <berrange@redhat.com>
Date:   Tue Aug 24 14:27:15 2010 +0100

    Add -nodefconfig command line option to qemu.
    
    Without this option, qemu will read some defaults from /etc/qemu/
    configuration files.

commit d437414ae7ee2c485c8bd02bb6e474e6acc04118
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 24 12:37:39 2010 +0100

    Version 1.5.4.

commit b8bba0cf5b7cf5341a2a49599472f5270b38edc9
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 24 11:53:40 2010 +0100

    New APIs: set-network and get-network to enable network support.
    
    guestfs_set_network (g, true) enables network support in the appliance.

commit c4812026528637f4fdcb6fa43fcf2bec8fb92ec0
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 24 11:19:55 2010 +0100

    build: Add 'bindist' rule for building binary distribution.

commit 5106bb95936a629430b1d603f8602cb40191414b
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Aug 23 22:58:51 2010 +0100

    Don't print debug messages when not in verbose mode.
    
    Don't print them because no one's listening ...

commit 5da5ef3310df03d2befead365edd5bf8b6a7f843
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Aug 23 22:19:24 2010 +0100

    Change protocol to send Linux errno from daemon to library.
    
    This changes the protocol so that the Linux errno (if available)
    is sent back to the library.  Note that the errno is not yet
    made available to callers, since it is not clear how best to
    present this Linux-specific number.

commit 0acb4354203b320735b9bd0dc2d52ce9815f117a
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Aug 23 22:14:27 2010 +0100

    Raise error message max size to 64K.
    
    This commit removes one of the protocol limits, by raising the
    maximum error message size from 256 bytes to 64K.
    
    Although we could consider raising this further, since the
    error messages are currently stored in fixed sized buffers on
    the stack, that would require more invasive code changes.

commit 113f3b75613d34fc9313f7cbe770955b227c5e73
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Aug 23 21:53:32 2010 +0100

    Use virtio-serial, remove other vmchannel methods.
    
    This adds support for virtio-serial, and removes all other
    vmchannel methods.
    
    Virtio-serial is faster than other methods, and is now widely
    available.
    
    I tested this by using the guestfs_upload API on an 83 MB file:
      before: 6.12 seconds (14.1 MB/sec)
       after: 4.20 seconds (20.6 MB/sec)
    (note this is with the current 8K chunk size)

commit fac4bb14f517590c2d3b469a80882b8d20c16a30
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Aug 23 11:12:29 2010 +0100

    Change to using ext2-based, cached supermin appliance.
    
    This changes the method used to build the supermin appliance
    to use the new ext2-based appliance supported by latest febootstrap.
    The appliance can also be cached, so we avoid rebuilding it
    each time it is used.
    
    Mailing list discussion goes into the rationale and details:
    https://www.redhat.com/archives/libguestfs/2010-August/msg00028.html
    
    Requires febootstrap >= 2.8.

commit 02dfd080b42310dd524d242ae8d1f9440a875f60
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Aug 23 12:54:27 2010 +0100

    Make print_timestamped_message into a cross-module function.
    
    This is just code movement.

commit 638bcafbc3f654bf723d0e204a7960d95a351f80
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Aug 23 12:53:11 2010 +0100

    Factor out code for locating the temporary directory.
    
    This is just code movement.

commit b3ede9dc350222f7817c6100707a3c67f2a73aae
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Aug 21 12:45:51 2010 +0100

    Whitespace change: Add blank line between structures and functions.

commit e005d9a4c806a7c2c2259dfe6c7f5d3818526da1
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Aug 21 10:39:39 2010 +0100

    appliance: Remove some obsolete testing rules from Makefile.am
    
    This haven't been used -- and haven't worked -- for a long time.

commit 7cec1cfe373750b5c5bb78e76840bf84ebce674b
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 17 14:30:58 2010 +0100

    Version 1.5.3

commit 17df5d60b80dd98421335c20072dfaf917e949a6
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Aug 2 23:29:43 2010 +0100

    Remove old ocaml-inspector code.
    
    Not used by anyone, didn't work well, and replaced now by the
    C inspection APIs.

commit 6ac3a8413423cedee7a124167e67adc927499269
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Aug 2 17:43:23 2010 +0100

    fish: Reimplement -i option using new C-based inspection.
    
    Don't shell out to virt-inspector.  Instead, use the new C-based
    inspection APIs.
    
    This is much faster.
    
    The new syntax is slightly different:
    
      guestfish -a disk.img -i
      guestfish -d guest -i
    
    However, the old syntax still works.

commit 7352a39053ef6fb723f62a76ea638499b46fa742
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Aug 2 16:33:25 2010 +0100

    fish: Add -c/--connect and -d/--domain options.
    
    The -d option lets you specify libvirt domains.  The disks from
    these domains are found and added, as if you'd named them with -a.
    
    The -c option lets you specify a libvirt URI, which is needed
    when we consult libvirt to implement the above.

commit d5dbafdabe2b9b9ecb7d98a7b5444dd3e99a9094
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jul 28 15:40:42 2010 +0100

    New APIs for guest inspection.
    
    This commit converts (some of) the Perl inspection code to C and
    makes it available through core APIs.  The new APIs are:
    
    inspect-os        - Does the inspection, returns list of OSes
    inspect-get-*     - Get results of the inspection
    
    where '*' is one of:
    
      type            - 'windows' or 'linux'
      distro          - Linux distro
      arch            - architecture
      product-name    - long product name string
      major-version
      minor-version   - major.minor version of OS
      mountpoints     - get a list of the mountpoints
      filesystems     - get all filesystems associated with the OS
    
    This works for all existing supported Linux and Windows OSes.

commit 8aba41f01db4f15cdf56a5424269ff17b0eeefa5
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jul 28 23:11:38 2010 +0100

    New APIs: findfs-label and findfs-uuid
    
    These two calls wrap up the /sbin/findfs command, allowing you
    to find a filesystem by only knowing its label or UUID.
    
    This is especially useful when resolving LABEL=... or UUID=...
    entries in /etc/fstab.
    
    Sample guestfish session:
    
    ><fs> vfs-uuid /dev/vda1
    277dd61c-bf34-4253-a8dc-df500a05e7df
    ><fs> findfs-uuid 277dd61c-bf34-4253-a8dc-df500a05e7df
    /dev/vda1
    ><fs> vfs-label /dev/vda1
    /boot
    ><fs> findfs-label /boot
    /dev/vda1
    ><fs> vfs-uuid /dev/VolGroup00/LogVol00
    40ce7c36-82ce-4a12-a99d-48f5e054162c
    ><fs> findfs-uuid 40ce7c36-82ce-4a12-a99d-48f5e054162c
    /dev/mapper/VolGroup00-LogVol00
    ><fs> findfs-uuid 12345678
    libguestfs: error: findfs_uuid: findfs: unable to resolve 'UUID=12345678'

commit 15491128d0c673ed21a690584ca44fbf0044170e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jul 28 15:38:57 2010 +0100

    New API: file-architecture
    
    This change simply converts the existing Perl-only function
    file_architecture into a core API call.  The core API call is
    written in C and available in all languages and from guestfish.

commit f79ff8cb8bf7b9298a8e4a20c43076f3a3e68b13
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 17 11:26:54 2010 +0100

    generator: No need to redefine safe_* macros.
    
    These are already defined in "guestfs-internal.h" which is
    included in the .c file.

commit fcac205cfba3a0a8a423b342fc0355df9132cb32
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 17 11:26:26 2010 +0100

    Add safe_strndup call.

commit 12f0deca4269cb88f62b6f2643bb48bbadab9655
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Aug 17 12:19:05 2010 +0100

    Send trace output to stderr.
    
    Trace output sent to stdout can be lost in the event of a crash due to
    buffering.  This patch sends it to stderr instead.

commit cd61352b2f79a6fa0d3924c990c616b86437995e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Aug 17 10:31:39 2010 +0100

    Python: Use new PyCapsule API where supported.
    
    See:
    http://lists.fedoraproject.org/pipermail/devel/2010-August/141064.html

commit 4dcd75b2ace2dfb0593496360ec816391cd16beb
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Jul 31 14:35:07 2010 +0100

    generator: Fix typo in error message for RConstOptString.

commit c9ba90cc023642367edf2a8afd55da4b72b3482d
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jul 30 16:32:35 2010 +0100

    New API: is-lv: check if a block device is a logical volume (RHBZ#619793)
    
    This adds a new API, guestfs_is_lv (g, device), which returns true iff
    the named device is an LVM2 logical volume.
    
    A sample guestfish session:
    
    ><fs> lvs
    /dev/vg_f13x64/lv_root
    /dev/vg_f13x64/lv_swap
    ><fs> list-devices
    /dev/vda
    ><fs> list-partitions
    /dev/vda1
    /dev/vda2
    ><fs> is-lv /dev/vg_f13x64/lv_root
    true
    ><fs> is-lv /dev/vg_f13x64/lv_swap
    true
    ><fs> is-lv /dev/vda
    false
    ><fs> is-lv /dev/vda1
    false
    ><fs> is-lv /dev/vda2
    false

commit b5432ff37b26de17791760ae71c738abd1ee9515
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jul 28 12:38:36 2010 +0100

    Rename internal functions.
    
    This is an update to commit 41f25ab3df5f306ac717fa7a6efd58328d30c1ae.
    
    Internal functions should be named guestfs___* (3 underscores) to
    avoid clashing with the implementation of actions (2 underscores).

commit a6ce9539a031db9c2ad18e207cbe0cd4a3a0b5ad
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jul 27 13:01:39 2010 +0100

    Rearrange library code into separate files.
    
    We split the library code into these separate files:
    
     - guestfs.c: creating handles, closing handles, handle-related variables
     - actions.c: generated library-side stubs for each action
     - bindtests.c: generated code to test bindings
     - launch.c: launching the appliance
     - proto.c: the library side of the daemon communications protocol
    
    This is just code movement.

commit 4b029f7c35c2d9acaf14cd98fef54d4b0a389f1a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jul 27 12:29:59 2010 +0100

    Rename guestfs-{actions,bindtests}.c to {actions,bindtests}.c
    
    Rename these two generated files, in preparation for splitting
    up the main src/guestfs.c file.

commit bd6c609fc3afcf4aab236ebe8eceb42f552b5bcb
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jul 27 11:11:42 2010 +0100

    TODO: Implement inspector code in C.

commit 0abc7cdefd461f195a8fe1afab11eabe68ce8042
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jul 27 11:11:09 2010 +0100

    TODO: Implement recursive upload/download in guestfish.

commit 4806e980b4658949caf5afbc24c363395ba6d5a9
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jul 27 11:10:32 2010 +0100

    TODO: Add link to discussion of progress bars.

commit 14b22ef2ab64866dd358c0e47e52f0488126c31a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jul 22 16:53:54 2010 +0100

    Version 1.5.2.

commit d5db4b7173e6122db7eb21af904341fdf29781e9
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jul 22 16:49:06 2010 +0100

    regressions: Don't print misleading 'Expect error ...' lines.
    
    Some tests in the regressions directory deliberately print
    error messages.  As long as they still PASS, this is OK.
    
    However these tests also printed some misleading messages
    about what error to expect.  Since error messages were slightly
    different across distros, these messages were not accurate.
    
    Therefore remove these messages, and replace with a general
    message before all tests telling users not to worry about
    errors from the tests as long as the tests don't fail.

commit 264a164fb21d5afb61a1913496016a1ed2ef01a2
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jul 22 11:00:59 2010 +0100

    New APIs: Support for creating LUKS and managing keys.
    
    This commit adds four APIs for creating new LUKS devices
    and key management.  These are:
    
      luks_format         Format a LUKS device with the default cipher.
      luks_format_cipher  Format with a chosen cipher.
      luks_add_key        Add another key to an existing device.
      luks_kill_slot      Delete a key from an existing device.
    
    This enables all the significant functionality of the
    cryptsetup luks* commands.
    
    Note that you can obtain the UUID of a LUKS device already
    by using vfs-uuid.
    
    This also includes a regression test covering all the LUKS
    functions.

commit d84d6c83c72abda96946a55d05c258b4f940a7fa
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jul 22 16:51:05 2010 +0100

    Move variable initialization close to variable use.

commit 75a455cadb8a56a809c036b79837c4b72c29e2e6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jul 22 14:39:36 2010 +0100

    Revert "add_drive_ro adds readonly=on option if available." (RHBZ#617200).
    
    Adding the readonly=on option is not so clever.  This causes
    qemu to present the disk as read-only to the guest.  (The
    expected behaviour of snapshots=on,readonly=on was that it
    would open the disk O_RDONLY but present a writable disk to
    the guest).
    
    Since the guest sees a read-only disk, we are unable to do any
    recovery if a filesystem on the disk is inconsistent.  This basically
    prevents most accesses to live disk images.
    
    What we really want is a qemu option which presents a writable
    disk to the guest, but only opens the disk on the host side with
    O_RDONLY, to alleviate the udev bug RHBZ#571714.
    
    This reverts commit 676462684e05dd8341dd695762dd99a87d8ec022.

commit 720b15073d06c199b98cdc5ec07e252bfbbf5f5e
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jul 22 10:59:43 2010 +0100

    generator: Make documentation inside guestfish match man page.

commit 7e2d3d3a3d2721c2cfac98d5000a37d1e23819b1
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jul 21 21:40:21 2010 +0100

    Version 1.5.1.

commit 2d48189a5f239f582a9811e547ebc2b87a2abe75
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jul 21 19:50:06 2010 +0100

    New APIs: Support for opening LUKS-encrypted disks.
    
    This adds support for opening LUKS-encrypted disks, via
    three new APIs:
    
      luks_open:    Create a mapping for an encrypted disk.
      luks_open_ro: Same, but read-only mapping.
      luks_close:   Close a mapping.
    
    A typical guestfish session using this functionality looks
    like this:
    
      $ guestfish --ro -a encrypted.img
      ><fs> run
      ><fs> list-devices
      /dev/vda
      ><fs> list-partitions
      /dev/vda1
      /dev/vda2
      ><fs> vfs-type /dev/vda2
      crypto_LUKS
      ><fs> luks-open /dev/vda2 luksdev
      Enter key or passphrase ("key"):
      ><fs> vgscan
      ><fs> vg-activate-all true
      ><fs> pvs
      /dev/dm-0
      ><fs> vgs
      vg_f13x64encrypted
      ><fs> lvs
      /dev/vg_f13x64encrypted/lv_root
      /dev/vg_f13x64encrypted/lv_swap
      ><fs> mount /dev/vg_f13x64encrypted/lv_root /
      ><fs> ll /
      total 132
      dr-xr-xr-x.  24 root root  4096 Jul 21 12:01 .
      dr-xr-xr-x   20 root root     0 Jul 21 20:06 ..
      drwx------.   3 root root  4096 Jul 21 11:59 .dbus
      drwx------.   2 root root  4096 Jul 21 12:00 .pulse
      -rw-------.   1 root root   256 Jul 21 12:00 .pulse-cookie
      dr-xr-xr-x.   2 root root  4096 May 13 03:03 bin
    
    NOT included in this patch:
    
     - An easier way to use this from guestfish.
     - Ability to create LUKS devices.
     - Ability to change LUKS keys on existing devices.
     - Direct access to the /dev/mapper device (eg. if it contains
       anything apart from VGs).

commit df7784fb7240df64c5809808cafe22abe3311d2d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jul 21 12:52:51 2010 +0100

    generator: Add 'Key' parameter type.
    
    Add a 'Key' parameter type, used for passing sensitive key material
    into libguestfs.
    
    Eventually the plan is to mlock() key material into memory.  However
    this is very difficult to achieve because the encoded XDR strings
    end up in many places.  Therefore users should note that key material
    passed to libguestfs might end up in swap.
    
    The only difference between 'Key' and 'String' currently is that
    guestfish requests the key from /dev/tty with echoing turned off.

commit db10c41a2c1a83109e58ee4c3509211b61e8cbda
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jul 21 12:52:10 2010 +0100

    generator: Remove unnecessary parameter.
    
    The 'name' parameter is not used on the right hand side of the
    match, so it can be removed.

commit f8e6de7c1dd94618dafc87613a83cc50c5e6bea3
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jul 16 18:11:56 2010 +0100

    df: Minimize the number of times we launch the libguestfs appliance.
    
    This commit greatly improves the performance of the 'virt-df'
    command by batching as many disks as possible onto a single appliance.
    In many situations this means the appliance is launched only once,
    versus one launch per domain as before.
    
    However doing it this way is a lot more complex:
    
    (1) Because of limits in Linux and virtio-blk, we can only attach
    26 disks maximum at a time to the appliance.
    
    (2) We have to use LVM filters (lvm-set-filter) to confine LVM to
    the disks of a single guest.

commit 10804936c69131cdd778cd2cfb7b3bf197356d86
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jul 16 13:01:21 2010 +0100

    New APIs: lvm-set-filter and lvm-clear-filter.
    
    These APIs allow you to change the device filter, the list of
    block devices that LVM "sees".  Either you can set it to a fixed
    list of devices / partitions, or you can clear it so that LVM sees
    everything.

commit 8f3da923e57557980cadbbeb2d73e4ec7ccb62ff
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jul 16 12:58:54 2010 +0100

    Use an unsigned type (size_t) for all loop iterators.
    
    This resolves a warning from gcc 4.5:
      assuming signed overflow does not occur when simplifying
        conditional to constant
    
    This page explains the issues in some detail:
      http://www.airs.com/blog/archives/120

commit a16a18083013eb70732fb5049f5c3325bb669a26
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jul 16 12:57:24 2010 +0100

    generator: Don't hard-code name in DeviceList check.
    
    Only one function currently uses DeviceList.  The generated code
    unfortunately hard-coded the argument name from that function.

commit 3dc4f63650ab7c905e449c8dc4976c834d3b11a0
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jul 16 12:55:17 2010 +0100

    build: Don't warn about 'long long'.
    
    Various language bindings simply need this, so we have to allow
    it even though it's a GCC extension.

commit 16e0040ad1337ddf9f9a3cc99f1924dd0e9ea38c
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jul 16 15:17:01 2010 +0100

    doc: Add guestfish 'lvcreate 1M' gotcha.

commit 854d2d0f41643f7071205ddc0c6d34f329a1a000
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Jul 11 23:11:45 2010 +0100

    tar: Remove redundant use statement.

commit 2127f086dbd61a8bc3f5c5e358f4c2f7c27413f5
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Jul 11 23:11:08 2010 +0100

    edit: Clean up temporary files.
    
    Note to self: The 'tempfile' function does *not* default to
    removing files with the program exits!

commit 339480a26476bddeed34210638c8bfec798c98ab
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Jul 11 23:09:07 2010 +0100

    edit: Add -b (backup) option and make uploading more robust.

commit 71df94684a0408f68725cb28ed4bc54b07f56c9b
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Jul 11 16:46:15 2010 +0100

    edit: Add -e 'expr' option to non-interactively apply expression to the file.
    
    (Suggested by Justin Clift).

commit 0f24ce2c07f9f7b1fca48553edc19bcb6b181101
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jul 8 11:54:50 2010 +0100

    Prepare for new development branch, starting at 1.5.0.
    
    Add BUGS and RELEASE-NOTES to EXTRA_DIST.
    
    Also update the RELEASE-NOTES file.

commit cf85d42f531ba455c8f929934357556a3bee5cbd
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jul 2 17:52:51 2010 +0100

    Make tmp directory world readable (RHBZ#610880).
    
    If you have a restrictive umask (0077 for example) then
    files in the tmp directory would be created with 0600
    permissions.  Example:
    
    drwx------.  2 rjones rjones     4096 Jul  2 17:52 .
    drwxrwxrwt. 57 root   root     102400 Jul  2 17:52 ..
    -rw-------.  1 rjones rjones 86328832 Jul  2 17:52 initrd
    lrwxrwxrwx.  1 rjones rjones       46 Jul  2 17:52 kernel -> /boot/vmlinuz-2.6.33-0.40.rc7.git0.fc13.x86_64
    
    This in itself is not a problem.  However in virt-v2v we also
    change UID:GID and the result is that qemu is unable to read
    the initrd file:
    
    qemu: could not load initial ram disk '/tmp/libguestfs2ssynP/initrd'
    
    With this patch we make the tmp directory and the files
    world readable.  After the patch:
    
    $ ls -la /tmp/libguestfsJFVzPg/
    total 116192
    drwxr-xr-x.  2 rjones rjones      4096 Jul  2 18:03 .
    drwxrwxrwt. 56 root   root      102400 Jul  2 18:03 ..
    -rw-r--r--.  1 rjones rjones 118869504 Jul  2 18:03 initrd
    lrwxrwxrwx.  1 rjones rjones        46 Jul  2 18:03 kernel -> /boot/vmlinuz-2.6.33-0.40.rc7.git0.fc13.x86_64

commit c3d7082b25c9421a8ae3c120b1a68e8a04a7f424
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jul 7 15:01:38 2010 +0100

    fish: Don't fail if -m and --listen flags are both given (RHBZ#612178).
    
    Testing this against a Fedora disk image:
    
    $ ./fish/guestfish --ro -a F13.img -m /dev/sda1 --listen
    export GUESTFISH_PID=6033
    $ ./fish/guestfish --remote=6033 -- ping-daemon
    $ ./fish/guestfish --remote=6033 -- ping-daemon
    $ ./fish/guestfish --remote=6033 -- exit
    
    Without this fix the first remote command would fail because
    qemu would have already been killed.

commit 62233a47b5a348f8d3a78145ae15148be53e6cac
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jul 2 20:12:41 2010 +0100

    todo: Add comment about progress of long-running operations.

commit 2dda6a1dd926f1f4bf61a33008413d9cc83f407d
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jul 2 10:50:38 2010 +0100

    inspector: Improve error message when YAML::Any library is not installed.

commit 68d7b83de4c589abcfd1aed4b9522aaa4c0d6f53
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jun 28 13:51:42 2010 +0100

    Explicitly depend on e2fsprogs.
    
    See: http://lists.fedoraproject.org/pipermail/devel/2010-June/137953.html

commit 01b69cfda19df155ddf1bdf2d011b3cbb7f703d5
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jun 28 09:13:36 2010 +0100

    Fix gfs2 support by adding required kernel modules.

commit ca5739a3565270d8ab481cb04d536b63c4a6ac29
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 16 16:12:52 2010 +0100

    Version 1.3.21.

commit 9b3d0f6ca1279e790b31b5475c5285815c10d9f0
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 16 15:25:45 2010 +0100

    ocaml: Fix thread safety of strings in bindings (RHBZ#604691).
    
    There's a thread safety issue with the current OCaml bindings which
    is well explained in the bug report:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=604691
    
    This commit fixes the safety issue by copying strings temporarily
    before releasing the thread lock.  Updated code looks like this:
    
      char *filename = guestfs_safe_strdup (g, String_val (filenamev));
      int r;
    
      caml_enter_blocking_section ();
      r = guestfs_add_drive_ro (g, filename);
      caml_leave_blocking_section ();
      free (filename);
      if (r == -1)
        ocaml_guestfs_raise_error (g, "add_drive_ro");
    
    Also included is a regression test.

commit d0176b4c34329704455b94892086de5d99ddffd7
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 16 14:29:39 2010 +0100

    TODO: Add a note about impl of list-filesystems.

commit 7197e9d231db2ef2cb61b5456ab2e7df575748e3
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 15 11:15:30 2010 +0100

    todo: More ideas for TODO list.

commit e11ca8f2a28dccaa7cbebefc8e7cf47aaab31479
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 15 11:15:06 2010 +0100

    Update Spanish translations (RHBZ#603870).

commit 82781be910b8b7fd6672f353faef4944f486b1fe
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jun 11 10:40:48 2010 +0100

    perl: Check all images are defined in first param of open_guest.

commit 96588c3b072c33cc04714f37e20eb90c40c0f497
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 10 15:25:43 2010 +0100

    perl: Add explicit close() method (RHBZ#602592).
    
    This add an optional explicit $g->close method which may be
    used to force the handle to be closed immediately.  Note the
    provisos about this method in the manual page entry.  Callers
    should *not* normally use this method.
    
    The implementation of the handle also changes.  Before, the
    handle was a blessed reference to an integer (the integer
    being the pointer to the C guestfs_h handle).  Now we change
    this to a hashref containing currently the following field:
    
      _g => pointer to C guestfs_h handle (as an integer)
    
    If this field is not present, it means that the handle has been
    explicitly closed.  This avoids double-freeing the handle.
    
    The user may add their own fields to this hash in order to store
    per-handle data.  However any fields whose names begin with
    an underscore are reserved for use by the Perl bindings.
    
    This commit also adds a regression test.
    
    This commit also changes the existing warning when you call
    a method without a Sys::Guestfs handle as the first parameter,
    into an error.  This is because such cases are always errors.

commit 36a361d11bea7a3f45029c79a86dd377d4b0d913
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 10 12:38:57 2010 +0100

    Add error callback (RHBZ#602599).
    
    Read the note in the man page before using this feature.

commit f49548b1977c2e741fde8146fe503af112b5fb02
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 10 12:26:06 2010 +0100

    Fix typo in documentation of guestfs_set_launch_done_callback.

commit 30637c5f984de5fb26b20a152ce442e8a1b00729
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 8 18:17:37 2010 +0100

    Version 1.3.20.

commit 9ee838b44f792060314e6d603a7f125de8dc0263
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 8 18:17:46 2010 +0100

    Revert "perl: Rerun configure if MAX_PROC_NR changes."
    
    This reverts commit f8ee7869f4836427109959cf20e299a31fa86eaf.

commit ca94b43d0b46c49767c9da1d379033f93f7fd426
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 8 18:12:32 2010 +0100

    TODO: Freeze/thaw filesystems.

commit 1bf64924475ac9019ae75f898514a1805d24d6b2
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 8 18:11:16 2010 +0100

    TODO: Need to add regression test for virt-inspector.

commit 175e035f48745b620b6705cde792cb6426f988aa
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 8 18:04:17 2010 +0100

    TODO: 'file' command should be fixed.

commit e92e07f36b7d724463b4956846bdb618ebfa0454
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 8 16:44:18 2010 +0100

    virt-df: Disallow -h and --csv options together (RHBZ#600977).
    
    Before this commit, if you used the -h and --csv options together
    you would get these warnings from virt-df:
    
    $ virt-df -h --csv Guest
    Virtual Machine,Filesystem,Size,Used,Available,Use%
    Argument "13.5G" isn't numeric in printf at /home/rjones/d/libguestfs/tools/virt-df line 298.
    Argument "4.7G" isn't numeric in printf at /home/rjones/d/libguestfs/tools/virt-df line 298.
    Argument "8.1G" isn't numeric in printf at /home/rjones/d/libguestfs/tools/virt-df line 298.
    "/dev/vg_trick/RHEL55x64","/dev/VolGroup00/LogVol00",13,4,8,34.8%
    Argument "98.7M" isn't numeric in printf at /home/rjones/d/libguestfs/tools/virt-df line 298.
    Argument "18.8M" isn't numeric in printf at /home/rjones/d/libguestfs/tools/virt-df line 298.
    Argument "74.9M" isn't numeric in printf at /home/rjones/d/libguestfs/tools/virt-df line 298.
    "/dev/vg_trick/RHEL55x64","/dev/vda1",98,18,74,19.0%
    
    We could fix this so that the human-readable numbers get written
    into the CSV file.  However would probably be wrong for most uses
    of the CSV format (databases and spreadsheets) since they would not
    be able to interpret these human-readable numbers, or worse could
    misinterpret, eg. thinking that "1M" and "1G" are both 1.
    
    Therefore this commit disallows this combination of options.

commit 66a99c8fe8cddab1e27f0614210aec666dc02df1
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 8 16:04:01 2010 +0100

    file: Fix file command on /dev/VG/LV paths (RHBZ#582484).
    
    Previous commit 4df593496e116dfb635731c058b7627e81fc179c broke the
    "file" command on logical volume paths, since these are symbolic
    links.  We *should* follow these (only).
    
    This inadvertantly broke virt-inspector too, which indicates that
    we need more regression testing in this area.  Since carrying whole
    Fedora images around could make the distribution even larger than
    now, I'm not sure at the moment how to do this.
    
    Thanks to Matt Booth for diagnosing this bug.

commit a0ee5e5672ffe15ff7ab3aa04cea05c3e61411f0
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jun 7 15:29:31 2010 +0100

    Use the noop scheduler inside the appliance.
    
    In my limited tests, this seems to make a small but noticable
    difference, improving the performance of some straightforward
    read operations by a little over 10%.
    
    For more information see:
    http://kbase.redhat.com/faq/docs/DOC-5428

commit 4f32deda73348bfdc89a99b91a4bd3a66eb1416e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jun 4 18:44:49 2010 +0100

    Add release notes.
    
    To generate the "Bugs fixed" list, run the bugs-in-changelog script
    like this:
    
      ./bugs-in-changelog 1.0.89..

commit 3f9c55d908bd0ede1b1913cd64e31dbefea79c80
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jun 4 16:38:55 2010 +0100

    Version 1.3.19.
    
    Update BUGS and PO files.

commit 22119916e8fde5b826667cd40af137e229c79d0b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jun 4 11:45:06 2010 +0100

    file: Restrict to regular files (RHBZ#582484).
    
    The file call can hang if called on char devices (because we are
    using the file -s option).
    
    This is hard to solve cleanly without adding another file API.
    
    However this restricts file to regular files, unless called explicitly
    with a /dev/ path.  For non-regular files, it will now return a
    string like "directory".
    
    There is a small semantic change for symbolic links.  Previously
    it would not have worked at all on absolute links (or rather, the
    results would have been undefined).  It would have treated relative
    symlinks to regular files as the regular file itself.  Now it will
    return the string "symbolic link" in both cases.
    
    This commit also makes the API safe when called on untrusted
    filesystems.  Previously a filesystem might have been set up so
    that (eg) /etc/redhat-release was a char device, which would have
    caused virt-inspector and virt-v2v to hang.  Now it will not hang.

commit 9e113d253c2dddd64656086faabe94eaad7b1582
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jun 4 11:55:54 2010 +0100

    touch: Restrict touch to regular files only (RHBZ#582484).

commit 272171129c404bcbdef9556a04b3d3ecf88b0b7a
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jun 4 11:23:01 2010 +0100

    daemon: Rearrange code in 'file' command.
    
      path = path to access file (/sysroot/.. or /dev/..)
      display_path = original path, saved so we can display it
      buf = optional buffer which is freed along return codepaths
    
    There should be no change to the semantics of the code.

commit 4ef6b2ca4564db0fcb17a39f0883bc37e6867a2d
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jun 4 11:21:58 2010 +0100

    gnulib: Ignore asm-underscore.m4 in the correct place.

commit b57c125e3d4381df139e90935d7d30ce085e9e09
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jun 4 09:46:34 2010 +0100

    Update to latest gnulib.

commit c87c5a01d9b2f9505be2a84acd0f5cd8510eb542
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 3 14:03:08 2010 +0100

    mkfs-b: Map block size to cluster size for VFAT and NTFS partitions (RHBZ#599464).
    
    This also adds a regression test for VFAT and (conditionally)
    NTFS filesystems.

commit 337be8db60c0aeb907dbaa1ea0805f8d2dbf0552
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 3 14:01:18 2010 +0100

    mkfs-b: Check that blocksize parameter is > 0 and a power of 2.

commit 0c10820bbbd56d070092b191be680340dd583ea6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 3 14:31:58 2010 +0100

    generator: Allow individual tests to depend on daemon features.
    
    Using IfAvailable "featurename" we allow individual tests to
    only run if the feature is available in the daemon.
    
    This will allow us to extend testing to a lot more optional
    features such as NTFS.

commit bb55b7384a026e80c2563226fa7c98750bade05c
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 3 14:30:36 2010 +0100

    tests: Factor out common code into 'is_available' function.
    
    This commit is just code motion.

commit 59477478ba2fbc63d8f87cbae962f8f89e88da5c
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 3 11:49:38 2010 +0100

    grub-install: Enable grub-install tests and create explicit device.map file.

commit 873bf4dea1bf762d3de75784137a13423bb9503e
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 3 11:48:41 2010 +0100

    grub-install: In docs suggest manually creating device.map (RHBZ#484986).

commit da37a99bd7a47403484c7b2b7eb01e8cbeaf61bb
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 2 18:47:30 2010 +0100

    Version 1.3.18.
    
    Update BUGS and PO files.

commit a55573705303babcb2011fc4939a86cbacff9a7f
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 2 17:12:59 2010 +0100

    RHEL 6: sr_mod.ko is needed for RHEL 6 to see CD-ROM devices (RHBZ#598807).

commit 6b1b733977fe796a05037039a3017863e2fdd9c4
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 2 15:35:58 2010 +0100

    parted: Check partition number >= 1 in several calls.

commit cac8e8e2937116b047df2aab47ff29a61ac1a807
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 2 12:32:33 2010 +0100

    daemon: Parse output of old parted which didn't support -m option (RHBZ#598309).
    
    This fixes the following commands when run with RHEL 5-era parted:
    
      get-bootable
      get-parttype
      part-list

commit 4762c05b4d6955f1879653c2012229421a9ec771
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 2 12:31:40 2010 +0100

    daemon: count_strings function returns size_t

commit 107cf1d848655b03902fd6bc635a368b9ad1d163
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 2 15:10:38 2010 +0100

    base64-in: Ignore garbage characters in input.
    
    On RHEL 5 you have to specify the -i option to get the
    external 'base64' command to ignore \n characters.  (The
    Fedora version seems to ignore these characters anyway).
    
    Add this option so the tests can pass on RHEL 5.

commit 191e25fdac08a415f39ad415bec6249cfb02617b
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 2 13:27:19 2010 +0100

    resize2fs: Document this command also works with ext4 (thanks Yufang Zhang).

commit e77daa909eece828b6c112bb9ccba22153c6e45b
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 1 16:27:33 2010 +0100

    fish: help command return error for non-existent commands (RHBZ#597145).
    
    With this change, the exit status indicates error for non-existent
    commands.
    
    $ guestfish -h foo
    foo: command not known, use -h to list all commands
    $ echo $?
    1
    $ guestfish help foo
    foo: command not known, use -h to list all commands
    $ echo $?
    1

commit 3f32de9117893320572083ffc1a80c139c28bba9
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 1 16:18:53 2010 +0100

    daemon: write-file: Check range of size parameter (RHBZ#597135).
    
    This also adds a regression test.

commit fa40ed8537fb2057cf16e59024c3fb52a642a301
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 1 15:50:14 2010 +0100

    daemon: Limit label lengths (RHBZ#597118).

commit efc5642b94f840371e553def1490f35c684bc0dc
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 2 13:36:19 2010 +0100

    Update BUGS and PO files.

commit c27ca4b82145bbaf8c7e3a987ee23d2f449fbb83
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 1 14:04:51 2010 +0100

    Fix and deprecate get_e2label and get_e2uuid (RHBZ#597112).
    
    Fix these calls (see description in RHBZ#597112), but also
    deprecate them since the new calls vfs_label and vfs_uuid can
    work on any filesystem type.
    
    This also adds a regression test for the original bug reported
    in RHBZ#597112.

commit 0b7b945e8b338d487660aa91fd30b47d550ab7aa
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 1 13:57:12 2010 +0100

    New APIs: vfs-label and vfs-uuid return label and uuid for many fs types.
    
    These APIs generalize the existing 'get-e2label' and 'get-e2uuid'
    calls, to provide calls which should be able to get the label
    and UUID for most filesystem types.  These use 'blkid' to do the
    work.
    
    I have tested that the blkid commands themselves work on RHEL 5.
    
    (Suggested by Yufang Zhang).

commit a868f3562de2aba19f710a2f7ed199443d6486d6
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 1 15:27:57 2010 +0100

    daemon: Kill blkid cache to improve reliability of blkid commands.
    
    By killing the cache file, we make blkid work in situations such
    as a just-created filesystem.

commit 392ded6f20b523b3910cfc61ca89864953a986cc
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 1 13:39:25 2010 +0100

    daemon: Generalize the implementation of vfs-type.
    
    Note that there is no change to the semantics of the code.

commit eb3675d7a571a7ae08db50c2c374fae06bb1ce1e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 28 20:08:01 2010 +0100

    todo: Should generate -N option.

commit f1f7d4a23e1199d86998dd6a65fdb223f66b0f8f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 28 20:05:56 2010 +0100

    todo: Remove implemented resize functions from TODO file.

commit 5ffd126a03d15eab08a97c0580249c24c01ac4e6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu May 27 15:47:51 2010 +0100

    Make the supermin appliance include local augeas lenses

commit ffc8d369d8ed9b6171b7bcd51717d727b9741c6f
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu May 27 15:47:50 2010 +0100

    Rely on new augeas lens for modules.conf and conf.modules
    
    Latest augeas includes a lens for /etc/modules.conf. If this new lens is
    present, the code to force the Modprobe lens to try to match /etc/modules.conf
    as well results in /etc/modules.conf not being parsed at all. This results in
    modprobe_aliases in virt-inspector output being empty.
    
    This change is equivalent to change cfd28d1140393667913689b7b9bcf21c8bfe592c
    from virt-v2v.
    
    An effect of this change is that the Modules_conf augeas lens is now required
    for correct operation on guests which use /etc/modules.conf.
    
    Fixes RHBZ#596776

commit 7b7e47909cfb8daa4a94c7d9aea5862f6bac7603
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Thu May 27 15:20:37 2010 +0100

    Updates to Spanish translation (RHBZ#596763).

commit 47c8f9f8183c54bf3e233c3f91e215dd69b43899
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 27 12:03:43 2010 +0100

    Version 1.3.17.

commit c1d5ed0941b87a2cdce72af0ad4ee5e93412fd64
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 27 10:37:43 2010 +0100

    Fix documentation for vfs-type to reflect reality.

commit af93e2c122bb5ccdcdbcbc79836fdd8caa0ce2c5
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 27 10:32:51 2010 +0100

    Clarify documentation on distro backports in version command.

commit e58f9b2c43dfb0817b2b6290c8f3e08f684aa495
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 27 10:31:07 2010 +0100

    Add reference to version number documentation to version command.

commit b35c6a9a586a141d58b959e34c9740c482d1e823
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 27 10:25:18 2010 +0100

    Clarify sparse behaviour of truncate-size command.

commit bc40029e24ec2230cbc6317f2dbce688649b51c2
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 27 10:03:47 2010 +0100

    Fix typo in documentation of guestfs_readlinklist.

commit 1f91cb926c887f537ff0e06acca69f2d1c62c0b2
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 27 10:01:25 2010 +0100

    Fix missing word in docuentation of guestfs_readdir.

commit 43e368f3dc76d5ff1590ef23ce60c26d08ee9741
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 27 09:49:28 2010 +0100

    Revise documentation on creating files.

commit 7d981b9e5bd83874b478fcd6020e751ff90b30d6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 27 09:48:22 2010 +0100

    New API: fallocate64 (replaces fallocate).
    
    guestfs_fallocate takes an integer for the length, effectively
    limiting it to creating 1GB files.  This new call takes an int64_t
    for the length, but is otherwise identical.

commit 916a8b13e629c2cbdbf46cb321e234e8bae5198e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 26 23:42:43 2010 +0100

    Fix typo in description of echo-daemon command.

commit f9b54bfc9a94cfd2a8269a65442bc4647512f8d3
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 23:17:58 2010 +0100

    Version 1.3.16.

commit 77c68c893d865763e7d037193d6ad15ded97d364
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 23:16:23 2010 +0100

    Add bash complation script to EXTRA_DIST.

commit 4501b84c12e8cf60438237c34e98b2b855e8cd55
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 22:45:45 2010 +0100

    Version 1.3.15.

commit 35f21c5011f48c20c2cd7676e484bd4d287dcf8e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 22:24:12 2010 +0100

    Add tests for available-all-groups command.

commit 4d9c6f8fb8e3f7c2464985569206cfbe0f5e5e92
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 20:13:55 2010 +0100

    fish: First pass at guestfish bash completion script.

commit f9bffed73c1349e6ab5ec59651ebd86d069fce49
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 13:54:11 2010 +0100

    fish: Don't eat words when completing case-insensitive paths (RHBZ#582993).

commit ab434b2a3e4dd9e5676ef9cbdf37583f16a2ce63
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 13:52:53 2010 +0100

    fish: Sort returned paths so the list is stable across multiple calls.

commit 9625aef1db599d4e6c874c522ef4305106ae5c0a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 13:52:17 2010 +0100

    fish: Document test1.img, test2.img etc used by -N option in FILES section.

commit e228ab7f915dd0fa2b9d771b8bfa474f2fc1392f
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 13:51:58 2010 +0100

    fish: Create a separate FILES section in the manpage.

commit 04b6dc67c6a134d25898a3cf8eeb5eb95c9ca287
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 13:41:39 2010 +0100

    fish: Move 'EXIT CODE' section to a more logical place in the documentation.

commit c3a6436e875f4cf5433d2f98770b11ad4a576fad
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 11:45:23 2010 +0100

    resize: Refresh the examples in the documentation.
    
    The documentation was previously very intimidating.  Bring some
    common, simple examples up to the top of the page in a separate
    section.

commit fdd0a5ca1d6bd278da0e0c2ebb68f289896aac15
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 11:44:43 2010 +0100

    fish: Make the read/write warning more prominent.
    
    Follow the example on other manual pages by making the warning
    more prominent.

commit f55018dcd1e7c256912327576f11ed20e94b5bd6
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 11:28:09 2010 +0100

    fish: New command: 'supported'
    
    This checks all available optional groups and prints out which
    ones are supported by the daemon.  Note you must launch the appliance
    first.
    
    Example:
    
    ><fs> supported
          augeas yes
         inotify yes
     linuxfsuuid yes
    linuxmodules yes
     linuxxattrs yes
            lvm2 yes
           mknod yes
          ntfs3g yes
       ntfsprogs yes
        realpath yes
           scrub yes
         selinux yes
              xz yes
        zerofree yes

commit e12ce94437dbf236c0dbbd54c4e44b9511562cb7
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 11:27:49 2010 +0100

    New API: available-all-groups to return list of all optional groups.

commit fe03315ad3ad455e4b0aa58ce56219bd557fd266
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 25 11:25:12 2010 +0100

    perl: Rerun configure if MAX_PROC_NR changes.
    
    If MAX_PROC_NR changes (because a new API has been added to the
    generator) then we need to rerun configure in order to set the
    Makefile's ${MAX_PROC_NR} variable, in order to rebuild Makefile.PL.

commit ca42b08e6b0bb339ed2546249cab15812150c627
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Tue May 25 09:41:20 2010 +0100

    Update Polish translations (RHBZ#502533).

commit 38f687dab443b051b436b636c2d03a5b947ee6e3
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 24 13:35:31 2010 +0100

    Version 1.3.14.

commit 4f8f246ea26980edcb0fe153e23492dc958ab1ac
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 24 13:34:33 2010 +0100

    build: Remove install_kernel from EXTRA_DIST.
    
    This updates commit a34fadf900625f1f7359ecf3ca760820ffa20815,
    removing this now non-existent script from EXTRA_DIST.

commit a2b76d953804d4682068cce400b2f101fe74ccd4
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 24 12:09:38 2010 +0100

    build: For development releases, print a notice.

commit 45429edd4a532098737b9355612c095ea7cd136f
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 22 18:51:57 2010 +0100

    guestfs_version: Correct documentation.
    
    Remove reference to 'ELF weak linking tricks' and replace
    with suggestion to use dl* functions.

commit 4ea3bfe47d8d436c9e7f86ce66ccd559dd9dc5c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 21 18:20:28 2010 +0100

    Build workaround for Python 2.4.x in RHEL 5.
    
    See:
    http://www.python.org/dev/peps/pep-0353/#conversion-guidelines

commit 7847481dcf3ba9e966ffdde6a98ae3866c1782ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 21 16:14:07 2010 +0100

    C99 compatible build fix for RHEL 5.

commit e5c39a9907eba5c4e153e1f7a255c029a2f7ceed
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 21 14:14:59 2010 +0100

    New API: ntfsresize-size to allow shrinking NTFS (RHBZ#585223).

commit dbecd0552ef2481fd97af5b8cb2812b5648e1fff
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 21 14:14:25 2010 +0100

    New API: pvresize-size to allow shrinking PVs (RHBZ#585222).

commit 1e03feb3673cfc6f10ab900a4d9a7fb47a3b035e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 21 14:13:24 2010 +0100

    New API: resize2fs-size to allow shrinking ext2 filesystems (RHBZ#585221).

commit b9e51da147a046954f5109c7477772fbd92eca29
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 21 13:07:05 2010 +0100

    fish: Allow suffixes on number parameters (eg. 1M)
    
    This small change uses the gnulib xstrtoll functionality to
    enable suffixes on integer parameters in guestfish.  For example:
    
     truncate-size /file 1G
    
    (previously you would have had to given the full number).
    
    This also applies to the 'alloc' and 'sparse' commands (and
    indirectly to the -N option).  The specification for these commands
    has changed slightly, in that 'alloc foo 1MB' would now use SI
    units, allocating 1000000 bytes instead of a true megabyte.  All
    existing uses would use 'alloc foo 1M' which still allocates true
    megabytes.

commit 0af88c2d604a431db45fc19bc37e1898feb9569a
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 21 14:51:29 2010 +0100

    fish: Fix '-N part' disk partition type sub-option.

commit 75784becb22eaea5bfb075542589eaf466fccea0
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 21 11:25:36 2010 +0100

    TODO: Suggest including undelete utility.

commit d3b86d788791c1e7a2dbb0225636806654af75c5
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 21 11:25:19 2010 +0100

    Fix name of update-bugs script in output file BUGS.

commit 408cd65929abab4ed9e76cb1c7421e481713e224
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 20 18:53:10 2010 +0100

    ubuntu: Use direct udevd method to start udev on Ubuntu.
    
    On Ubuntu, /etc/init.d/udev is a symlink to an upstart file,
    but running that causes the appliance to hang.
    
    Therefore detect if this is a symlink and fall through to the
    direct start of udevd.  This shouldn't affect Debian because the
    file is not a symlink on standard Debian.

commit 4f85d6977bce45fc8c205a4f6fed5e9a010ad37a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 20 13:54:13 2010 +0100

    ubuntu: Remove two FUSE packages from the default list.
    
    fuse-utils (a dependency of these) cannot be installed under
    debirf because it does something with the system udevd which is
    not permitted.  Seems to be a bug either in fakeroot or in the
    post install scripts for fuse-utils.

commit 74905dc99cbed1b229c46bb7f04c08858efb2a28
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 20 11:04:30 2010 +0100

    ubuntu: Ignore packages in packagelist.in which are missing.
    
    For distros using 'yum', packages which cannot be found are just
    ignored.  This allows us to include for example 'e4fsprogs' on the
    list even though that only exists on RHEL 5.
    
    However for Debian-derived distros, missing packages would cause
    apt to fail.  This was particularly a problem when building Ubuntu
    since it doesn't have as complete a list of packages, and the list
    changed a lot between releases.
    
    This commit adds a check first for missing packages, ignoring those
    and thus acting more like 'yum'.

commit ab22628ada88ca92eaf0a5e6ade909b5556890ca
Author: Richard Jones <rjones@ubuntu910x64.home.annexia.org>
Date:   Mon Dec 21 15:52:36 2009 +0000

    Ubuntu: Use apt-get instead of aptitude when installing guestfsd.

commit 78961af7946a5b28497fe775c8c2818d27194164
Author: Richard Jones <rjones@ubuntu910x64.home.annexia.org>
Date:   Mon Dec 21 15:50:59 2009 +0000

    Ubuntu: Revert install-kernel to debirf default script.

commit 64778a17712e698111eb1a10a890825b855a480d
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 20 10:39:44 2010 +0100

    generator: Make 'xz' into an optional group.
    
    On Ubuntu <= Karmic, xz-utils was not packaged, and therefore
    any xz-related tests would fail.  Thus make this an optional
    group so that we can test for this and avoid running the tests
    if xz utils are not present.

commit 77481e3ac595a6a69f875c4efa5d5e7d558132a8
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 19 12:27:00 2010 +0100

    generator: Check parameters are not NULL (RHBZ#501893).
    
    This adds additional tests to check that several types of parameter
    including String are not NULL when passed to the C functions.
    Previously this would cause a segfault inside libguestfs.  With
    this change, you get an error message / exception.
    
    Of the possible pointer parameters, only OptString is now permitted
    to be NULL.
    
    This change does not affect the Perl bindings.  This is because Perl
    XS code was already adding similar checks if you passed undef into
    a parameter expecting a string.

commit ba31e6e9a75bf47bc92277bf7e35fedd5358a113
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 19 12:25:03 2010 +0100

    generator: Some String parameters should be OptString (RHBZ#501894).
    
    I haven't checked the list of functions exhaustively, but
    these are the obvious ones.

commit b57985cab0c3de8778256a6b2ecd9fab5104482c
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 18 23:49:43 2010 +0100

    fuse: Implement write syscall (RHBZ#592883).

commit 158ebfa113c4f5f062c558534e2f80997a21d732
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 18 23:20:30 2010 +0100

    New API: Implement pwrite system call (partial fix for RHBZ#592883).

commit e46701ffff3e9159833b0bbef17104b1f461013c
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 18 21:51:05 2010 +0100

    New API: write for creating files with fixed content (RHBZ#501889).
    
    The guestfs_write call can be used to create small files with
    arbitrary 8 bit content, including \0 bytes.
    
    This replaces and deprecates write-file, which cannot be modified
    to use BufferIn because of an unfortunate choice in the ABI: the
    size parameter to write-file, if zero, means that the daemon tries
    to calculate the length of the buffer using strlen.  However this
    fails if we pass a zero-length buffer using BufferIn because then
    the daemon tries to do strlen on a (really) zero length buffer, not
    even containing a terminating \0 character, thus segfaulting.

commit c46c6381e7cbb8b693f0d5dd072bea998a4f61a9
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 18 21:47:19 2010 +0100

    generator: Implement BufferIn parameter type (RHBZ#501889).
    
    The BufferIn argument turns into various things:
    
     in C      const char *, size_t parameter pair
    
     in XDR    an opaque<> type (instead of string) which allows \0 chars
    
     in other bindings
               mostly just a string, since most languages except for C
               permit strings to contain any 8 bit data

commit 9a75d4c23247381cba3f4b7f316d6736642e1eea
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 20 10:11:18 2010 +0100

    fish: Fix build error if built without readline.
    
    fish.c:1447: error: 'add_history_line' defined but not used [-Wunused-function]
    
    (Reported by Matt Booth)

commit c3de1bdc67d7b05ed7d5209d635faf1b15a178bb
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 18 23:18:35 2010 +0100

    appliance: Fix /etc/resolv.conf
    
    Since changing to use link local address
    (commit fbf29976b33a69c64dc7847c54454bf2cfa5fde6)
    we have included an incorrect resolv.conf file in the appliance
    which points to the old (qemu) DNS server.  This commit changes
    to use the new DNS server.

commit 29591405027eca4443635e7c8ab02e7cf7b7e6ad
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 18 21:54:17 2010 +0100

    Update BUGS.

commit 910876020c42b8e4e83ff06572e7b27e4527f322
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Tue May 18 14:38:57 2010 +0100

    Update Spanish translations (RHBZ#593292).

commit 77cdcd27e31d7ce9904eec2ef4b4af1378ce268c
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 18 10:02:02 2010 +0100

    appliance: Ignore utempter unreadable binaries (for RHEL 6).

commit b0107c18dd22917860e23ad4740100d44a3b1880
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 18 10:01:45 2010 +0100

    appliance: Change comment about unreadable binaries.

commit 5737046b65c122c9c999cc634634d3654b7f3128
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 15 20:54:26 2010 +0100

    Version 1.3.13.

commit 0aa6e45a9939d0e9d3cc1c2a01279198761a6d12
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 15 13:49:55 2010 +0100

    Update BUGS

commit 798d728f0d069f7e114d67cd219d9c22922cdae3
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 15 08:44:04 2010 +0100

    Update PO files.

commit b02dc787c1f8ca1a918f4337907f45f45aa553b8
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 15 08:43:02 2010 +0100

    Generate BUGS file from Red Hat Bugzilla database.
    
    Add a script which generates the 'BUGS' file from Red Hat Bugzilla.
    This is run whenever we do 'make dist' and deliberately stored in git.

commit a64e22d2ea20282def46e62feb97cf8b5d1d5a9f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 14 19:42:48 2010 +0100

    virt-df: Display domains in sorted order.

commit 768c9583ad2b7f51869f1acf092b0815bb815fc8
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 14 17:41:39 2010 +0100

    Updated Spanish translations (RHBZ#592360).

commit cced0aa3fdcef68047037a5ca1c16af55ee3f335
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 14 15:15:47 2010 +0100

    Ensure ordinary appliance is updated before trying to build supermin appliance.

commit 3c94f2b4b67b9224b42fef522fa613c77667299f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 14 12:38:39 2010 +0100

    Version 1.3.12, update PO files.

commit 8a896ff4f7e674312b022e20e966156f17b5cb74
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 13 17:07:17 2010 +0100

    Unify supermin appliance building using febootstrap 2.7

commit 5573713cae6d4e1f725eb953a73bf7e0bddcc827
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 13 09:56:27 2010 +0100

    Improve errors from tar-in/tgz-in commands (RHBZ#591155 RHBZ#591250).
    
    This commit improves the error messages from the tar-in, tgz-in (etc)
    commands by capturing the stderr from the tar command in a file and
    sending that back in the error message.
    
    The method used for the error file is primitive, and there is a case
    for a more generic error file mechanism, but this will do for now.
    
    Sample error messages after this change:
    
    $ virt-tar -u /tmp/test1.img /tmp/not.tar /
    tar_in: tar subcommand failed on directory: /: tar: This does not look like a tar archive
    tar: Skipping to next header
    tar: Exiting with failure status due to previous errors at /home/rjones/d/libguestfs/tools/virt-tar line 247.
    
    $ virt-tar -u /tmp/test1.img /tmp/test.tar /
    tar_in: tar subcommand failed on directory: /: tar: access.log: Cannot open: Read-only file system
    tar: Exiting with failure status due to previous errors at /home/rjones/d/libguestfs/tools/virt-tar line 247.

commit cca12d1a8e782a4cf08f5886fec5c2d9f66f3e7e
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 13 10:17:48 2010 +0100

    Combine common code in daemon/tar.c.
    
    This commit shouldn't result in any change in the semantics
    of the code.

commit 93b7e9b5f96964e6513485b8e2aa1ab6140cef2d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 19:55:06 2010 +0100

    Fix FileIn cmds losing synch if both ends send cancel messages (RHBZ#576879).
    
    During a FileIn command (eg. upload, tar-in) if both sides
    experience errors, then both sides could send cancel messages,
    the result being lost synchronization.
    
    The reason for the lost synch was because the daemon was ignoring
    this case and sending an error message back which the library side
    (which had cancelled) was not expecting.
    
    Fix this by checking in the daemon for the case where the library
    also cancels during daemon cancellation, and not sending an error
    messages.
    
    This also includes an enhanced regression test which checks for this
    case.
    
    This extends the original fix in
    commit 5922d7084d6b43f0a1a15b664c7082dfeaf584d0.
    
    More details can be found here:
    https://bugzilla.redhat.com/show_bug.cgi?id=576879#c5

commit e35db5af9918dc3f1be9e0b5fc55ff3ca8ffda04
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 13 17:05:41 2010 +0100

    guestfish: Fix build error in 'print_shell_quote' function.
    
    Amend commit 1c6ed48bd3cd471dc so the prototype of
    'print_shell_quote' function is correct.

commit f430740be5c00a59f8dcd95146ebff455af90657
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 19:01:29 2010 +0100

    fish: Fix guestfish -N option when called with unknown image type.
    
    Previously it was falling off the end of the loop if you
    called it with an unknown image type.

commit d1626f2d186d0646d9c70c89ee84010db5cc923b
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 18:11:37 2010 +0100

    Improved error if virt-inspector cannot find OSes in image (RHBZ#591142).

commit b172d93173b55b85339ff5268bf131b7a697b65e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 16:55:59 2010 +0100

    Fix error message in string-e command (RHBZ#588651).

commit 0db92bb19da00a50a25fe3dfa92ecb7049ddb9ed
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 15:58:00 2010 +0100

    guestfish -i and virt-inspector work on filenames containing spaces (RHBZ#507810).
    
    This commit fixes a long-standing bug which prevented guestfish -i
    and virt-inspector from working on disk images which had a space
    in the filename (or other unsafe characters).  It works by ensuring
    that the strings passed between guestfish -i and virt-inspector are
    quoted correctly in both directions.
    
    Note that this commit adds a dependency from virt-inspector to
    the perl module String::ShellQuote.  We have previously used this
    module in virt-make-fs.

commit 8da173c3985ba55505da854f56db88da5f4b98a0
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 15:01:45 2010 +0100

    Add version numbers to Perl modules (RHBZ#521674).
    
    Sys::Guestfs now contains a version number which reflects the
    ABI that we are compiled against, ie. '0.<MAX_PROC_NR>'.  This has
    the beneficial side effect of causing an error if the user tries
    to mix versions of the Perl module and the XS code.
    
    Sys::Guestfs::Lib now contains a synthetic version number which
    will reflect future changes in that module.

commit 8971ace42cb909667310565d9d9559bec2687492
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 14:26:26 2010 +0100

    Update PO files, including extra strings from Perl files.

commit 23137a98cd5ede359a369b83df54972a04b68396
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 14:24:23 2010 +0100

    po: Include strings from Perl programs in the PO files (RHBZ#559963).
    
    xgettext will only recognize '*.pl' as being a Perl file (otherwise
    it treats it as a C file and does not correctly find any strings
    in it).
    
    This commit also fixes two actual bugs that xgettext found in the
    strings in our Perl programs.

commit 970ea710d9fc191a9f1721bd51b179bb0f5a1312
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 14:19:50 2010 +0100

    po: Don't generate po/Makevars file and include Perl keywords (RHBZ#559963).
    
    I don't see a reason to autogenerate po/Makevars, and in the
    earlier commit which changed this file to being autogenerated
    we accidentally lost the special Perl keywords, copyright notice
    and bug reporting address.  Fix all of that.
    
    This partially reverts commit febff9d2a35c4f40abbaf8943146476bdeac671e.

commit 264e4c37223fe15c8c16abda3cc4d2e289c80672
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 18:10:58 2010 +0100

    Reduce imported functions in virt-df to ones which are actually used.

commit 19866f502f0f1b0752d9fca632605e2bcca6b2c6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 17:32:39 2010 +0100

    New API: fill-pattern for creating files with predefined patterns.

commit 1ec6ef51d2363e103ca6f0dd69fd9215393bea28
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 16:12:07 2010 +0100

    Run udev_settle() after swapon/swapoff (RHBZ#516096).

commit 5620f5902a01f521a840716b573e7d2483be8a56
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 12 15:29:03 2010 +0100

    fish: With both '-x' and '-i', pass through '-x' to inferior process.

commit 91accdc76ee11b473fdf805fd36cd95fa3d55da3
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 20:12:55 2010 +0100

    Version 1.3.11.

commit 5fc6346df1206e61545894dca8b8863a63a2ba93
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 19:57:52 2010 +0100

    virt-rescue: Add extra options.
    
    This commit adds the extra options '--append', '--memsize' and '--selinux'.

commit 68b4718ae86717500cdc9e82de5d4cfa6fe301eb
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 19:55:27 2010 +0100

    virt-rescue: Refresh documentation.

commit 76a35cd6cb18f741bc12797b96b8473f7cfce067
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 09:45:19 2010 +0100

    Revert "fish: Add 'please wait' message when launching (and interactive)."
    
    This reverts commit 01fedcde05c930c1413e9fe0909fa1da1f360cdf.

commit 917d57d2c9bc65773a04bbb653b5ec6f25299120
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 09:37:25 2010 +0100

    fish: Add 'please wait' message when launching (and interactive).

commit aa93c5eaff19e4b6c9822ddbf3202f4410307fb4
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 09:28:19 2010 +0100

    launch: Rearrange the code so config check is first.
    
    Move the config state check first in the guestfs_launch function,
    so that we don't reset g->launch_t or calculate the temporary
    directory in the case where the launch function will immediately
    return with an error.

commit f90c6aacc3a0c012b06876d4c744ce0c88f578fb
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 09:26:57 2010 +0100

    generator: FishAction is no longer used, remove this feature.

commit d68212ad6e71c263540ce837b939d942e2214bdd
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 09:25:32 2010 +0100

    fish: Make 'launch' function static.
    
    This commit makes the launch function static and private to
    'fish.c', and changes the generator so the function is no longer
    called for the 'run/launch' command.

commit 4260d3e6b35d610c9a90ca8ba523eca2464d6d9a
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 09:14:00 2010 +0100

    fish: In 'reopen' copy trace setting to new handle.

commit 85ea1db03a7f79f3d9c0f6b2709d07c40ac2e2ad
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 09:10:00 2010 +0100

    Ignore test1.img file in directory.

commit f18f4bc622d55dd049bf51cdddaa051fb54f7727
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 09:09:24 2010 +0100

    fish -N option unconditionally overwrites test*.img files.
    
    This is more convenient and makes it consistent with the
    'alloc' and 'sparse' commands.

commit 4f2522197c81e38ab95a307a82d2dd247f832508
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 8 09:04:28 2010 +0100

    fish: Make '-x' option enable traces instead of using separate echo path.
    
    Previously we had separate code paths for echoing commands (-x)
    and tracing (guestfs_set_trace).  This just unifies that so that
    the guestfish -x option enables tracing.

commit dfec655febdc4ec48dc679c68f8ccf49addb2556
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 23:15:40 2010 +0100

    inspector: Support filesystem-on-image VMs (RHBZ#590167).
    
    $ virt-df /tmp/dbroot.img
    Filesystem                           1K-blocks       Used  Available  Use%
    /tmp/dbroot.img:/dev/vda               3096336     593628    2345424   20%

commit c3d7d35bef57ddf34ebf0b1701290e2ef6f7e36b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 22:50:50 2010 +0100

    daemon: Use 'error' instead of 'perror' before calling 'abort'.

commit 7ee9a81361a82e22f45f7a2a427ab4aefa947ae0
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 22:49:49 2010 +0100

    daemon: gnulib module 'error' is used directly by the daemon.

commit ad4f65566ac6fb556c6b7eff4a7035617728fd16
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 22:50:22 2010 +0100

    daemon: Use parens around code section for safety.

commit db32f160a75a7669756549206da06ba1ec7b0f01
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 22:37:55 2010 +0100

    If qemu dies during launch, set an error message (RHBZ#588851).

commit 279cdee8a1a777ee66c79634a8d26e9728256a1e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 16:34:08 2010 +0100

    Version 1.3.10.

commit fc04dabbf722e7d4d22f98f0dc68cceeebd9e102
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 13:30:42 2010 +0100

    daemon: Fix read-file so it fails gracefully for large files (RHBZ#589039).
    
    Pengzhen Cao noticed that read-file would fail for files
    larger than the protocol size; this is *not* the bug.  However
    it would also lose protocol synchronization after this.
    
    The reason was that functions which return RBufferOut in the
    generator must not 'touch' the *size_r parameter along error
    return paths.
    
    I fixed read-file and initrd-cat, and I checked that pread was
    doing the right thing.
    
    This also adds regression tests for read-file with various categories
    of large file.

commit 7101bc981bfbb2407c061f9ea9f1a2a5522795f1
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 00:13:31 2010 +0100

    daemon: Fix wc* commands to work on absolute symbolic links (RHBZ#579608).

commit 705c39ad59e05360a11fa083380c73bf9b91cc92
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 00:13:05 2010 +0100

    daemon: Fix strings to work on absolute symbolic links (RHBZ#579608).

commit d28d4e84ad49a858cc07e45fbad95cd55e70484d
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 00:12:36 2010 +0100

    daemon: Fix head and tail commands to work on absolute symbolic links (RHBZ#579608).

commit cfc3d18969e72decb3bba2d904d829d8de2ab08e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 00:11:55 2010 +0100

    daemon: Fix grep and related to work on absolute symbolic links (RHBZ#579608).

commit 33379fc04174d5aa20388aff20925e637867e5a6
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 7 00:11:22 2010 +0100

    daemon: Fix checksum to work on absolute symbolic links (RHBZ#579608).

commit 6289a8536d5308159e0bd43f9f6008a15b30c127
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 6 21:55:32 2010 +0100

    daemon: Fix hexdump to work on absolute symbolic links (RHBZ#579608).

commit a773516f3ea9968b0f045f0428e8f787bad2aac6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 6 21:36:24 2010 +0100

    daemon: Fix for commands working on absolute symbolic links (RHBZ#579608).
    
    The original idea (suggested by Al Viro) was to fork and chroot
    into the sysroot and read the file from there.  Because of the
    separate process being chrooted, absolute links would be resolved
    correctly.  The slightly modified idea is to open the file in the
    daemon process (but temporarily chrooted, so symlinks resolve
    correctly), fork, and have the subprocess just be responsible for
    copying the file.  (Strictly speaking we don't need to fork, but
    this implementation is simpler).
    
    This commit just includes the changes needed to the command*()
    functions in daemon/guestfsd.c and adds an absolute symlink to
    the test ISO for testing it.  Later commits will fix the broken
    daemon commands themselves.

commit 42d8f3435c43263bd17b41b5ad0f7441419f0b5f
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 6 20:32:09 2010 +0100

    daemon: Change command to abort() on resource problems.
    
    The comment in the code describes it thus:
    
      /* Note: abort is used in a few places along the error paths early
       * in this function.  This is because (a) cleaning up correctly is
       * very complex at these places and (b) abort is used when a
       * resource problem is indicated which would be due to much more
       * serious issues - eg. memory or file descriptor leaks.  We
       * wouldn't expect fork(2) or pipe(2) to fail in normal
       * circumstances.
       */

commit f3fbe11705b9a8f34b7d53658803468187acfa14
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri May 7 14:58:32 2010 +0100

    Warn instead of dying if grub refers to non-existent kernel

commit 2aed6bdc825ac740efc99d3a6a1bc37a221ae93f
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 5 16:10:37 2010 +0100

    Update to latest gnulib.

commit 73942e05e8ad80f2ef6df04887e790ab78f89b09
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 4 16:06:58 2010 +0100

    Use link-local addresses between appliance and host (RHBZ#588763).

commit 6bb49ed6428bbd64e32ff018ab3458fd093cb14e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 4 15:06:09 2010 +0100

    Change network configuration to use macros.
    
    Change the network configuration so everything is set using
    some macros at the top of src/guestfs.c.
    
    Also, rename the macros used in the daemon so they are not the
    same.  It was a very long time since these sets of macros had to
    match the ones defined in src/guestfs.c, despite what the comment
    said.
    
    Note that this commit should not change the semantics of the
    program at all.

commit 3ef7d2421555d92d4ebd3051cb4965c8cc628625
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Tue May 4 13:35:01 2010 +0100

    Update Spanish translations (RHBZ#588733).

commit 7d5914697d24fb5de9fa9aa04607098e76899802
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 30 23:12:34 2010 +0100

    tests: In verbose mode, print dashes between each test.
    
    Only affects tests when run with LIBGUESTFS_DEBUG=1.  Lets you easily
    see when each test starts and ends.

commit 4d3564a9aba784511a6b992b065e4203c355bf1f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 30 18:27:37 2010 +0100

    Version 1.3.9.

commit 533f9018cdee5528f5c8b8c6af0afd8a6cfeb576
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 30 13:56:11 2010 +0100

    Document that guestfs_mount implies -o sync and performance problem (RHBZ#587582).

commit b3d6b305645776d23eb5dfbb123843de15035150
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 30 12:27:00 2010 +0100

    contrib: Add dependency diagram of libguestfs ecosystem.

commit 59edf8200e7e619f92d9b3f7bdd591615ffb63dd
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 30 11:34:21 2010 +0100

    contrib: Add header to README file.

commit 67e9dce940048a389bef1abe2c43a2fa8f4e599e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 30 10:51:49 2010 +0100

    lvresize: Use --force so it can make LVs smaller (RHBZ#587484).
    
    This also adds a regression test for this bug.

commit fcaca65ffc544baea67973b65e51ca9ef5e2595b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 30 09:46:40 2010 +0100

    tools: Fix documentation for CurrentControlSet (thanks Yuval Kashtan).

commit e65bb500f997aa41bbee6ffcff04326b643875d2
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 29 13:55:52 2010 +0100

    guestfs(3): Documentation on protocol gotchas.

commit a24fa0d9d26779f4b2efee7568a2df329e41b56f
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 27 15:48:38 2010 +0100

    Version 1.3.8.

commit c741f6509a5ca52a9613ffc18ba5f9cb5dc8f01e
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Mon Apr 26 15:57:45 2010 +0100

    Update Spanish translation (RHBZ#585961).

commit a2625a17c5625161cfe31daf19bf67d83afdb488
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 24 09:10:28 2010 +0100

    fish: Add 'man' command which opens the manual.

commit 1c2f449d332ff82e8a35d536d1d22495adcdf262
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 24 08:50:40 2010 +0100

    docs: Routine refresh of the documentation for guestfs(3) and guestfish(1).

commit c8c3f106029028eaefda817d831c3a54bb6d2f74
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 23 14:43:13 2010 +0100

    Version 1.3.7 - note: fixes a segfault in guestfish 1.3.6.

commit 756eb1521e509d0ab936263e2b6ca046f1594915
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 23 14:29:56 2010 +0100

    todo docs: Discuss shrinking filesystems and specifying sizes in guestfish.

commit d507d432aa20404566188e0df46aef02efcafe3e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 23 14:14:26 2010 +0100

    New API: checksums-out for checksumming many files.
    
    Useful API for verifying the integrity of virtual machines.

commit 41c76ee1e02ad6cc01c4564bf3995a68eca92d17
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 23 13:43:05 2010 +0100

    generator: Update docs for checksum to point to checksum-device.

commit 0ab5035604669cdd6ae247eaadc047de26515e1b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 23 13:42:10 2010 +0100

    daemon: Split out checksum type to program name mapping into function.
    
    This shouldn't change the semantics of the program.

commit fee14974bcd558f8e49ec2569ac28cd33a2d376b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 23 14:13:42 2010 +0100

    fish: Fix segfault in '-a' option.
    
    This fixes a segfault in the guestfish -a option which you would
    get when using guestfish 1.3.6.

commit 9c25c9c0227d09d9e0782eff1c47c9f99c665ded
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 23 10:25:35 2010 +0100

    todo docs: Integrate with host intrusion detection systems.

commit c7b982fe1b644f81003cc2196a5b1b00f664636e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 23 10:23:45 2010 +0100

    todo docs: Mapping filesystems to and from disk blocks.

commit f592e4a4e848744d081016f1162f2073f6efe749
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 22 22:29:25 2010 +0100

    Version 1.3.6.

commit f0256f8dd78ed1165a0bb3a1c9950ae64e4de227
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 22 10:42:58 2010 +0100

    fish: Add -N option for making prepared disk images.
    
    Previously you might have typed:
    
    $ guestfish
    ><fs> alloc test1.img 100M
    ><fs> run
    ><fs> part-disk /dev/sda mbr
    ><fs> mkfs ext4 /dev/sda1
    
    now you can do the same with:
    
    $ guestfish -N fs:ext4
    
    Some tests have also been updated to use this new
    functionality.

commit 9cc6b80f522574978b5df682e3a13e9a7f1c0755
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 22 10:46:34 2010 +0100

    fish docs: Be consistent about using I<-..> for options.

commit 8d164b9e6577c0b95d4ed7ea732ae3369d3ff601
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 22 10:44:35 2010 +0100

    fish docs: Use L</...> for internal links in the man page.

commit c62e933a8c663ab502523dcc3e5a98264b3011bb
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Apr 22 13:57:56 2010 +0100

    Whitelist the loop kernel module
    
    loop is sometimes a module, for example on RHEL 5.

commit 6ec05f9d4c2cc8a035ccd58e7bdcee73116f000b
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Apr 21 15:39:49 2010 +0100

    Don't die during inspection if rpm -qa or dpkg-query fails
    
    If a problem in the package database prevented package enumeration from working,
    inspection would die. This change makes it emit a warning and continue.

commit 354c64aa97542bf8384d38c671bfaec5eee20bd7
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Apr 21 15:39:48 2010 +0100

    Don't die during inspection if initrd doesn't exist
    
    This fixes a problem where inspection would die if grub.conf referenced a
    non-existent initrd. Just return an empty initrd instead.

commit 95f502552866b6cca96cff55c1564b5802fea6b6
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 20 22:20:46 2010 +0100

    Add zfs-fuse (ZFS via FUSE) support to the appliance.

commit 2fcc5b51a20357ead624d6834782a24d3f08f80e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 20 18:46:45 2010 +0100

    Remove checks for Test::Pod and Test::Pod::Coverage.
    
    Although these modules are optionally used by the Perl tests,
    they aren't necessary and won't break the build if they are not
    there.  These modules aren't available in RHEL 5.  Therefore
    remove these checks.

commit 964df26643f4d02128b115ae6d0cce38b12da942
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Tue Apr 20 16:30:27 2010 +0100

    Updated Spanish translations (RHBZ#584038).

commit 4f39f4987afff81c463eb71fe3d9724df280dbcf
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 20 13:22:09 2010 +0100

    Check user doesn't run configure, make or make check as root.
    
    (Thanks to Yufang Zhang for helping to debug this issue).

commit a49787b4432405d7191e4617734f77a9c5792821
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 20 11:04:14 2010 +0100

    Replace 'dd' in tests with use of guestfish 'sparse' command.
    
    'dd' is a very inefficient way to create files.  'truncate' is
    better, but unfortunately that command is not available in RHEL 5.
    So use the guestfish 'sparse' command instead (which also avoids
    allocating disk space).

commit 5ce65b92a902f106fbc5333b1ff8862e2fd1b3be
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 20 10:50:50 2010 +0100

    Document new version numbering policy.
    
    See discussion on mailing list:
    
    https://www.redhat.com/archives/libguestfs/2010-April/msg00005.html
    https://www.redhat.com/archives/libguestfs/2010-April/msg00057.html
    https://www.redhat.com/archives/libguestfs/2010-April/msg00058.html

commit 79ca2531922cefcf58f5f3b0ac438c747e480ca4
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 19 20:55:15 2010 +0100

    Document umask (RHBZ#582548, RHBZ#583554).

commit 5474d245c5fce8f0d46feb8204522ace6e5e1209
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 19 20:13:05 2010 +0100

    docs: Clarify documentation for mknod (RHBZ#582948).

commit 3e796f923e390dc8c383960ba7e5031d9e5d65e1
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 19 17:25:58 2010 +0100

    Update PO files.

commit 4208997d8c701268768a76e44e9243bbee5eb4db
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 19 17:13:46 2010 +0100

    Prepare for version 1.3.5.

commit dac80359fff79741120359680b30db0157fcf815
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 19 17:09:58 2010 +0100

    New APIs: base64-in and base64-out for uploading/downloading base64 content.

commit a503ac0ee73ca65c024f3caac64e2bb3fed6d9a4
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 19 16:31:24 2010 +0100

    New API: debug-upload (not a formal part of the API/ABI).
    
    Allow arbitrary files to be uploaded into the appliance, but
    only when --enable-debug-command is enabled.  This lets you
    run shell scripts, like this:
    
      ><fs> debug-upload -<<EOF /tmp/script.sh 0700
      #!/bin/sh -
      # ...
      EOF
      ><fs> debug sh "/tmp/script.sh"

commit 3ea90958351ac94555186f2f87208cb9fdc8ebbb
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 19 14:41:01 2010 +0100

    fish: Allow -<<END as a syntax for uploading "heredocs".
    
    For example:
    
        ><fs> upload -<<END /foo
        some data
        some more data
        END
        ><fs> cat /foo
        some data
        some more data

commit 4957ee1eae51405cc86a85db1c0635c7fd4ca29b
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 19 11:49:08 2010 +0100

    todo docs: Feature for base64 uploads and scripts.

commit bf0d6685f8faf60935cd6ecb057e33d0dcd6cc47
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 19 10:20:58 2010 +0100

    docs: Add virt-resize(1) link to guestfish(1) manpage.

commit 7e21c709315864f31652f1ea6a1bb298b2f7a36e
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 22:19:20 2010 +0100

    Version 1.3.4

commit 5cc0eb0658e75410c27b5f532eb8d961e6f58c10
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 20:41:28 2010 +0100

    todo documentation: Idea: List, mount filesystems by UUID and label.

commit d670e6b0d5a721f8718c677efee0c7314ee6a85b
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 20:36:11 2010 +0100

    todo documentation: remove 'virt-grow/shrink', see virt-resize

commit d2f016b4cf597e718ae211fc60f206573607d15d
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 20:35:34 2010 +0100

    todo documentation: virt-rescue now uses $TERM from library, remove from todo list

commit c855880656131d99717fe49e8be4e514e928e701
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 20:34:35 2010 +0100

    todo documentation: Remove old section on PPC bugs.
    
    No one cares for PPC, and if they do they should file these
    as bugs in the bug tracker.

commit fbc1525ae27e40f608c75640d45799fd6c4072ed
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 20:34:21 2010 +0100

    todo documentation: Remove old ideas for Python bindings.

commit 9f76c6123f75619f9247f91c785262eb26d14282
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 16:33:07 2010 +0100

    Documentation: Use 'g' instead of 'handle' in documentation.
    
    By convention we use 'g' for handles.  Copy this convention
    through to all the documentation.

commit 9447454fec0b7a2e09ca01a566587c134ffe97c3
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 16:24:03 2010 +0100

    In guestfs(3), unmount "/" directory in the example.

commit 1683bbb7dc78c333a2168f9f4d1c50da4b10d084
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 16:22:53 2010 +0100

    Add compilation/linking example to guestfs(3) man page.

commit 0984aaf6f62a07c330eaf090c8de0d7107cef4c8
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 15:59:41 2010 +0100

    generator: Use shortname in check_state() call.
    
    Saves a tiny bit of space in the library.

commit 54a385ba347d924bf32ce9c502d659f7df925267
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 15:46:08 2010 +0100

    Build top-level directories in a more logical order.

commit d90e486bf480021118fd518eefbeae3419c1d4fd
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 15:41:16 2010 +0100

    Rerun generator if images/test.iso does not exist or has been updated.
    
    The MD5 hash of this file is embedded in the output of the
    generator.

commit b5ac9b28bfe1315ee726c670264dc4bf4b1e5b4a
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 14:25:55 2010 +0100

    Fix upload losing synchronization if root not mounted (RHBZ#576879).
    
    Modify the generator so that it can correctly handle early
    cancellation for Pathname|Device|.. parameters.  This fixes
    the upload command, but consequently we need to fix the
    parameters for tar_in and t?z_in commands.  This should also
    mean that 'win:' can now be used as the second argument of
    tar_in and t?z_in commands in guestfish, whereas previously
    this wouldn't have worked.
    
    Adds a regression test for the original problem.

commit 72d88f6821b6b39af607fe6426b5d645657076d2
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 14:14:30 2010 +0100

    generator: Fix typo in a comment.

commit ba3a2c8efbc9ac2c9c5534bf4c7c1b617b61f270
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 13:33:14 2010 +0100

    Improved checking, documentation of modes (RHBZ#582901, RHBZ#582929).
    
    chmod: Disallow negative mode, document mode affected by umask.
    
    mkdir-mode: Disallow negative mode, document that filesystems
    may interpret the mode in different ways.
    
    mknod: Disallow negative mode, document mode affected by umask.
    
    umask: Check the range of umask mask value carefully.

commit c2f788f4378ca4fb8702ccad91e040b683bad25b
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 13:11:20 2010 +0100

    fish: Autocomplete 'sparse' command (RHBZ#582899).
    
    I also rechecked the list of built-in commands against
    the actual commands to make sure no others were omitted.

commit 7f200dabd20b776bb646ea344eb27b7fa4c8f458
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 13:07:56 2010 +0100

    New API: get-umask, returns the current umask (RHBZ#582891).

commit 8d3807e332d0149687fc2352385c9ea59dda9f2f
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 12:38:18 2010 +0100

    Add a build test for the 'umask' command.

commit e267b3e0566bb68921630334be12a42727d04c52
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 12:33:31 2010 +0100

    fish: Print output from some commands in octal/hex as approp. (RHBZ#583242).

commit b3385d09df368e5fe85a0a398b497dd0c0c9e55b
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 17 12:13:23 2010 +0100

    Documentation: lvcreate should say 'logical volume' (RHBZ#582953)

commit 6f686902943131edad07393d0a42d912956373cf
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Wed Apr 14 14:59:30 2010 +0100

    Update Spanish translations (RHBZ#582252).

commit e8b09886fa682fd6a4b41ba82571006275bd08cb
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Apr 14 11:13:04 2010 +0100

    Fix build error in fuse/guestmount.c.
    
    guestmount.c: In function 'main':
    guestmount.c:899: error: implicit declaration of function 'setlocale'
    [-Wimplicit-function-declaration]
    
    guestmount.c wasn't including locale.h.

commit d3110455b9e9907e7f1bf480b72e91e8aeb58068
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 13 18:42:27 2010 +0100

    New API: Add aug-clear call for clearing an Augeas node.

commit a0bc89fbf78cb1009408ca69ff82a060fef53e38
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 13 22:06:43 2010 +0100

    fish: Allow '-' prefix on command line to override exit on error (RHBZ#578407).
    
    Allow -cmd on the command line to mean that normal exit on error
    behaviour is overridden, ie. we will not exit.
    
    This allows you to do:
    
      guestfish -- command : -command : command
    
    with the second command allowing errors.  (Note that '--' is required
    to stop getopt parsing -command as an option).
    
    Also this fixes the remote case which is what the original
    bug report was about.

commit 6c478d027f40606f0839fe41177a113b9b854f77
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 13 21:26:14 2010 +0100

    fish: Update documentation: Add another pipe example.

commit ff723166940ed2cdb9c6b39095645573b021fed1
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 13 21:25:50 2010 +0100

    fish: Update documentation: Using 'lcd' command to change local directory.

commit db6bb0c1580da3efe5aca437119de264c2545acd
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 12 19:52:03 2010 +0100

    Update PO files.

commit c7a3fda6e947a9180189d22342b9a33e4a4f5950
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 12 19:32:38 2010 +0100

    Prepare for version 1.3.3.

commit 01dc1bd5dc7102923e0bfcdab86a87f526bac417
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 12 16:34:36 2010 +0100

    resize: Add --LV-expand option for expanding Linux LVs.

commit 1a4536e616cf7bbc32712e5413d7a221b4727325
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 12 16:33:46 2010 +0100

    New API: lvresize-free to extend LVs into percentage of free space.

commit 11bdaa16f3603689a45d54b01ef5df337b22bf5e
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 12 16:34:57 2010 +0100

    Fix time and timezone to be correct within the appliance.

commit 1e9c7c7f9d1012ec5d1abfb6c1721babb0f1da15
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 12 18:54:58 2010 +0100

    resize: Fix missing newline from end of print.

commit 5fc43076b3fea422003c46943d940388ef5581bd
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 12 16:32:55 2010 +0100

    resize: Fix regular expression to exactly match ^ext[234]$

commit a4afdfda47edc3fc8048294fd77294caa3ebb6a7
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 12 12:17:08 2010 +0100

    virt-resize: Mention alternate tools like gparted in the documentation.

commit 3cd25025df98c269bf0d8a90b930ddb13f93bb3c
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Mon Apr 12 16:31:43 2010 +0100

    Updated Spanish translation (RHBZ#581501).

commit aa0a97d939da470bfcfc4a46e3d1b9277f11a3e0
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 11 17:02:18 2010 +0100

    Documentation updates.
    
    Fix copyright years.
    Fix URLs to point to new PRC site.
    Make sure guestfish(1) and guestfs(3) manpages reference the
    current list of tools.

commit 5e8982e88c47f490f7a043cc41cfb67656c5a701
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 21:54:04 2010 +0100

    Version 1.3.2

commit 7f74af6baffc3f40839766c8e4ff29c6d97d96bd
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 21:23:27 2010 +0100

    New API: checksum-device for checksumming devices.
    
    Analogous to the usual 'checksum' call.

commit 57e6057fb416fcaa54bf5a37fb45212b88cc38f8
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 13:38:26 2010 +0100

    virt-resize: Enhance virt-resize so it can expand partition content.
    
    Enhance virt-resize so it can expand "first level" partition
    content, including ext/2/3/4/ntfs filesystems and PVs.
    
    Also extensively update the documentation.
    
    This has been tested on a variety of Linux and Windows guests.

commit c7120d536f7f3faf78650fbd19acabac43c81d86
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 13:21:33 2010 +0100

    virt-list-partitions: Add -t / --total option.
    
    This option lists out block devices separately:
    
     $ virt-list-partitions -lht /tmp/WindowsResized.img
     /dev/sda1 ntfs 100.0M
     /dev/sda2 ntfs 11.9G
     /dev/sda device 12.0G

commit 719bfccd51f17c05de985f3dbd8e58552e33b56e
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 13:35:31 2010 +0100

    Bugfixes for virt-resize.
    
     - copy more than 64 boot loader sectors across, since real boot
       loaders (eg. for Windows) can be much larger than this
     - copy bootable flag and ID byte to new partitions
     - start the first partition on the new disk at the same sector
       offset as on the old disk
     - sync the disks before existing

commit a8f5fe3f496fe683b620ad849886c2ddb1b546ec
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 13:19:43 2010 +0100

    New partition APIs: part_del, part_get_bootable, part_get/set_mbr_id
    
    These APIs flesh out further the partitioning API.

commit a105f45f69d0b49a77e4f7c2cb0e21f881b3670c
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 13:17:50 2010 +0100

    daemon: More reliable parsing of the output from 'parted print'.
    
    Previously we used strtok.  However this has the problem that
    strtok considers multiple delimiter characters to be like a single
    delimiter, eg. "1:::2" would be parsed the same as "1:2".  In
    other words, the previous code would skip over or fail if there
    are empty fields.

commit 74b5b55481e88b0ee4023e2a7cff5a606a3aa5cd
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 13:16:19 2010 +0100

    daemon: Make the RUN_PARTED macro take an error statement.
    
    This allows us to make the RUN_PARTED macro do something else
    along the error path, other than just returning -1.

commit 1bd7adc7a3f0efa40880ee7f95494c0408054f7b
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 13:14:54 2010 +0100

    Documentation: Clarify documentation on the bootable flag.

commit a8af5ae4e2674074fdc04a8b12764e81eddd945e
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 13:14:12 2010 +0100

    New API: vgscan
    
    Implement vgscan to allow for a full rescan of all LVM
    PVs, VGs and LVs.

commit 67b4f23976090e44498972aeaf3b3e3d9ffb25e4
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 13:13:07 2010 +0100

    New API: ntfsresize.
    
    This implements the ntfsresize operation, using the external
    program from ntfsprogs.

commit c8d9c99a3b45b30fdbd3cce59e73c451920ec730
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 10 13:20:52 2010 +0100

    virt-make-fs: Use Sys::Guestfs::Lib::feature_available helper function.

commit 22269df24e43715eb79ca1c4109532968cc2620d
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 9 09:40:59 2010 +0100

    Allow aug-ls to take Augeas variable as argument (RHBZ#580016).

commit cd882910a944d50abfed784512332d949b96a60d
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 8 19:33:57 2010 +0100

    Remove warning "No grub default" (RHBZ#580650).

commit d94957d88ce378d6f7959dc0a373a2049d394b98
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 8 19:07:45 2010 +0100

    If qemu dies during launch in "null vmchannel" mode, don't hang (RHBZ#579155).
    
    Detect if qemu dies during launch by wait(2)-ing for it, and
    then getting EOF on the qemu pipe.  This was broken in null
    vmchannel mode, causing a hang.

commit e6e0be778b29770838d174865690bb4dc5e525cd
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 8 19:06:00 2010 +0100

    Don't kill self accidentally.
    
    Always check that pid > 0 before calling kill (pid, 9).  The
    issue was that sometimes pid == 0, and this ends up killing
    ourselves.

commit 5072685cb7e90f855428d6eb3844ed0a0ac8efbb
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 8 18:53:40 2010 +0100

    Fix for "warning: unexpected connection from UID ..."
    
    This warning is currently a fatal error.  The code attempts
    to retry the accept call, but because we don't reset sock = -1
    the retry doesn't happen and it dies anyway.
    
    Set sock = -1 so the retry attempt can happen.

commit 53076f95dafe74616b55dfcf33ccab7419a67d5d
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 8 16:07:32 2010 +0100

    New API calls to upload/download txz files (RHBZ#580556).

commit dc01983f12fa6f7ac52a42f5a33497fe72da797d
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 8 15:49:14 2010 +0100

    configure: Default to using Fedora 12 repo (was Fedora 11).
    
    Fedora 11 is almost EOL at this point.

commit fd5dc32f529bb7f38b7dac7fb525269f2c2f109a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 8 15:17:07 2010 +0100

    Version 1.3.1.

commit e394410b14ef4937a33c19f1ed02b716ca80c991
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 7 20:30:46 2010 +0100

    New tool: virt-make-fs for creating filesystems on devices.

commit e6fd681cc279e6194b994f9bc8ba2cc5e4817899
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 7 21:04:01 2010 +0100

    Code cleanups related to RHBZ#580246.
    
    This includes various code cleanups:
    
     (a) A regression test for RHBZ#580246.
    
     (b) Use write instead of fwrite to write out the tar file.  This is
         just because the error handling of write seems to be better
         specified and easier to use.
    
     (c) Use size_t instead of int for length.
    
     (d) Clearer debug messages when in verbose mode.

commit 5ba82c81e8faffb7134ecb5c75d85d5a1cee31d9
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 8 08:48:38 2010 +0100

    Fix tar-in command hangs when running out of disk space (RHBZ#580246).
    
    The problem was this sequence of events:
    
     (1) File transfer goes through OK.
    
     (2) pclose returns failure (because 'tar' subprocess failed)
    
     (3) We try to cancel the transfer by calling cancel_receive.
    
    Step (3) fails because the transfer (as far as the library is
    concerned) has succeeded, so causing a hang.
    
    The more fundamental reason why we see steps (1) and (2) is that
    'tar' does NOT fail immediately if there is a write error.  Instead
    it continues reading and discarding the input until the end of the
    input before giving "Error exit delayed from previous errors".
    IMHO this is a bug with tar, since an ENOSPC write error should
    be fatal for tar.

commit 45210e94fbcc2e9a51fea9d42f1541d59c72a12d
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 6 23:54:08 2010 +0100

    fish: Print extended help when the user types an unknown command first.
    
    $ guestfish /tmp/disk.img
    /tmp/disk.img: unknown command
    Did you mean to open a disk image?  guestfish -a disk.img
    For a list of commands:             guestfish -h
    For complete documentation:         man guestfish

commit a99bb747c0604e026399cd9561dfd029e9de4236
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 6 11:03:03 2010 +0100

    Check error returns from posix_fallocate (RHBZ#579664).
    
    posix_fallocate has a non-standard way to return error indications.
    Thus all our calls to posix_fallocate were effectively unchecked.  For
    example:
    
      $ guestfish alloc test.img 1P
      $ echo $?
      0
      $ ll test.img
      -rw-rw-r--. 1 rjones rjones 0 2010-04-06 11:02 test.img
      $ rm test.img
    
    With this change, errors are detected and reported properly:
    
      $ ./fish/guestfish alloc test.img 1P
      fallocate: File too large
    
    This is a fix for:
    https://bugzilla.redhat.com/show_bug.cgi?id=579664

commit 906affae3d5ac3a9ca9f193e0795febf98b356fc
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 31 13:19:34 2010 +0100

    Signed/unsigned warning on 64 bit.

commit 43775b04b26e7a3785d641929dde0f1b2d6f96e1
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 31 13:19:34 2010 +0100

    New API: guestfs_zero_device to zero whole devices.

commit 6335bc63ae406ae70f70dea5db4212cdc45b3c1c
Author: Richard W.M. Jones <rich@annexia.org>
Date:   Tue Mar 30 21:07:27 2010 +0100

    Prettier POD CSS.

commit 8a400f2863a65eb28997b2f79a6ea31fbc971aec
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 30 17:49:44 2010 +0100

    Update PO files.

commit 124466d7bcb02406be92dc026b42c8b6f611ff91
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 30 17:49:24 2010 +0100

    chmod +x virt-resize binary.

commit f9313bbd4cbe096780b645d2ea5aad44ef33375d
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 30 17:49:06 2010 +0100

    Fix EXTRA_DIST rule.

commit 75e9440bbbb92df289e43e1dc738df10706cb51f
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 30 17:05:56 2010 +0100

    Prepare for 1.0.89.

commit f6e7c8fd32c5b7fd2eef949bea3d0106ade622f3
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 26 17:14:04 2010 +0000

    Improved version of virt-win-reg, supporting exporting and merging.

commit 1c566bf0d9eaff46c15f06f3d3202b18b71081c3
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 30 16:14:09 2010 +0100

    virt-df: Match output with native (coreutils) 'df' command (RHBZ#578123).
    
    This commit fixes the 'Use%' field in the output so it matches what
    coreutils' 'df' command would print.
    
    Firstly we change the calculation to use the space available to root,
    not the space available to non-root.  This means it matches what 'df'
    when run as root in the guest would show.
    
    Secondly we display this rounded up to the next whole percent (ie. using
    ceil), which is also what 'df' does.
    
    Thirdly we change the regression test so it tests this.
    
    Note that even with these changes you are not guaranteed to get precisely
    the same figures from inside and outside the guest, as it depends on
    how quiescent the guest is and how recently the superblock was synced.
    
    Thanks: Rita Wu

commit 149d1e7d8f3ccc8be7e0b00ffb29b2fd2c27b043
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 30 14:18:44 2010 +0100

    tools: Add basic tests for the virt-* tools.

commit 9f59df9044d267673cf1450459df03bc232cc5d2
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 30 13:45:16 2010 +0100

    tools: Sectional header for manpages in Makefile.am

commit 61808b03664a156b7ea3239387fea436bb6f5c3a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 30 13:44:29 2010 +0100

    tools: Rearrange list of tools in Makefile.am.

commit d67c7ed6c8aef3f432d1839cec1e3d3c94ccca1e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 30 13:34:16 2010 +0100

    daemon: Set TERM=dumb inside the daemon.
    
    Since commit 977edb3185fe8f we have been passing TERM from the
    library into the appliance (for the benefit of virt-rescue).
    However this changes the output of parted, which I would argue
    is a bug in parted:
    
     TERM=xterm /sbin/parted -m -- /dev/sda unit b print 2>&1 | hexdump -C
     00000000  1b 5b 3f 31 30 33 34 68  42 59 54 3b 0a 2f 64 65  |.[?1034hBYT;./de|
    
    Notice the escape-sequence junk before the official "BYT;"
    header.
    
    By setting TERM=dumb we avoid this.

commit 30749f9dff8e3db48afae755ae9ccf3cf3aef6d3
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Mar 27 11:02:03 2010 +0000

    Fix the error message when reply body is too large (RHBZ#509597).

commit 8889a0ec208c8cf457f7b361d8843a591e1ed61f
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Mar 27 10:49:24 2010 +0000

    tests: Move alarm(2) calls to the correct place in the tests.
    
    This is a re-fix for RHBZ#505329.

commit ff5169bdcfccee1de77d7ea2ea73fa10967acb71
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 26 21:08:43 2010 +0000

    Prepare for 1.0.88.

commit 1b88e1fbf2301739858a08d7ae6150598ccd11cd
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 26 20:08:45 2010 +0000

    rescue: Pass $TERM from library into the virt-rescue appliance.
    
    We set it on the kernel command line, then get it out from
    there when the rescue appliance boots.

commit c38bdf7a8a946b9547ea38d1d44ba730d0b4b6e3
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 26 20:02:10 2010 +0000

    rescue: Sync disk on exit, and improve messaging.

commit 6ffb5d0a282d73b4f4403b25bfc5d022e754ec6d
Author: Jim Meyering <jim@meyering.net>
Date:   Fri Mar 26 20:01:45 2010 +0000

    Const-correctness fix.

commit aa88fd8dfce94464e5dbe75a1e2a4fbe9223984e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 26 10:10:16 2010 +0000

    appliance: Set $PATH instead of hard-coding paths to binaries everywhere.
    
    Change the appliance so PATH includes common directories.  Thus
    we don't need to hard-code paths to binaries (eg. "/sbin/fdisk")
    everywhere.

commit e94a42cdf8bc01a592028355e7de330ef2f06b97
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Mar 25 19:44:22 2010 +0000

    perl: use newSVpvn for variable length strings.
    
    Previously we used newSVpv (str, len), but if len == 0 then
    this means Perl tries to calculate the string length using
    strlen(3).  This is not desirable when we know the length, in
    which case we should use newSVpvn instead.

commit 13181d172788c227c08b056e71c4b025774d7f85
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Mar 25 16:03:42 2010 +0000

    Update PO files.

commit 60f43c43112d24deda18f76b9ebb0240a797e3ca
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Thu Mar 25 16:03:01 2010 +0000

    Update Spanish translation of libguestfs (RHBZ#576876).

commit 6a3337371bdf8b9f1c549e000d8878df01324d0e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 24 23:28:14 2010 +0000

    Fix lvresize test on RHEL 5, by fixing guestfs_e2fsck_l.
    
    The problem is that mkfs was making an ext2 filesystem,
    which later we were checking with e4fsck.  e4fsck corrects
    an "error" on the filesystem:
      /dev/VG/LV: Adding dirhash hint to filesystem.
    e4fsck returns 1 (errors corrected) which we were interpreting
    as an error return.

commit 83a62a33db5b1c67cdd4379d87b6651c6dd69627
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 24 22:02:34 2010 +0000

    Use ext4 dev tools on RHEL 5 (RHBZ#576688).

commit a0418423282695723a6cb2d55f7a60c034f53a99
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Mar 24 21:21:23 2010 +0000

    Add support for minix filesystem (RHBZ#576689).

commit b4a1a78c91b4c374fb34b96dc6f8d368837361f1
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 23 22:10:45 2010 +0000

    Version 1.0.87.

commit e38e9f9f3e8f6d29298415e89b167f36230effbf
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Mar 22 18:38:31 2010 +0000

    New tools: virt-resize and virt-list-partitions.
    
    Virt-resize is the main contribution here, a program which can
    be used to expand and shrink partitions in disk images.
    
    Virt-list-partitions is used as an ancillary tool for planning
    resize operations.

commit 6d54efe17c119d80a9cc983cbacb7006dd1ffffd
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Mar 22 18:36:16 2010 +0000

    New API: guestfs_copy_size to copy a fixed number of bytes.
    
    This is similar to 'guestfs_dd', but it copies just a fixed
    number of bytes from the source to the destination.  It's an
    error if the source is too short or if the destination is too
    small.

commit a556c57666d1b8961108ee4f77b8b7f0309b91a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Mar 19 17:21:05 2010 +0000

    Change some _exit(0|1) to _exit(EXIT_SUCCESS|EXIT_FAILURE).

commit b2e084f0c144817a4748898537319bab32743dbd
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Mon Mar 22 10:30:25 2010 +0000

    Mac OS X: Fix configure-time tests for Ruby.
    
    For ARCHFLAGS change, see:
    http://www.ruby-forum.com/topic/129717#579065
    
    We also add a test for the <guestfs.h> header and include
    that header when testing the library.

commit 4bf10aac55ee9de3a92403226b5c338e2fd589db
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Mon Mar 22 10:29:18 2010 +0000

    guestfs.h: Include <stdint.h>.
    
    This allows programs to work if they just
      #include <guestfs.h>
    and no other headers.  It's not useful in the general
    case, but fixes some configure-time tests, particularly
    the one for Ruby on OS X.

commit ec5d88e018f3c27fb694adcdc0f994866361c15c
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Mon Mar 22 10:05:49 2010 +0000

    ocaml examples: Fix linking line so it uses local library.

commit 39556123048f6a24b4d76e0c8d68bc8ca893ce5c
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 21:47:39 2010 +0000

    Mac OS X: Disable null vmchannel implementation.
    
    As far as I can tell, Darwin has no way to check the peer euid
    of a _loopback_ TCP socket.  This is required for the "null vmchannel"
    implementation to work securely.
    
    Therefore disable this - Darwin will use one of the other supported
    vmchannel implementations instead.

commit 4f65b85d6daff9e1014029ac26c434b8e21523f3
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 20:41:41 2010 +0000

    Mac OS X: 'xdr_uint32_t' is 'xdr_u_int32_t'

commit 178f34b8b274ebf80810eb96d561ec3bc3ba9c2d
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 19:45:50 2010 +0000

    Mac OS X: For PATH_MAX, include <limits.h>

commit 38de302b9603dd344dae5c895d5c21019751a177
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 19:30:25 2010 +0000

    Mac OS X: setlocale function requires <locale.h> header file.

commit 241dbd602d6a9180e007530eb934aa132cbf61aa
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 19:15:40 2010 +0000

    Mac OS X: implement readline functions.
    
    OS X has an older version of readline with some differences
    in the names of functions.

commit 08f8ade1ed83a977a89f582f572b67a7475d625b
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 19:13:43 2010 +0000

    Mac OS X: provide alternate implementation of posix_fallocate.

commit 2f16805d1c101cd8791f44fff2f3db4607a2e2d2
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 17:49:49 2010 +0000

    Mac OS X: include <rpc/types.h> before <rpc/xdr.h>
    
    In PortableXDR this is not included automatically so we
    have to include it explicitly to get definitions for the
    XDR types.

commit 47ee10711f6e76f91d39245e0346ab914f9018f3
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 17:49:09 2010 +0000

    Mac OS X: include <string.h> in guestfs-actions.c
    
    This is required because guestfs-actions.c uses 'memset'.

commit 2417ab48bb0afae5f09e17b53fe6e0d3042d17c2
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 17:16:04 2010 +0000

    Mac OS X: Fix HAVE_GNU_CALLOC so it works when __GLIBC__ is not defined.

commit 20e18d02fdc394a3578798a39af8f3368fdfb6e5
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 17:15:26 2010 +0000

    Mac OS X: strerror_r on Macs is not like GNU strerror_r.
    
    Really this should be turned into a configure-time test.
    Perhaps one exists already?

commit d56c58e515e7537e4b4ea3177c3f1034508a9ed7
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 17:14:37 2010 +0000

    Mac OS X: define MAX macro if not already defined.

commit f1ccf734b50562e5e4033b00a86babd6010a628d
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 17:14:15 2010 +0000

    Mac OS X: kill(2) requires <signal.h>

commit b0062c9b174d6992b858ba3c261428ed63d8aaab
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 17:13:07 2010 +0000

    generator: Small fix for GODI users.
    
    GODI has an odd package layout, so the generator was unable to
    find xml-light.  Add the GODI directory to the search path.

commit 18608677d6ee064104ca76782d9d9f0679fb01cd
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 16:06:30 2010 +0000

    Ignore m4/intmax.m4

commit 11866f6856590817c0643e977d6abd6090f4e3e4
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 16:04:09 2010 +0000

    Remove out-of-date comment.

commit adebb1d0a6d8dcff990c6954f911990ae9f4809e
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 16:03:16 2010 +0000

    configure: Add --disable-daemon and --disable-appliance options.
    
    Use these on any platforms where you don't want or need to
    build the daemon/appliance combination.

commit 3e6ec0a182cd8647fcbea3ec7bcd3adec89c1a18
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 16:33:37 2010 +0000

    Run qemu with -nographic option.
    
    On Mac OS X this prevents a short "flash" as qemu opens a
    toplevel window.

commit 485903078992c4c4f6c0fb42856a1576b5bea7df
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 16:32:27 2010 +0000

    configure: Move host_cpu definition to earlier in the file.

commit 76830744af2c2d9e911a9db9e811a4df3d11e1f8
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Mar 21 21:23:47 2010 +0000

    appliance: Run depmod to create modules.dep for the kernel.
    
    Since we disabled running new-kernel-pkg in febootstrap, this
    has meant that the normal appliance has not had a modules.dep
    file.  (Supermin was unaffected by this).

commit bc9aa4a064340b14fc8775398c4237765264fd90
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sun Mar 21 19:30:52 2010 +0000

    Mac OS X: Detect bindtextdomain.
    
    These are missing on Mac OS X.  I think you would need to install
    a gettext package to get these.

commit 1c296ca64d3dfb8aa201e449c2cf8ff703fdf943
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Mon Mar 22 08:29:17 2010 +0000

    Mac OS X: Use gnulib setenv module explicitly.
    
    See:
    https://www.redhat.com/archives/libguestfs/2010-March/thread.html#00094

commit 7a779b480356685fba6476ccce2e34edf01878cd
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Mar 18 13:48:03 2010 +0000

    New APIs: Query the relationship between LVM objects.
    
    These calls allow you to query the relationship between
    LVM objects, for example, which PVs contain a VG, or which
    LVs are contained in a VG.
    
    See the example / test program 'regressions/test-lvm-mapping.pl'
    for an example of how to do this from Perl.

commit 6a2fe65e2baca89c1b93a18ffe2d20aceede3c64
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Mar 18 13:46:26 2010 +0000

    daemon: Add a trim utility function.
    
    This function trims the whitespace from around a string.  It
    does this in-place, so it can be called for malloc'd strings.

commit 71aa9fa91a2270ad79a5cf98ae42fa56b782a9ec
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 16 21:50:13 2010 +0000

    add_drive_ro adds readonly=on option if available.
    
    Change the add_drive_ro call so it adds the readonly=on option
    if qemu supports that.
    
    This just means that qemu will not try to open the drive with
    O_RDWR, and should not otherwise change the behaviour of qemu or
    libguestfs.  (In particular, writes to the read-only drive are
    still permitted, and are just discarded when the handle is closed).
    
    However it should alleviate RHBZ#571714 where udev was deciding
    to incorrectly relabel a device because we had opened the device
    for writing (even though we didn't actually write to it).

commit 08700eed8fde74d9b247509fa343c52436abd451
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 16 21:44:26 2010 +0000

    Allow qemu_supports to run earlier.
    
    Reimplement qemu_supports() internal function.  Allow it to run
    before launch so we can test qemu features.  Document that you
    should run guestfs_set_qemu as early as possible to make sure
    these tests are reliable.

commit 9b0d304876920a3f264394b567de94e5550198f1
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 16 20:06:12 2010 +0000

    Add minimal vim to the appliance for virt-rescue.
    
    virt-rescue lacks an editor.  Add vim-minimal (Fedora)
    or vim-tiny (Debian) to make up for this omission.

commit ec9e95d1e2cda66803a0f9743bc17e41b962c4ee
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 16 21:11:23 2010 +0000

    tests: Don't use <guestfs-internal.h> in tests.
    
    It was failing when including this header, as a consequence
    of earlier commit 1f56debfcfdc35d6b0.

commit 2ae97fd937e31c659ed4a6744d09d00a71cf3c7a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 16 11:50:39 2010 +0000

    guestfs.h: More adjustment to comments in the header file.

commit d5cac8ec3e78d353142ab85c0db84a005dd301f7
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 16 11:18:51 2010 +0000

    guestfs.h: Move some internal functions to the internal header.
    
    Functions like guestfs__send were never exported through the public
    API (libguestfs.syms prevented that).  However they appeared in the
    public header.  Move them to the internal header.

commit c816dcf40ac615efcd83b91deab85fbe85a8206a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 16 11:15:28 2010 +0000

    Rearrangement and comment changes in <guestfs.h> header file.
    
    There should be no substantive change.

commit 4c2feb3c30354e22c1743ced1076a9ae7c450d96
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 12 18:28:21 2010 +0000

    Prepare for version 1.0.86.

commit fd2455be4cbea945a221a96715913389ab8acb2c
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 12 16:23:46 2010 +0000

    Tab to space (whitespace fixes only).

commit b8de888952c40487c399239db26a85038a861399
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 12 16:23:14 2010 +0000

    Docs: Change exit(1) -> exit(EXIT_FAILURE)

commit 471031b39f340103ee6f585e64ba1dfb2f0ac2c3
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 12 16:20:31 2010 +0000

    Rewrite libguestfs-supermin-helper in C.
    
    libguestfs-supermin-helper was previously a shell script.  Although
    we had steadily optimized it, there were a number of intractable
    hot spots:
    
      (1) cpio still reads input files in 512 byte chunks; this is *very*
        pessimal behaviour, particularly when SELinux is enabled.
      (2) the hostfiles globbing was done very inefficiently by the shell,
        with the shell rereading the same directory over and over again.
    
    This is a rewrite of this shell script in C.  It is approximately
    3 times faster without SELinux, and has an even greater speed difference
    with SELinux.
    
    The main features are:
    
      (a) It never frees memory, making it simpler.  The program is designed
        to run and exit in sub-second times, so this is acceptable.
      (b) It caches directory reads, making the globbing of host files much
        faster (measured this as ~ 4 x speed up).
      (c) It doesn't use external cpio, but instead contains code to write
        newc format cpio files, which is all that the kernel can read.  Unlike
        cpio, this code uses large buffers for reads and writes.
      (d) Ignores missing or unreadable hostfiles, whereas cpio gave a
        warning.
      (e) Checks all return values from system calls.
      (f) With --verbose flag, it will print messages timing itself.
    
    This passes all tests.
    
    Updated with feedback from Jim Meyering.

commit c2c44e03fca20491d774d9f15013019758802207
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 12 09:47:38 2010 +0000

    guestfish: Use xstrtoll to parse Int params (RHBZ#569757 RHBZ#567567).
    
    Change guestfish so it uses xstrtoll to parse Int (31 bit)
    parameters.  This fixes two bugs on 32 bit platforms which
    failed when long = 32 bits.  long long = 64 bits on both.

commit fd1f4201c073689af8805bf4f3cb206a235964be
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Mar 12 15:10:28 2010 +0000

    Special case hostfiles handling for libntfs-3g.so
    
    The ntfs-3g project keeps bumping their soname, and this causes
    dependency problems for the Fedora package.  The root of the problem
    is we depend on /lib/libntfs-3g.so.<N>, but if <N> keeps bumping,
    the dependency keeps breaking.
    
    This commit changes the hostfiles (and hence dependency) to be on
    /lib/libntfs-3g.so.* instead.  The downside to this is we could end
    up pulling more files into the appliance than are strictly required,
    but it will fix the Fedora packaging problems being felt by the
    Fedora maintainer of ntfs-3g.
    
    After applying this commit, the change to hostfiles looks like this:
    
    @@ -1489,7 +1489,7 @@
     ./lib/libpam_misc.so.0
     ./lib/libdmraid.so
     ./lib/libidn.so.11
    -./lib/libntfs-3g.so.74
    +./lib/libntfs-3g.so.*
     ./lib/libext2fs.so.2.*
     ./lib/libpam.so.0
     ./lib/libsepol.so.1
    @@ -1520,7 +1520,6 @@
     ./lib/libnss_files-*.so
     ./lib/libgio-2.0.so.0
     ./lib/libpam_misc.so.0.*
    -./lib/libntfs-3g.so.74.*
     ./lib/libanl.so.1
     ./lib/libdevmapper-event-lvm2.so.2.*
     ./lib/libpthread.so.0

commit 12cdfe7f1f4a5a179e3ca7eacb685eb8294db2f9
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Mar 8 19:31:12 2010 +0000

    inspector: Read information about Windows guests from the Registry.
    
    This commit changes substantially the way that we get information
    about Windows guests.  We now use the Windows Registry to get
    information such as the version, product name and much else.
    
    This uses Win::Hivex (ie. the hivex library).  'reged' is no longer
    needed or used.
    
    As an incidental change, this also tries harder to search for
    %systemroot%, in the case when we cannot find boot.ini (ie.
    Windows Vista and more recent).  This ensures we can get more
    detail from those versions of Windows.

commit 8c7e0e1a9af1e5801f07c9857454bc4cfa3dd33a
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Mar 8 19:27:02 2010 +0000

    inspector: Add product_name field to output.
    
    This is a free text string containing the "product name" of
    the OS.  It's mainly useful for Windows guests, and a forthcoming
    patch will get this field from the Windows Registry.

commit 55d1b13944ce05516bf87141e311016df121f3ff
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Mar 8 19:28:48 2010 +0000

    inspector: Don't crash if $os->{kernels} does not exist.
    
    ie. on Windows.

commit 18573c2116ffcf57e4db7bd712b065f0579152d0
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Mar 8 19:24:48 2010 +0000

    inspector: Sort application names.
    
    This ensures the list of applications is stable.

commit 795f33ae813baee93f1939c723d6949a5a9d756e
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Mar 8 16:04:09 2010 +0000

    Remove plymouth libraries from the appliance.

commit 3fbb63e6ad6986af4e51beec558db803fd7ef6f7
Author: Daniel Cabrera <logan@fedoraproject.org>
Date:   Wed Mar 3 15:49:39 2010 +0000

    Spanish translation of libguestfs (RHBZ#570181).

commit 5406e5be0558dbb988b8e37941d58cbccead8aa7
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Mar 2 10:34:20 2010 +0000

    More complete fix for bash regexp quoting bug.
    
    Commit 457fccae1b665347 was not a complete fix, in that it
    didn't work properly on RHEL 5 era bash (3.2.x).  For example:
    
      file=libntfs-3g.so.74
      [[ "$file" =~ ^lib(.*)\.so\.([0-9]+)\. ]] && \
        echo "lib${BASH_REMATCH[1]}.so.${BASH_REMATCH[2]}.*"
    
    would on those old shells print:
    
      libntfs-3g.so.7.*
    
    It seems the final \. was being treated as a plain period (ie.
    match anything).
    
    The only way to work around this incompatibility is to assign the
    patterns to variables and match on those, ie:
    
      p='^lib(.*)\.so\.([0-9]+)\.'
      [[ "$file" =~ $p ]] && ...
    
    This works in both old and new shells.

commit 8b832daa38e86b4966c501c117f769f235623725
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Mar 1 13:49:25 2010 +0000

    Prepare for version 1.0.85.
    
    Update PO files.

commit 6a9d82f060875f7326ff9d5197a99d3cc3184d71
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Mar 1 14:17:12 2010 +0000

    fuse: Fix typo in test.

commit 765832914017dcc78557ec96bfb64a3c1ccbdedb
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Mar 1 13:32:34 2010 +0000

    build: Fix for bash quoting in supermin-split.sh.in (RHBZ#566511 RHBZ#566512)
    
    Bash changed how the =~ operator worked, see bash FAQ question
    E14 http://tiswww.case.edu/php/chet/bash/FAQ and
    http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=487387#25
    (RHBZ#566511).
    
    This also stops stray "builddir" (yum database) files being
    incorporated into supermin hostfiles in Koji (RHBZ#566512).

commit 397d85c61ceef31f639adf2f1abfa356b40eb1fb
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Mon Mar 1 09:38:07 2010 +0000

    Updated Polish translations (RHBZ#502533).

commit f15efd96b32df7e3f358573962aaa06bfc8c4ecd
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 25 20:02:38 2010 +0000

    Remove bogus msgstr from kn.po.

commit a74a89e7854d0512b88e2724950d00cc1bb6d098
Author: Guido Günther <agx@sigxcpu.org>
Date:   Wed Feb 24 09:07:56 2010 +0100

    List application in Debian based vm images
    
    Hi,
    attached patch adds the code to list applications installed in Debian
    based vm images.
    Cheers,
     -- Guido
    
    >From 9427a14725b33415058a0713923c62bd231504ec Mon Sep 17 00:00:00 2001
    From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
    Date: Tue, 23 Feb 2010 21:05:02 +0100
    Subject: [PATCH 2/2] Add application listing for Debian

commit 08b92044f1176aa63c11542573a405790ba84e72
Author: Guido Günther <agx@sigxcpu.org>
Date:   Wed Feb 24 09:06:23 2010 +0100

    Debian package format
    
    Hi,
    Minor nitpick: the Debian folks usually refer to deb as the package format not dpkg.
    Cheers,
     -- Guido
    
    >From 7a9665d40e0a3109833de10f17831ae06fc8885a Mon Sep 17 00:00:00 2001
    From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
    Date: Tue, 23 Feb 2010 21:04:37 +0100
    Subject: [PATCH 1/2] Debina package format is called 'deb' not 'dpkg'

commit 1cc7ce5ce76cbe7d703744a0b49c4c8c572aa9fa
Author: Guido Günther <agx@sigxcpu.org>
Date:   Tue Feb 23 20:42:48 2010 +0100

    check for grub/menu.lst too
    
    On Tue, Feb 23, 2010 at 08:07:14PM +0100, Guido Günther wrote:
    > On Tue, Feb 23, 2010 at 07:52:43PM +0100, Guido Günther wrote:
    > > Hi,
    > > attached patch makes virt-inspector find the kernels on Debian systems.
    > > Since there is no /etc/grub.conf it falls back to
    > > $grubpartition/grub/menu.lst.
    > Patch got somehow broken. New version fortchcoming. Sorry for the noise.
    Attached now. No idea where the 'if' went in the first version ;)
     -- Guido
    
    >From d30b4946f017ff8bde9d4ff62f93c418a707d9e8 Mon Sep 17 00:00:00 2001
    From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
    Date: Tue, 23 Feb 2010 19:50:40 +0100
    Subject: [PATCH] Check for grub/menu.lst if /etc/grub.conf can't be found

commit a97902bd6363d2ad4b2dc62b603c413fd42a7595
Author: Guido Günther <agx@sigxcpu.org>
Date:   Tue Feb 23 18:55:56 2010 +0100

    Use 'service' if installed
    
    Hi,
    attached patch should make:
    
    http://git.debian.org/?p=pkg-libvirt/libguestfs.git;a=blob;f=debian/patches/0003-appliance-Use-service-udev-start-instead-of-running-.patch;h=c9e6b8489807d4fb1247cb6a8b6f9799bad2a09e;hb=d3a21b5b6850fc3c6e7903d0f5cafa3eb4197d49
    http://git.debian.org/?p=pkg-libvirt/libguestfs.git;a=blob;f=debian/patches/0004-Ubuntu-Prefer-starting-udev-by-hand-instead-of-using.patch;h=64b65a971b186e6ab1c9351e94b46d6f5aa242e0;hb=d3a21b5b6850fc3c6e7903d0f5cafa3eb4197d49
    
    superflous. If there's an init script it uses 'service' or falls back to
    calling the init script directly if it isn't there, otherwise it starts
    udev directly. Tested on Debian only so far. The patch is based on
    Rich's above two patches.
    Cheers,
     -- Guido
    
    From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
    Date: Tue, 23 Feb 2010 18:49:34 +0100
    Subject: [PATCH] Check for service and use it if it's there
    
    Based on Richard's two patches for the Ubuntu build.

commit cfaee054a2f60376448c69b29932a560bf789b8e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 24 10:33:27 2010 +0000

    Update PO files.

commit ed1cae839db08b5e100f41442de386b98302a296
Author: Shankar Prasad <svenkate@redhat.com>
Date:   Wed Feb 24 10:32:03 2010 +0000

    Added Kannada translations (RHBZ#567860).

commit 7fbdb1289110063b86e674109915f27ae85e9765
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 22 12:53:16 2010 +0000

    Spin off hivex as a separate upstream project.
    
    This commit makes the semi-independent hivex library into a
    separate upstream project.  The git repo for hivex is now:
    
    http://git.annexia.org/?p=hivex.git;a=summary
    
    Downloads of hivex are available here:
    
    http://libguestfs.org/download/
    
    All questions, patches, bugs etc should be sent to the libguestfs
    mailing list and bug tracker.

commit 6cabeee266574bc6c639d54635f20bca1db57ec1
Author: Guido Günther <agx@sigxcpu.org>
Date:   Sun Feb 21 16:07:20 2010 +0100

    enable scrub on Debian

commit fde39da653e26e09698c95b088b16c105765a99a
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 19 13:51:07 2010 +0000

    hivexsh: Print hex bytes >= 0x80 correctly.
    
    These were being interpreted as signed chars, and thus printed
    as "ffffff80" etc.

commit 990f2ff23f41d0beb49b6444a7cbf152aa567932
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 19 13:50:31 2010 +0000

    Remove unused Perl modules.
    
    These were 'use'd but not actually used.

commit 56fbbcebfc1c028ef7306fa1fe95c4c15290cd21
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Feb 16 08:06:04 2010 +0000

    Update PO files.

commit af73929b8e4d748d3a603f57cf905e1f9ddb6eb3
Author: Rajesh Ranjan <rranjan@redhat.com>
Date:   Tue Feb 16 08:04:59 2010 +0000

    Add Hindi translations (RHBZ#565759).

commit d58816cdb9ab769d3cc8e441286afc1c65ec4df4
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 15 23:15:17 2010 +0000

    Turn ProtocolLimitWarning into link to documentation section.

commit b2712cb772f8f82501f97ed462e24b26db62df37
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 15 22:58:22 2010 +0000

    initrd-cat: Needs ProtocolLimitWarning.

commit aa2b8e775af39876356e0e0377f3c572e27a49c8
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 15 22:53:40 2010 +0000

    Remove references to FTP, replace with FUSE.
    
    We originally intended to implement an FTP server (and before
    than, an NFS server).  But we didn't implement either.  We
    did however implement a FUSE service (guestmount) which takes
    the place of both.

commit 49cb89f96ff99c1c63b6ff19f6df5029c5f2df08
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 15 15:55:38 2010 +0000

    Remove some unused variables.
    
    Since we have to compile with -Wno-unused-variables, we don't
    spot unused variables in code.  I found these by compiling the
    code in Ubuntu.

commit a69d7bfdffd6f66c89015d8e9c1a39ce2a868024
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 15 15:34:34 2010 +0000

    Distribute .gitignore files.
    
    These are useful for Debian since they keep the tarball unpacked
    in git.

commit cb21ea851ab5c9c0582ee47176cf56b6d5556c79
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 15 15:33:13 2010 +0000

    Add 'make quickcheck' rule to run a quick check.

commit 5f1d6d6445529ef91f84282fc6811ee8f2ed4254
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 12 19:43:17 2010 +0000

    Version 1.0.84.

commit 266496b60917e06997a2f086b3cd1db78cc7a935
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 12 14:06:25 2010 +0000

    daemon: Don't need to prefix error messages with the command name.
    
    The RPC stubs already prefix the command name to error messages.
    The daemon doesn't have to do this.  As a (small) benefit this also
    makes the daemon slightly smaller.
    
    Code in the daemon such as:
    
      if (argv[0] == NULL) {
        reply_with_error ("passed an empty list");
        return NULL;
      }
    
    now results in error messages like this:
    
      ><fs> command ""
      libguestfs: error: command: passed an empty list
    
    (whereas previously you would have seen ..command: command:..)

commit 5b35d6bb5cc5c68bb1b0ffd3b2ee38e4c1f4a01f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 12 13:42:57 2010 +0000

    generator: Don't prefix error messages with command name.
    
    The command name is already being added by the RPC stubs, so
    adding it again in Perl and C# just results in doubled error messages
    like:
      foo: foo: the error

commit 9e21acc88c92ce35e4beedb012d420e101564fdd
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 12 12:13:40 2010 +0000

    Sys::Guestfs::Lib::open_guest: Add interface parameter.
    
    This allows you to override the default QEMU block device emulation.

commit 4c2f1773ecb5461570b24d72d332b519b066a59d
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 12 12:08:58 2010 +0000

    Sys::Guestfs::Lib::open_guest: Remove freeform parameters.
    
    Remove the ability to pass freeform parameters to Sys::Virt->new.
    We don't use it, it makes the code more complex to modify, and
    indeed there are no other args that Sys::Virt->new supports so
    this would never be used.
    
    Also change $readwrite to $rw to match parameter name.

commit 5b93fbb8efcc13de40eab41c55b72315ebb9b39e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 12 11:47:18 2010 +0000

    New APIs: add-drive{,-ro}-with-if allows you to set QEMU block emulation.
    
    The default if=... comes from configure time (currently it
    defaults to if=virtio).
    
    This change allows you to set the QEMU block emulation.
    
    We don't think this will be used very often, but virt-v2v
    requires it in order to work around a subtle problem with
    running 'mkinitrd' in an appliance attached to a guest.

commit 0d3acb8aa036ad727a2bad84e23a9247f3cea45f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 12 11:46:40 2010 +0000

    generator: 'interface' is a reserved word in Java.

commit 84f0d90e70b020583e7a968f528081690279e3af
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 12 11:27:44 2010 +0000

    add_cdrom: Update docs for adding ISO images.
    
    See also RHBZ#563450 (NB: This commit does not fix the bug).

commit 9dc5800c3fb80f45e60ac7b91d45b3a1a282e53e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Feb 9 18:00:24 2010 +0000

    Use mount-options instead of mount to avoid implicit -o sync.
    
    guestfs_mount adds -o sync implicitly.  This causes a very large
    performance problem for write-intensive programs (eg. virt-v2v).
    
    Document this as a "gotcha".
    
    Change the tests, guestfish, Sys::Guestfs::Lib, guestmount to use
    mount-options instead.
    
    (Note that this gotcha does not affect mount-ro).
    
    The source of the performance problem was first identified by
    Matthew Booth.

commit f56bda487780f20a645ad9667f248c49b142fe8d
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Feb 9 16:30:18 2010 +0000

    Add -enable-kvm option to qemu command line.
    
    If the version of qemu being used supports -enable-kvm option,
    then check if /dev/kvm is openable and add this option.
    
    I have found this option makes no difference, although it is
    *supposed* to enable KVM (hardware virtualization) support.

commit a91ec9c76793ab341abd9bfd19d6020009ba628b
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Feb 9 12:26:22 2010 +0000

    New API call: initrd-cat to list a file from an initrd.

commit 828bfd62e4fbf2410abdb4f1f50b83dfb8a5350f
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 8 22:51:19 2010 +0000

    Remove invalid Plural-Forms header from ml.po.

commit ec7fe7f911248122f7efdd087908301c259709dd
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 8 16:44:41 2010 +0000

    Documentation: Added a section on libguestfs gotchas.

commit 845c6a92fda7abc9e6c6a1c73c273322d3773507
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 8 10:18:31 2010 +0000

    Make virtio block driver be the default for the appliance.
    
    Previously this caused a serious performance regression,
    but we believe this is now fixed:
    https://bugzilla.redhat.com/show_bug.cgi?id=509383

commit 10d06191de87d68b4ed4df4e6efe6684ca0563fb
Author: Ani Peter <apeter@redhat.com>
Date:   Mon Feb 8 10:06:32 2010 +0000

    Added Malayalam translations (RHBZ#562710).

commit ce15f177b3ecfe2f5b02846d1c6a3f777bd3c5bd
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 18:54:52 2010 +0000

    Distribute hivexsh.1.html HTML file.

commit 445eacc298cc436b623d314eb7133c1b280db27f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 18:40:14 2010 +0000

    Update PO files.

commit a711fbfbeb7ffe52e72e559f7e1df7119464c180
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Feb 5 17:02:47 2010 +0000

    RHEL5: Keep old automake happy by defining docdir

commit 02b83e99ccb04c1948cf6e5caa4dc3ee90df9266
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 18:01:18 2010 +0000

    Add scripts to EXTRA_DIST.

commit b4cf62fbfe6c54c723e5707b6340db15f2d01d87
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 17:19:30 2010 +0000

    Update PO files.

commit 2e742c1c342e010f997748a44f0f505738035fc7
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 17:19:21 2010 +0000

    Prepare for version 1.0.83.

commit 81eeb16edaf2f43d61d9a296544e9b7b5ef08a09
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 17:19:01 2010 +0000

    Add files to EXTRA_DIST.

commit 519ed92bbef45063d8a26d81f8dd941c8628fde4
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 15:12:09 2010 +0000

    hivex: example6: Don't double backslashes.

commit 810ebda1838cf9c925ddd1387108031a6d5ed129
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 15:05:36 2010 +0000

    hivex: example6: Hypothetical addition of keys for viostor.

commit 953f17ad7a9f4891eb45b79ea7f201ebdfa228d0
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 14:50:19 2010 +0000

    hivex: Fix handling of inline VKs.

commit 533762be1142006ea97155067fe03ef29c50dc89
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 13:47:32 2010 +0000

    hivexsh: Set correct type for 'expandstring' values.

commit 26550e7a6f77f869bd0ab25d0e8c753b2b5dd3bd
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 12:59:43 2010 +0000

    hivex: Documentation and cleanups.

commit c3ce631d983baaa559d9096732d3a884c91567f0
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 12:59:18 2010 +0000

    hivex: Make limits into macros.

commit b010f0274a41b0fb4c50265c41c7459cb437ab15
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Feb 5 12:57:53 2010 +0000

    hivexsh: Remove unused variable.
    
    This removes an unused variable left over by
    commit ab608f3948d903af64e814b2e67949a1a71d93a4.

commit 2d0d89ff71188727cc18e5013b683f15bff485d1
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 16:33:18 2010 +0000

    hivex: Complete the implementation of adding child nodes.

commit 4d7c606e963ea0dc48853c36549a14703f197c32
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 18:42:58 2010 +0000

    hivex: More debugging around nk 'unknown2' field.

commit 31bedd6b8b51ea0642c5fbc717908b1f33fbc804
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 17:59:11 2010 +0000

    hivex: Check hash fields in lf/lh records.

commit 8d799103f13df36089f5c405d0b0a070f7ea25c1
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 16:32:22 2010 +0000

    hivexsh: del command: Fix error message.

commit 12c4632c8e980ad59c302ee64725e975318e1c9b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 16:31:55 2010 +0000

    hivexsh: lsval: Remove stray quotation mark.

commit b31a2ab2f65e6df378f9a180f98d803b2b24725b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 16:31:09 2010 +0000

    hivexsh: cd command: fix error handling
    
    The error behaviour of hivex_node_get_child is subtle, so the 'cd'
    command wouldn't always report errors correctly.  This fixes it.

commit 331dbab2c52e51073b9249bfa072c0c2bdf46a0a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 16:29:32 2010 +0000

    hivex: allocate_block should update valid block bitmap.
    
    The internal allocate_block() function wasn't updating the bitmap,
    so if you revisited a block which you had allocated in the same
    session, you could get an EFAULT error.

commit 3dfca2abf1f1128581d615ba98efb057c8706681
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 16:29:11 2010 +0000

    hivex: More debug messages.

commit 986f7c0d3e83aa7faff3c6cf0a0642a5d6faa14b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 16:28:26 2010 +0000

    hivex: Documentation update.
    
    ntreg_lf_record can have id "lf" (old-style hashes) or "lh" (new-
    style hashes).

commit 7107e0097b3d50374135ef3db368c76ac8ab3154
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 16:27:58 2010 +0000

    hivex: Some missing le32toh endianness conversions.

commit cd9e4273e522637084b4cf5bcf19dcb09ccc2dcf
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 14:12:04 2010 +0000

    hivexsh: Document some peculiarities of the "cd" command.

commit 5cc4a196b5592b3e672ce54b54ae651a7ecd4190
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 18:10:38 2010 +0000

    hivex: Implement deleting child nodes.

commit 72dda977c6a594459015c0c5605b17f269329aae
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 13:24:27 2010 +0000

    hivex: Add flags argument to internal get_children() function.
    
    When we later call get_children to visit the intermediate
    ri/lf/lh records, we have already deleted the subkey nk-records,
    so checking that those nk-records are still valid is not very
    helpful.
    
    This commit adds a flag to turn these checks off.

commit ccaa1f54b313453a02b02c454c910c5fbef1377b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Feb 4 13:26:04 2010 +0000

    hivex: Don't die on valid registries which have bad declared data lengths.
    
    Some apparently valid registries contain value data length
    declarations which exceed the allocated block size for the
    value.
    
    Previously the code would return EFAULT for such registries.
    However since these appear to be otherwise valid registries,
    turn this into a warning and just use the allocated block size
    as the data length (in other words, truncate the value).

commit ade92e9fa8572f0da78472d5d852f20bc020ab33
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 18:09:52 2010 +0000

    hivex: Minimal registry example.
    
    This is the smallest registry you can make and still have it
    load correctly in Windows regedit.

commit 1a8d34f3509d85472bed52e0bccdef1d1e4a6f91
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 18:04:31 2010 +0000

    hivexsh: Add 'setval' and 'commit' commands.
    
    This adds the 'setval' and 'commit' commands to the hivex shell.
    
    Also adds some example scripts showing use of these.

commit 082b55e3c1a98cc2dab95f12e6de9feaeeac11dd
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 17:59:03 2010 +0000

    hivex: Begin implementation of writing to hives.
    
    This implements hivex_node_set_values which is used to
    delete the (key, value) pairs at a node and optionally
    replace them with a new set.
    
    This also implements hivex_commit which is used to commit
    changes to hives back to disk.

commit faacf44c03cc37e96204a5fbea86db7b6388fe69
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 18 11:08:56 2010 +0000

    hivex: Add HIVEX_OPEN_WRITE flag to allow hive to be opened for writing.
    
    If this flag is omitted (as in the case for all existing callers)
    then the hive is still opened read-only.
    
    We add a 'writable' flag to the hive handle, and we change the way
    that the hive file (data) is stored.  The data is still mmapped if
    the file is opened read-only, since that is more efficient and allows
    us to handle larger hives.  However if we need to write to the file
    then we have to read it all into memory, since if we had to extend the
    file we need to realloc that data.
    
    Note the manpage section L</WRITING TO HIVE FILES> comes in a later
    commit.

commit 92fe2486479c37b6776097a6c0b7e97eb45cf083
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 17:35:53 2010 +0000

    Tools for analyzing and reverse engineering hive files.
    
    This commit is not of general interest.  It contains the tools which
    I used to reverse engineer the hive format and to test changes.
    Keeping these with the rest of the code is useful in case in future
    we encounter a hive file that we fail to modify.
    
    Note that the tools are not compiled by default.  You have to compile
    each explicitly with:
    
      make -C hivex/tools <toolname>.opt
    
    You will also need ocaml-extlib-devel and ocaml-bitstring-devel.

commit e669064b0d80d1eb0110f591768be0fb10727b71
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 17:52:05 2010 +0000

    hivexsh: Change some exit(1) -> exit(EXIT_FAILURE)

commit 6a9b03650ba361eebb7e48e842f590a022ac0f23
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 17:50:51 2010 +0000

    hivexsh: Only print final \n when interactive.
    
    When hivexsh was called non-interactively, it would print an
    annoying extra line.  Only print this line if we are being
    used interactively.

commit 8e98274b2fa6f0cb7d43ea13f0cb1f29a071d322
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 17:48:37 2010 +0000

    hivexsh: Change handling of prompt argument to rl_gets()
    
    Make the result of isatty into a global variable (is_tty).
    
    Change the rl_gets() function so it takes the prompt string
    instead of a "display prompt?" flag.  rl_gets() then consults
    the global to find out if it should display the prompt at all.

commit 30f5475a426b450649e556f2b5d4849fad2b244a
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 17:45:20 2010 +0000

    Document that this flag is clear for default keys.

commit 2ed176fc87eac628136f39e08f77c5278b52ac97
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 17:44:39 2010 +0000

    Misc documentation and gitignore update.

commit 6495e33d2a6008e101069b65baba74d7f0d5b913
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Feb 3 17:41:15 2010 +0000

    Move htole*/le*toh macros into a separate header file.
    
    This allows us to reuse these macros in hivexsh later.

commit cafddffc014a55b4350614c074b2374406fcf027
Author: Sandeep Shedmake <sshedmak@redhat.com>
Date:   Thu Feb 4 08:50:14 2010 +0000

    Add Marathi translations (RHBZ#561671).

commit 64b93f70fb34510e16d9881b0cd9756689a6dbf4
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Tue Feb 2 22:08:24 2010 +0000

    Polish translations (RHBZ#502533).

commit c40ce5a46f9790135def97707bd141fd7999884f
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Feb 2 08:49:56 2010 +0000

    Update PO files.

commit 7549ad68db8f7c674f28d107820069f82f14036a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Feb 2 08:49:10 2010 +0000

    Add Gujarti translations (Sweta Kothari) (RHBZ#560918).

commit 873c555480aea4d6864aad5e8cba507a7c474201
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Feb 1 14:50:19 2010 +0000

    Update Oriya translations (thanks Manoj Kumar Giri) (RHBZ#559498).

commit a4148e58fe3b360e72d0e79e17459d48c99b7073
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 29 19:12:34 2010 +0000

    hivex: Reimplement hivexget as a simple shell script.
    
    hivexget is currently a large C program.  Now that we have hivexsh
    (the shell) we can reimplement hivexget as a simple bash script that
    calls out to hivexsh.

commit 8c84a11df4eb287eff72197dc69087ec7d3b465a
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 29 12:18:30 2010 +0000

    hivex: Add 'hivexsh' program (shell for navigating registry hives).

commit f92f835203aa172d767bd68f3ae41788e1d1d2e7
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 29 14:56:13 2010 +0000

    Set locale in C programs so l10n works (RHBZ#559962).
    
    This commit adds the calls to setlocale &c to all of the current
    C programs.
    
    It also adds l10n support to hivexget and hivexml which lacked them
    previously.
    
    To test this, try:
    
    LANG=pa_IN.UTF-8 guestfish --cmd-help
    
    (You can only do this test after installing the package, or at
    least the 'pa.mo' mo-file in the correct place).

commit 20a69e73fc30489c2ea87e2d8687b37f9e5b58df
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 29 14:24:54 2010 +0000

    Another unreadable file: /var/log/yum.log

commit fbc760922da29362eb92a4fbb7ffc5ebff7350e3
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 29 09:57:37 2010 +0000

    Update PO files.

commit 7e4693a3b7c4cf8c24653b6c160f1c7dad040094
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 29 09:57:12 2010 +0000

    Add Tamil translation (RHBZ#559877) (thanks to I.Felix)

commit 1c148d939900e02ae06ada9470996cd7745eb248
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 29 09:46:52 2010 +0000

    Update Punjabi translation (RHBZ#559480) (thanks Jaswinder Singh)

commit 7e4629bf1c51862d1a917d3081aa94c46a47bdaa
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 29 09:02:14 2010 +0000

    Fix regressions/rhbz557655.sh when debugging is enabled (v2).
    
    The previous fix didn't cope with ordinary warnings emitted by
    qemu (eg. "open /dev/kvm: No such file or directory").  This
    is a hopefully more complete fix for the problem.
    
    See also commit 3cd7ce75f1ce5048a4d9f6aeaf66aff3194e1096.

commit f05eb0bc82bdd7eab93db9e02fa43c4593bf4418
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 28 22:35:16 2010 +0000

    Fix regressions/rhbz557655.sh when debugging is enabled.
    
    The regression test for RHBZ#557655 would fail if debugging was
    enabled, because debug output would get mixed up with the test
    output.
    
    To reproduce the error do:
    
    LIBGUESTFS_DEBUG=1 make -C regressions TESTS=rhbz557655.sh check
    
    This commit disables debug for just this test.

commit 7348e543417486f6f0aaa4eff320ebacb8163fc0
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 28 22:06:27 2010 +0000

    Implement 'vgrename' and 'lvrename' APIs.

commit 8e0082b44ea973b43697f00f69d071b261ec5a16
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 28 19:28:21 2010 +0000

    Version 1.0.82.

commit 5649e8efd33f3e392cf45dc8587c9a8d4feb07ab
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 28 17:39:06 2010 +0000

    hivex: Const-correctness fix on header_checksum (thanks Jim Meyering).

commit 2f67c5c803e213935690542cdbafcfa1c409e53b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 28 16:25:19 2010 +0000

    hivex: Update some previously unknown nk-record fields.
    
    Update these fields with what we found out from reverse engineering
    the file.  Also bring the unknownX field names into line with
    visualizer.ml.

commit 7bb4f34c2777d1d891295aad50d545586018f0a0
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 21 17:07:42 2010 +0000

    hivex: Fix calculation of block size for vk data blocks.

commit 92ba9e965c975d4534a863368bdb11bc5d3f5075
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 21 17:07:21 2010 +0000

    hivex: Display incorrect block size as unsigned in an error message.

commit 39c4602220cd56bddfcb13b5c8e9e585e0914c79
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 21 16:19:49 2010 +0000

    hivex: display bad block offset in hex

commit d1680acb2729d6a3a09f7b2ed189fbea7b79614b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 21 16:19:26 2010 +0000

    hivex: hive type in vk-record is an unsigned 32 bit int

commit 464c2232401d1380b4049e9dcfed9498e36ca4bb
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jan 19 15:21:06 2010 +0000

    hivex: Add missing le32toh conversion around field access.
    
    This was missing.  It only worked because we test on a little
    endian platform.

commit 60be0736ecab41ee93e0f4b02575d9b75ccd5cc4
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jan 19 15:20:36 2010 +0000

    hivex: Clarify some more fields.
    
    Taken from sentinelchicken.com documentation.

commit 017f02e50f96b7842306286659b3422ff6e7fe9b
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jan 19 12:22:10 2010 +0000

    hivex: Modify children/values functions to return intermediate blocks.
    
    Modify the functions that return child subnodes and values so they
    can also be used to return a list of the intermediate blocks.  This
    is so we can delete those intermediate blocks (in a later commit).
    
    We also introduce an offset_list structure which is used for collecting
    lists of offsets, ie. lists of nodes, values or blocks.
    
    Note that this commit should not change the semantics of the code.

commit 7e2408f40d5cf47220e7b7ea35bd3157e489e912
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jan 19 10:06:00 2010 +0000

    hivex: Add value_any callback to the visitor.
    
    The visitor currently contains lots of value_* callbacks, such as
    value_string which is called back when the value has type string.
    
    This is fine but it makes it complicated to deal with the case where
    you just want to see 'a value', and don't care about its type.
    
    The value_any callback allows visitors to see values generically.

commit c1e75d9e3c6a00a56e7609f684a772d57c2d29fa
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 18 17:56:13 2010 +0000

    hivex: Move header checksum code into a function.
    
    This function can be reused later.

commit 5508a7f0d4a0dd6f0cc16159945f76e1334d676f
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 18 15:24:16 2010 +0000

    hivex: page 'offset_next' field is really 'page_size'.
    
    The documentation, as usual, is contradictory.  However this
    field is definitely the page size in all observed registries.
    Furthermore the following field marked 'unknown' is always
    zero, although this contradicts what the sentinelchicken.com
    paper says.

commit 9d1871630de4eb8129e61f42fd78b5417056ce0c
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 18 14:14:40 2010 +0000

    hivex: Collect more statistics about registries.

commit 90a4b9d881b6642c51201ae03b513117f1621906
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 18 10:58:06 2010 +0000

    hivex: Store filename in hive handle.

commit 0670ab06289170e59637e7dd3becbeda4187fbf6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 28 10:46:01 2010 +0000

    Added Oriya translations (RHBZ#559498).
    
    Translation by Manoj Kumar Giri.

commit f2be7d423cb004a2470ac175d8c215998d06e649
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 28 09:59:08 2010 +0000

    supermin: Add special case for libgcc_s-*.so.N
    
    Because this file contains the GCC version and a date, it frequently
    changes on the host.  Create a special case so that this file is
    matched using a wildcard for the version/date part of the name.

commit a0c372e333a4c8ae8e22e88deb4e67a79290e04a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 28 09:49:27 2010 +0000

    Added translations for Punjabi (pa-IN) (RHBZ#559480).
    
    Translated by Jaswinder Singh.
    
    Also updated pot files.

commit 8f8f0e24e4c1cce686c1f61c759263a8b69f01ac
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jan 26 10:45:14 2010 +0000

    supermin: Prevent multilib corruption (RHBZ#558593).
    
    On some combination of installing, upgrading and removing the base
    libguestfs package on x86_64, multilib can corrupt libguestfs by
    leaving a copy of /usr/bin/libguestfs-supermin-helper around which
    references the wrong architecture (usually, contains links to the
    i386-based appliance, when the x86_64 appliance should be constructed).
    
    This commit changes libguestfs-supermin-helper so that the script is
    the same on all architectures.  Instead, the library passes the
    differences to the script (eg. $host_cpu).  Because the i386 and
    x86_64 libraries should be at different locations (/usr/lib vs
    /usr/lib64) this should prevent multilib from screwing things up.
    
    Related links:
    https://bugzilla.redhat.com/show_bug.cgi?id=558593
    http://rwmj.wordpress.com/2009/11/16/please-someone-shoot-multilib/#content
    https://bugzilla.redhat.com/show_bug.cgi?id=235752

commit 0f886d63b2c80bdf09af41bd359b69db43861618
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jan 27 15:30:03 2010 +0000

    Added Telugu translations (RHBZ#559237).
    
    Also ran 'make -C po update-po' to update the POT file.

commit f6c92dd9ac9ade6402c876facce978805664d5d2
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 25 16:16:55 2010 +0000

    supermin: Ignore more unreadable files found on RHEL 6.

commit d51526af7bb721a094488069bc51817baac891d8
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 25 12:22:36 2010 +0000

    Sync to latest Gnulib.

commit 857268c77d951dde6abfb0bf743706d5ebeef76d
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 22 11:01:06 2010 +0000

    guestfish: Use xstrtol to parse integers (RHBZ#557655).
    
    Current code uses atoi to parse the generator Int type and
    atoll to parse the generator Int64 type.  The problem with the
    ato* functions is that they don't cope with errors very well,
    and they cannot parse numbers that begin with 0.. or 0x..
    for octal and hexadecimal respectively.
    
    This replaces the atoi call with a call to Gnulib xstrtol
    and the atoll call with a call to Gnulib xstrtoll.
    
    The generated code looks like this for all Int arguments:
    
      {
        strtol_error xerr;
        long r;
    
        xerr = xstrtol (argv[0], NULL, 0, &r, "");
        if (xerr != LONGINT_OK) {
          fprintf (stderr,
                   _("%s: %s: invalid integer parameter (%s returned %d)\n"),
                   cmd, "memsize", "xstrtol", xerr);
          return -1;
        }
        /* The Int type in the generator is a signed 31 bit int. */
        if (r < (-(2LL<<30)) || r > ((2LL<<30)-1)) {
          fprintf (stderr, _("%s: %s: integer out of range\n"), cmd, "memsize");
          return -1;
        }
        /* The check above should ensure this assignment does not overflow. */
        memsize = r;
      }
    
    and like this for all Int64 arguments (note we don't need the
    range check for these):
    
      {
        strtol_error xerr;
        long long r;
    
        xerr = xstrtoll (argv[1], NULL, 0, &r, "");
        if (xerr != LONGINT_OK) {
          fprintf (stderr,
                   _("%s: %s: invalid integer parameter (%s returned %d)\n"),
                   cmd, "size", "xstrtoll", xerr);
          return -1;
        }
        size = r;
      }
    
    Note this also fixes an unrelated bug in guestfish handling of
    RBufferOut.  We were using 'fwrite' without checking the return
    value, and this could have caused silent failures, eg. in the case
    where there was not enough disk space to store the resulting file,
    or even if the program was interrupted (but continued) during the
    write.
    
    Replace this with Gnulib 'full-write', and check the return value
    and report errors.

commit 731edd8b6a27a87919429c0a04dfc207ffbb08ec
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 25 11:34:56 2010 +0000

    Add 'filesize' call.
    
    Returns the size of a file.  You can already do this with 'stat',
    but this call is good for scripting.

commit ce7d792d47b2e934e46a5459e526859c4ca224bb
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 21 10:54:34 2010 +0000

    Missing crc kernel module on RHEL 6 / Linux 2.6.32 (fixes RHBZ#557195)

commit 001e5fba9827dd94c7f7041a2971a8d4f53b3797
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 15 14:06:32 2010 +0000

    hivex: Various improvements in header parsing, thanks to better documentation.

commit 3ef913fcf349dfc28a04807f08751a2703b4ac25
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 15 12:42:02 2010 +0000

    hivex: Print header fields.  Print all offsets in hex (in debug output).

commit 94537cd5c8e8ae763af594ecb641df5e6dbf78d3
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 15 12:41:34 2010 +0000

    hivex: Reenable checksum calculations, but don't check result.

commit 845b649511175ed7c57bcc2c73a685862d497c6a
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jan 15 12:40:56 2010 +0000

    hivex: Update documentation.

commit f7421d7354234b6c52c0cf242f26f86c73129a0b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 14 16:46:13 2010 +0000

    hivex: Send all debug messages to stderr.

commit 212e31485f6f8228c38b983e74633e6c862aad12
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 14 16:45:59 2010 +0000

    hivex: Remove stray debugging message.

commit 91c6f1d40fd5aa54092b521afe2e19c69c6d06be
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 14 16:29:47 2010 +0000

    hivex: Documentation: Add environment variables section.

commit 6a8043d7a871ce0d45cfbf2b662dfe8904dd1422
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 14 16:29:40 2010 +0000

    hivex: Whitespace change.

commit 697b5a0be480a5cc77fe4c4073276b23973cdbcb
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 14 16:21:47 2010 +0000

    hivex: Move STR* macros into C file.
    
    Don't pollute the public header file with these macros.

commit bf8509469cbca70e467beaae5f4169230f783b00
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 14 13:26:46 2010 +0000

    hivex: Small updates to the documentation.

commit 152445b6c1c851f9a50586883754308c3830d1e4
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jan 13 14:55:04 2010 +0000

    Fix generation of HTML documentation for website.

commit 9858949709ee8dde5af1e607e67372ca09b30e8b
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jan 13 13:08:30 2010 +0000

    Add guestfs.pod and guestfish.pod to EXTRA_DIST.

commit 80c061c48dcb47e5d410801add11c2ea22564115
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jan 13 13:03:28 2010 +0000

    Prepare for version 1.0.81.

commit 02b88d0a6df9142fa4719d4d343c35d5a5a58a9e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jan 13 11:24:44 2010 +0000

    Update to latest Gnulib.

commit d6db820d3ac028872fd686b6ad30cd3506a870cb
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jan 7 12:21:42 2010 +0000

    qemu: Upstream regression of -stdio serial option.
    
    Best explained by the comment in the code:
    
        /* Newer versions of qemu (from around 2009/12) changed the
         * behaviour of monitors so that an implicit '-monitor stdio' is
         * assumed if we are in -nographic mode and there is no other
         * -monitor option.  Only a single stdio device is allowed, so
         * this broke the '-serial stdio' option.  There is a new flag
         * called -nodefaults which gets rid of all this default crud, so
         * let's use that to avoid this and any future surprises.
         */

commit 65ed51504cf7c8eb9f91f0582d5b7ade314b1e1a
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jan 6 09:55:57 2010 +0000

    inspector: Update example XML and RNG schema.
    
    This updates commit a59dcdbd1b0a28c960e3792165a13f2daf4f6c35.

commit 6382f661295f4f9f1aefccaaa620c156eb09a7a2
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jan 5 23:04:57 2010 +0000

    inspector: Make RPM application data more specific (RHBZ#552718).
    
    List applications with epoch, release and arch data.
    
    If epoch is 0, don't store this as an empty string, but as
    undefined, and don't output empty <epoch/> element in the XML.

commit e94de6714b78b3ca69d6202776691e923e514724
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 4 15:39:49 2010 +0000

    Use linker script to control visibility of symbols.

commit b9db50de897c115edc3db31295393bbaec10118b
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 4 14:55:24 2010 +0000

    generator: Move all library generation code together.

commit a9d0ab835abbe3c20e3125fbd2d328576379c43e
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 4 14:40:08 2010 +0000

    generator: Print total lines of generated code.

commit ca0f8da202e6f14eea5f470ae2bd667a186f103a
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jan 4 14:51:36 2010 +0000

    C#: Add documentation about experimental nature of these bindings.

commit 1581a957f2c4c664c3f114371085a3b23a1c9de3
Author: Richard Jones <rich@koneko.local>
Date:   Sat Jan 2 19:46:20 2010 +0000

    Experimental C# bindings.
    
    Tested in only limited situations, with Mono on Linux.

commit b0924146320f16c9451817c8897e80b4ab457f26
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Jan 2 19:47:37 2010 +0000

    Update copyright years.

commit 0f2b5ae6ee58eeab10af119a355228b877599a00
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Dec 31 12:26:04 2009 +0000

    Move guestfs(3) and guestfish(1) man pages into subdirectories.
    
    These manual pages have for a very long time 'lived' in the top
    source directory.
    
    Clean up this situation by moving those manual pages (plus associated
    generated files) into the src/ and fish/ subdirectories respectively.

commit 58ff8aa6ff50bd495647d0eb1fc5eea8c96e6d7d
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Dec 31 12:16:10 2009 +0000

    generator: Move src/guestfs-bindtests.c next to other src/ files.

commit d8be98e0e62b23c844fb19a72f5052564ee30628
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Dec 31 11:51:48 2009 +0000

    generator: Use Continuation Passing Style (CPS) in output_to function.
    
    This makes the code simpler, shorter and less error-prone.

commit e4f45b8a73bf981a7296730a79c49cf30fc04cf6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Dec 31 11:29:49 2009 +0000

    generator: Rename GPLv2 to GPLv2plus, LGPLv2 to LGPLv2plus.
    
    The licenses are "any later version", so reflect this in the
    naming of the parameter to generate_header.

commit b5d0aaaaaca8781c75340e7d33049bb775a28815
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Dec 31 11:22:26 2009 +0000

    generated code: Set copyright years to 2009-xxxx when current year > 2009.

commit 152ba575cdbb419b11780caa7d0f2a2763f9ec2c
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Dec 31 11:20:56 2009 +0000

    Remove separate inspector_generator.ml, combine this with generator.ml.
    
    This commit combines the previously separate "inspector_generator.ml"
    program which generated bindings for virt-inspector.
    
    Having two separate programs caused no end of troubles for developers,
    so we now combine them into a single program.
    
    NOTE: OCaml xml-light is now *required* in order to rebuild the
    generated code.

commit 0ff8037ca27f38c29b0961dd2eb073d15dcf6be3
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Dec 31 10:52:08 2009 +0000

    generator: Comment and whitespace changes only.

commit 0f278c6441a67b89850212d757f657efcc499d60
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Dec 18 19:20:37 2009 +0000

    daemon: Work around udevsettle issue (RHBZ#548121).

commit 2e6861836e346011beba332469e1ee7e61098f41
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Dec 16 11:53:48 2009 +0000

    Prepare for 1.0.80.

commit 1ef74ef1cb3017f11c2df3a393f430d5b479fa2e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Dec 16 11:57:51 2009 +0000

    Include latest Polish translations (Piotr Drąg, RHBZ#502533).

commit affb915d24671bcba54e62a16ff9313b1e0600a6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Dec 16 11:55:21 2009 +0000

    Update PO files.

commit 1dd8352c753ab3d882343e9f23209d650cd00847
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Dec 16 11:54:53 2009 +0000

    build: Fix typo in filename.

commit 859d76a79844a40fa72f9cd1716d6094d5ec8bc3
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Dec 16 11:53:30 2009 +0000

    build: Remove references to old contrib/ files which were removed.

commit 62a61ec349f6ca3b4507a744865f4f4fc0d03def
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Dec 16 11:15:26 2009 +0000

    appliance: Special case handling for libbfd in the supermin appliance.
    
    The libbfd library has a constantly changing, non-standard and
    very long name, eg:
    
    /usr/lib64/libbfd-2.20.51.0.2-7.fc13.so
    
    Just add a special case to deal with this.  This fixes the guestfs_strings
    command, which relies on the external strings binary which uses this
    library.

commit 19c65c68135194f6e0977dfe09dd4d64b9527c0f
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Dec 16 11:04:10 2009 +0000

    appliance: Ignore unreadable dbus helper programs.

commit afeb2526b21e37674241e2e9ba02259ab1be8fd5
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Dec 7 11:28:21 2009 +0000

    lib: Link with $(LTLIBTHREAD), required by Gnulib lock module.
    
    This fixes commit cada248a53858341c91f70392e8f5b6e47d9b4fe.

commit 8005edb49bace88830a952d48c79cb5a68910bac
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Dec 4 15:38:09 2009 +0000

    appliance: Fix code which gets list of kernels.
    
    The first 'ls' command was failing, so the second 'ls' command
    would never run at all.

commit b29d38a131a88fed7756a38211d4b6a1bc1df692
Author: Jim Meyering <jim@meyering.net>
Date:   Fri Dec 4 15:34:41 2009 +0000

    accommodate leading "+" in git submodule output
    
    * cfg.mk (_submodule_hash): Also filter out "+".
    * autogen.sh: Likewise.

commit 1d917e74f0145c2cab084512a5437672d14e8c40
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Dec 4 14:35:55 2009 +0000

    lib: Add thread-safety to global list of handles.
    
    This commit uses the Gnulib 'lock' module to implement a mutex on
    the global list of handles which is stored by the library.
    
    Note that Gnulib nicely avoids explicitly linking with -lpthread
    unless the application program itself links to -lpthread.  Locks
    are only enabled in multithreaded applications.
    
    $ ldd src/.libs/libguestfs.so.0.217.0
            linux-vdso.so.1 =>  (0x00007fffcb7ff000)
            libc.so.6 => /lib64/libc.so.6 (0x00007f96a4e6c000)
            /lib64/ld-linux-x86-64.so.2 (0x00007f96a544d000)
    
    Please enter the commit message for your changes. Lines starting

commit 5d082d2a4ec37f4c550c69be19ea66704e57f93a
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 30 14:11:20 2009 +0000

    daemon error handling: Define a new function reply_with_perror_errno.
    
    This allows you to save the errno from a previous call and
    pass it to reply_with_perror.
    
    For example, original code:
    
      r = some_system_call ();
      err = errno;
      do_cleanup ();
      errno = err;
      if (r == -1) {
        reply_with_perror ("failed");
        return -1;
      }
    
    can in future be changed to:
    
      r = some_system_call ();
      err = errno;
      do_cleanup ();
      if (r == -1) {
        reply_with_perror_errno (err, "failed");
        return -1;
      }

commit 2fa5bfd9ef984e6edf60af4beba92c7bdee345c6
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 27 14:14:21 2009 +0000

    daemon error handling: recursive_mkdir shouldn't need to set errno.

commit 52106fd2cef47f6ed1a55bb560b0312344c73718
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 30 13:55:04 2009 +0000

    daemon error handling: Clear errno before calling stub functions.
    
    This just ensures that we accurately report errors, even if our
    error path code doesn't set errno.  We won't end up with a bogus
    errno left over from a previous call.

commit afc1294ec7779a740f4b84527e5bea6a54818ca7
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 27 13:42:43 2009 +0000

    Whitespace change.

commit 05a8e6977f3bfa2aa75bccc92eb2b0511b960fbb
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 22:33:52 2009 +0000

    virt-rescue: Freshen documentation.

commit a6cee1767b128fed5c18e1d4f3daab66d81c1a91
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Thu Nov 26 22:32:15 2009 +0000

    guestfish: Freshen documentation.

commit 508be61bef365237f2762c8eac1091b976f52f94
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 15:38:48 2009 +0000

    daemon: Move prototypes around to keep functions grouped logically.

commit 0d75d1661b387776742667733ae8c72f29637a2b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 16:06:03 2009 +0000

    Fix error handling in 'zero' function.

commit 20d36aa78eb53b6d52a1212bd2250486e323aed0
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 15:17:37 2009 +0000

    daemon/Win32: Add contributed test script to test daemon using Wine.
    
    This test script allows you to test limited features of the
    Windows daemon by running it on a standard Fedora host using
    Wine.
    
    Read contrib/README and contrib/guestfsd-in-wine.sh in detail
    before using.

commit 6c27da7194b4f9c95f9e8fd2b827cb7b68065416
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 14:42:54 2009 +0000

    Ignore guestfsd.exe (Windows daemon).

commit 1bbf4244ce7dd29593c4ee554e1356ae92ef5501
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 14:34:35 2009 +0000

    Remove old contrib/febootstrap directory.

commit 2421cc302d81f598235e6c4b7d58ac4c8e27d4e4
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 14:26:44 2009 +0000

    Update PO files.

commit 082578dd09fe6ed94767948c23fb7fa65d7f2bbe
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 14:13:27 2009 +0000

    Make realpath call optional, disable it for Windows.

commit 8a92b36d81ce27b7f14badfc8f30aab571bdbcae
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 11:58:27 2009 +0000

    build: update gnulib submodule to latest

commit d536f0756749949a769b36c8834ad28096eee129
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 13:23:56 2009 +0000

    daemon: program_name must be defined for Gnulib error module.

commit f4ba70651689c0999a45cfd481539b718ebba650
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 11:52:28 2009 +0000

    daemon/Win32: use gnulib modules connect, socket and symlinkat (for readlinkat).

commit 2c62f9ab2e1cba2184c82e4ab3b84b535f5935e6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 11:26:40 2009 +0000

    daemon/Win32: provide htonl, htons, ntohl, ntohs functions.
    
    These functions are not available on Windows.

commit 027b595cc101947b89c597f58e7f2b57414d9f58
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 11:13:00 2009 +0000

    daemon/Win32: Use Gnulib perror module.

commit e96b1ca8434a02f5245d3b38321e35d583fd6e85
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 11:01:01 2009 +0000

    daemon: Link guestfs_protocol.[ch] into the daemon directory.
    
    Instead of doing a recursive call into the src/ directory to build
    the object files, hard link the source files into the daemon
    directory and build them separately.
    
    See:
    http://www.redhat.com/archives/libguestfs/2009-November/msg00254.html
    
    Thanks to Jim Meyering for noticing a typo in the original version.

commit 437f3f250db565c2069b39420f98730041bc4587
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 10:52:37 2009 +0000

    daemon: Typo generator_build -> generator_built

commit dc57c223913936cc1a13a3e5d0575acc26ed7a13
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 09:31:35 2009 +0000

    daemon: Indent C macros to reflect nesting level.

commit ce275df4a5bdc53b96c782a6668543a3ec110f79
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 26 09:29:02 2009 +0000

    daemon/Win32: Win32 can't fork message moved to separate function (Jim Meyering)

commit 829dd8fc9f933605de49f31e553577344c778643
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 22:20:22 2009 +0000

    guestfs documentation: Missing space.

commit 5b97d3cdcf128172fca909e9fa41912c48e607e8
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Wed Nov 25 21:41:51 2009 +0000

    guestfs: Update architecture section of documentation.

commit 0c98f0d7eeba52d60c38e7de0ae85cad5bc4302d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 17:12:00 2009 +0000

    Update PO files.

commit 71ea777a7e026a30a662e477cea0c4d65c61f504
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 17:10:33 2009 +0000

    daemon: Fix build on Unix.

commit 4920599544ef2c1cc6b47c54adb80be183cb5bb1
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 16:54:46 2009 +0000

    daemon: Fix sync() call on Unix.

commit f6fcfaf6fa69eb42e586c03487634e092ac768be
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 16:33:00 2009 +0000

    daemon/Win32: update comment

commit 5c756f33bad5c16a84e82aa986a2a78ac2d9b68b
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 15:00:19 2009 +0000

    daemon/Win32: Supply MAX macro for challenged platforms.

commit 6a0a8f68688351b58625b8492abd38fd24e0c327
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 14:59:30 2009 +0000

    daemon/Win32: Windows can't daemonize.

commit bae7b922440cafd807417c1dec14f83d57364528
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 14:56:42 2009 +0000

    daemon/Win32: Windows replacement for umask.

commit dc919f3a17a3e5ffc48d6f998012b69eb12c9dcf
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 14:53:17 2009 +0000

    daemon/Win32: Replace setenv with Win32 equivalent.

commit 5d9c2b9e9cf4af291b27120585d36ddfb8650d8d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 14:45:20 2009 +0000

    daemon/Win32: Use xdr_u_int for PortableXDR compatibility.
    
    PortableXDR didn't support xdr_uint32_t.  xdr_u_int is the same type.

commit f73a84eb2d635592b6c38d1a72a1c517709088e1
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 14:40:52 2009 +0000

    daemon/Win32: Don't bother blocking SIGPIPE on Win32.

commit bac1003dbbe696a964460963e80efacbc4134f41
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 14:40:39 2009 +0000

    daemon/Win32: Use gnulib getaddrinfo module.

commit b5c264c9f3ab181489aedb8fbeae78fb6cd65dbe
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 13:07:05 2009 +0000

    daemon/Win32: Implement statvfs using GetDiskFreeSpaceEx.
    
    At the time of writing Gnulib didn't support Win32 for its
    fsusage API.  Therefore this patch uses GetDiskFreeSpaceEx
    if it's available (on Windows) otherwise falls back to using
    Gnulib fsusage.

commit c4a2f4ac503752ff46462eea985e9642e18ac955
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 12:24:01 2009 +0000

    daemon: Move statvfs code into separate file.
    
    This makes no functional change to the code.  It just moves the
    statvfs-related code out of daemon/stat.c into a new file called
    daemon/statvfs.c.

commit b9ac22b92d26edcf16ffeaf48b04c74984504eb0
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 12:17:10 2009 +0000

    daemon: Use gnulib futimens module.
    
    Instead of checking for futimens support and falling back
    (incorrectly in one case) to using futimes, use gnulib's
    module.
    
    However the gnulib module does not yet support Win32, so
    this change is only really useful on platforms like RHEL 5.

commit b9265139bd83798986dfaea9df22f42557ea2a12
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 11:59:20 2009 +0000

    daemon/Win32: Use gnulib pread module.

commit 8aa31ef67d24dc0b30ec25f389049055a3d6d7c7
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 10:26:48 2009 +0000

    sync: Windows implementation of sync() call.
    
    Replace calls to sync() with calls to sync_disks() which supports
    Win32 via FlushFileBuffers.

commit dc4786b6acd20c25c691bae7c16fee5e8ee7b90d
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 24 16:16:08 2009 +0000

    daemon: Alternate implementation of posix_fallocate.
    
    If the posix_fallocate function is not available [ie. Windows]
    use an alternate implementation that just loops and writes.

commit 0793f57e38831ff1b7ce11f3f89ca03d2896f867
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 24 16:10:13 2009 +0000

    dd: Missing include of <string.h>
    
    Breaks compilation on Windows.

commit 46995f5108343599ad42474701adb9d006da45a1
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 11:38:44 2009 +0000

    daemon/Windows: Define _WIN32_WINNT when compiling on Windows.

commit 9c0e7f5d873ab7744b2982d681d98554b3d160e3
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 16:24:49 2009 +0000

    build: update gnulib submodule to latest

commit 10c7c593247db959f2f1741a444fabde216afe7c
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 25 15:29:39 2009 +0000

    build: update gnulib submodule to latest

commit f74a87968e034175058964773ed3cd04688cb100
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 24 18:17:07 2009 +0000

    supermin: Die with an error if no kernels found (RHBZ#539746).
    
    Updated with a suggestion from Jim Meyering to use the '-d'
    option to ls to avoid a future case of directories matching.

commit 615a8eeb4f5d19cfdab010fe2d1a6c202749dc43
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 24 15:19:08 2009 +0000

    New tool: virt-list-filesystems
    
    Use this program as a convenient way to list the filesystems
    available in a disk image or libvirt guest.
    
    Example:
    
      $ virt-list-filesystems /dev/vg_trick/Debian5x64
      /dev/debian5x64/home
      /dev/debian5x64/root
      /dev/debian5x64/tmp
      /dev/debian5x64/usr
      /dev/debian5x64/var
      /dev/sda1
    
    This is designed to make it easier for novices to use guestfish
    and guestmount.  In particular with guestmount this acts as a way
    to get a list of filesystems to use with the '-m' option.  ie:
    
      $ virt-list-filesystems unknowndisk.img
      /dev/sda1
      /dev/sda2
      $ guestmount -a unknowndisk.img -m /dev/sda1 /mnt

commit 4e882f2899396b69988bbf75264a508ca0183aaa
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 24 14:27:56 2009 +0000

    availability: Document how to check for single API calls
    
    This documents how to use autotools and dlopen(3) to test for
    the availability of single API calls at compile time and run time
    respectively.

commit a939e228a719f7a7220886f3a1c40ebf02a4d334
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 24 14:05:57 2009 +0000

    availability: Add a test for this call.
    
    Because all the tested groups are optional, there's not really
    a group we can reliably test, therefore test against the
    empty list (which should not fail).

commit 91124bdd36725b8a5f77f701438938ff73e6708a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 24 14:00:34 2009 +0000

    availability: Clarify and fix documentation.

commit ad7348d5ed54a020461c47130077629ca2965d6b
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 24 14:04:28 2009 +0000

    generator: Passing "" to StringList tests should turn into empty list.
    
    This is a bug in the generator which wasn't being tickled.  If
    you had a test which expected a StringList or DeviceList parameter,
    and you passed "" to that test, then you'd (probably) expect to be
    testing an empty list, but in fact you got a single element list
    containing an empty string.  This fixes it so you get an empty list.

commit a51d37122dd1dd7d51e59f42b81e6234e91481bf
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 24 16:00:23 2009 +0000

    daemon: Fix return value from aug_defnode.
    
    Bug fix - the return value from this function was wrong
    in the no-Augeas case.

commit 4a4228a5160eacc1ba73263dab92ea78b0f5b16a
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Nov 22 19:15:56 2009 +0000

    Implement 'dd' command.

commit 96e7a64d2db6319254577cae1a2677d860ba5211
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Nov 22 19:14:48 2009 +0000

    Use STRPREFIX instead of STREQLEN.

commit 668a1232d108c5fad91a4bded9f0229abefd7a9b
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Nov 22 19:14:19 2009 +0000

    generator: second parameter to upload is Dev_or_Path, not String.

commit 61a316df4d950be1782f3d25a3a914fc83b85d90
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Nov 20 18:45:22 2009 +0000

    build: Add missing dependencies in perl directory
    
    make all in the perl directory was missing a check that the library had been
    built.
    
    make check in the perl directory was missing a check that the appliance and test
    images had been built.

commit b7e9c572d053a5a9a7e629c43c5fc7f34540006a
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Nov 20 18:43:20 2009 +0000

    build: Ensure building appliance depends on guestfsd
    
    Previously, only the update.sh rule checked the daemon had been built. update.sh
    is called directly from within make.sh, so in that path the dependency was never
    checked. This adds the daemon dependency explicitly to the rebuild-from-scratch
    path.

commit c2e485dc562c95251449a1a19bae7c1eca8a8fc3
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Nov 20 18:05:49 2009 +0000

    build: Don't re-check generator.ml for each generator_built in daemon directory

commit b79e9d5ae8149641f35dd2c11e6b773cd0bae14b
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Nov 20 17:52:27 2009 +0000

    build: Rebuild the daemon as necessary from other directories
    
    This change ensure that making the appliance will always rebuild the daemon if
    required.

commit 5994599170d1fb83cdd557c8a639c10968b207b3
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Nov 21 21:11:44 2009 +0000

    Update TODO file.

commit 46610af2e3a45ea0efd0b242897931796be4adad
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 18:20:28 2009 +0000

    perl: Add Sys::Guestfs::Lib::feature_available
    
    This is a nicer Perl wrapper around $g->available call.
    
    Update the other code in Sys::Guestfs::Lib to use it before using
    LVM, Augeas.

commit f71cfa5dd3942198a7859d59f04d592fb96c408a
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 16:32:53 2009 +0000

    availability: Skip tests when functions are not available.

commit 70108c42036bd92c9801fc05b3cfef5c82629ae6
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 14:10:06 2009 +0000

    availability: Add optional groups and implement guestfs_available call.
    
    The current groups are defined very conservatively using the
    following criteria:
     (a) Would be impossible to implement on Windows because of
         sheer architectural differences (eg: mknod).
     (b) Already optional (augeas, inotify).
     (c) Not currently optional but not implemented on older RHEL and
         Debian releases (ntfs-3g.probe, scrub, zerofree).
    
    The optional groups I've defined according to these criteria are:
    
     . augeas
     . inotify
     . linuxfsuuid
     . linuxmodules
     . linuxxattrs
     . lvm2
     . mknod
     . ntfs3g
     . scrub
     . selinux
     . zerofree
    
    (Note that these choices don't prevent us from adding more
    optional groups in future.  On the other hand to avoid breaking
    ABIs we would not wish to change the above groups).
    
    The rest of this large commit is really just implementation:
    
    Each optional function is classified using Optional "group"
    flag in the generator.
    
    The daemon has to implement a function
    
      int optgroup_<name>_available (void);
    
    for each optional group.  Some of these functions are fixed at
    compile time, and some do simple run-time tests.
    
    The do_available implementation in the daemon looks up the correct
    function in a table and runs it.
    
    We document the optional groups in the guestfs(3) man page.
    
    Also: I added a NOT_AVAILABLE macro in order to unify all the
    existing places where we had a message equivalent to
    "function __func__ is not available".

commit 1ad7bdff78f1840040c31a87c5d4f23adb6c33fd
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 13:06:49 2009 +0000

    availability: Add guestfs_available.
    
    Start a new API allowing groups of functions to be tested for
    availability.
    
    There are two reasons for this:
    
    (1) If libguestfs is built with missing dependencies (eg. no Augeas lib)
    then the corresponding functions are disabled in the appliance.  Up till
    now there has been no way to test for this except to speculatively
    issue commands and check for errors.
    
    (2) When we port the daemon to Win32 it is likely that major pieces of
    functionality won't be available (eg. LVM support).  This API gives
    a way to test for that.
    
    There is no change for existing clients: you still have to check for
    errors from individual API calls.
    
    For new clients, you will be able to test for availability of particular
    APIs.
    
    Usage scenario (A): An LVM editing tool which requires
    both the LVM API and inotify in order to function at all:
    
      char *apis[] = { "inotify", "lvm2", NULL };
      r = guestfs_available (g, apis);
      if (r == -1) {
        /* print an error and exit */
      }
    
    Usage scenario (B): A general purpose tool which optionally provides
    configuration file editing, but this can be disabled, the result
    merely being reduced functionality:
    
      char *apis[] = { "augeas", NULL };
      r = guestfs_available (g, apis);
      enable_config_edit_menus = r == 0;

commit 91a1d026251b0c2f2d348f9f0ac2a918b81440af
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 11:48:51 2009 +0000

    daemon/Win32: Use gnulib modules for first porting to Win32.

commit 5a0ef22ae585c1f69ed8d20e550e552e5cd34561
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Nov 20 16:48:38 2009 +0000

    build: Add missing dependency libguestfs.la->guestfs_protocol.h

commit f8e7f7efdb192494a8498a6e4c25bee652011ff0
Author: Jim Meyering <jim@meyering.net>
Date:   Fri Nov 20 16:25:00 2009 +0100

    build: correct sed transformation to work also on .git-module-status
    
    My patch was wrong.
    I kept the sed transformation the same in the two places,
    but it wasn't strict enough to also work on the file contents.
    Sorry about that.  This fixes it.
    
    >From 93927cc7b9f63c414e5bfeb7eba393fde3295601 Mon Sep 17 00:00:00 2001
    From: Jim Meyering <meyering@redhat.com>
    Date: Fri, 20 Nov 2009 16:23:17 +0100
    Subject: [PATCH libguestfs] build: correct sed transformation to work also on .git-module-status
    
    * autogen.sh: Use a more strict sed transformation so it works also
    on the contents of .git-module-status, which has no prefix.
    * cfg.mk (_submodule_hash): Use a stricter sed regexp.

commit b735b655ceb910702a3aad43565a6cde03692ee9
Author: Jim Meyering <jim@meyering.net>
Date:   Fri Nov 20 14:30:57 2009 +0100

    build: make autogen.sh update .git-module-status, as it should
    
    I ran autogen.sh, but then make was always failing like this:
    
        $ make
        cfg.mk:141: *** gnulib update required; run ./autogen.sh first.  Stop.
    
    Here's the fix:
    
    >From f743f32079fea2e8a17c7f5b59305e584c75dba0 Mon Sep 17 00:00:00 2001
    From: Jim Meyering <meyering@redhat.com>
    Date: Fri, 20 Nov 2009 14:29:55 +0100
    Subject: [PATCH libguestfs] build: make autogen.sh update .git-module-status, as it should
    
    * autogen.sh: Without this, "make" would always say "gnulib update
    required; run ./autogen.sh first", even after you'd run autogen.sh
    successfully.

commit 11e9ec59bb46cb1264bd58b6907e6e2f52f0ab8c
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Nov 20 12:18:06 2009 +0100

    maint: use EXIT_* symbol (not constant, 2) to indicate key/path not found
    
    * hivex/hivexget.c (EXIT_NOT_FOUND): Define.
    (main): Use exit (EXIT_NOT_FOUND), not "exit (2)".

commit 0688ca60c193fa3eb9c896ff0bf906bbcc635a1b
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Nov 20 12:15:14 2009 +0100

    maint: use EXIT_SUCCESS and EXIT_FAILURE, not 0 and 1 in "usage", too
    
    Convert by running these commands:
    perl -pi -e 's/\b(usage ?)\(1\)/$1(EXIT_FAILURE)/' \
      fish/fish.c fuse/guestmount.c
    perl -pi -e 's/\b(usage ?)\(0\)/$1(EXIT_SUCCESS)/' \
      fish/fish.c fuse/guestmount.c
    * fish/fish.c (main): Replace 0/1 with EXIT_SUCCESS/EXIT_FAILURE.
    * fuse/guestmount.c (main): Likewise.

commit 710a6b99ed70a0486b7dd9676c99c4f127047020
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Nov 20 12:09:42 2009 +0100

    maint: use EXIT_SUCCESS and EXIT_FAILURE, not 0 and 1 to exit
    
    Convert all uses automatically, via these two commands:
    git grep -l '\<exit *(1)' \
      | grep -vEf .x-sc_prohibit_magic_number_exit \
      | xargs --no-run-if-empty \
        perl -pi -e 's/\b(exit ?)\(1\)/$1(EXIT_FAILURE)/'
    git grep -l '\<exit *(0)' \
      | grep -vEf .x-sc_prohibit_magic_number_exit \
      | xargs --no-run-if-empty \
      perl -pi -e 's/\b(exit ?)\(0\)/$1(EXIT_SUCCESS)/'
    * .x-sc_prohibit_magic_number_exit: New file.
    
    Edit (RWMJ): Don't change Java code.

commit 94a2ad3bf5c6a87dfcbffed40faba87605d9ad38
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Nov 20 11:50:54 2009 +0100

    maint: remove unnecessary include of openat.h
    
    * daemon/realpath.c: Don't include "openat.h".  not used.

commit 265e1dc6512614200713224af84ec0cc13d09afa
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 10:44:38 2009 +0000

    build: update gnulib submodule to latest

commit c9252c272c09b93303cb682f2c20daaad445caaa
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 10:43:45 2009 +0000

    daemon/gnulib: Include glob module.

commit 5f6f0136c3f79192b0fe2227c5f0e06b466fe3c4
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 10:41:07 2009 +0000

    daemon/Win32: Don't include missing headers.
    
    This is a partial fix for code in guestfsd.c where many of these
    header files are missing on Win32.

commit acc65f40d5fadc65127db70a543c6f857de3af85
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 10:38:07 2009 +0000

    daemon/Win32: make some functions and fields optional.
    
    inotify: Make this optional on platforms that don't have this interface.
    
    mknod, mkfifo etc.: Make these optional on non-Unix platforms.
    
    readdir: If d_type field is missing on the platform, set the corresponding
    field to 'u'.
    
    stat: st_blocks and st_blksize are missing on non-Unix platforms, so
    set these fields to -1 in the corresponding structures.

commit 9d2be64f1fdeb0832667cd852b8827bc4077c6ab
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 10:36:59 2009 +0000

    daemon/Win32: NAME_MAX does not exist on Windows, use FILENAME_MAX instead.

commit defda7819925ec348d054321c6eb88ac8992663c
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 10:36:21 2009 +0000

    daemon: Missing #includes revealed by cross-compiling.

commit e79dbdc1bb9ede7fb80d863a43d0d14b9c291865
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Nov 20 10:33:27 2009 +0000

    daemon/Win32: Ignore mingw32-config.cache.
    
    The Fedora Windows cross-compiler 'mingw32-configure' script always
    uses a configure cache.  Ignore that file.

commit 0ff48a6678ccc24dadb5c827506af4be4f62128c
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 19 17:01:53 2009 +0000

    generator: open Unix module by default.
    
    Add:
    
      open Unix
    
    at the top of the generator, which means that we don't need to
    prefix any 'Unix.foo' symbols (we can just use 'foo' instead).
    
    Unfortunately the Unix module shadows one symbol in Pervasives
    (the Pervasives module is opened by default in OCaml code).  That
    symbol is 'stdout'.  So we replace this with 'Pervasives.stdout'
    in two places.  Still a net reduction in code size.

commit e9b6430873cf1718e98c3045eda893fa1283185a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 19 16:59:56 2009 +0000

    syntax-check: Fix tab-vs-space issue in the generator.

commit c9a59aae4dd2d19589c60b8b0a6fbe904ebfe41a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 19 16:50:19 2009 +0000

    Update PO files.

commit 0001b34429995e3655e91f6d8e46815eb41ba73b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 19 16:50:04 2009 +0000

    Update TODO file.

commit 9717762a05f6d54cf61e389e9e812ac0a691db44
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Nov 19 16:10:01 2009 +0000

    build: Fix parallel build of haskell bindings
    
    ghc isn't clever enough not to stomp on itself when building dependencies. This
    change makes the 1 dependency explicit.
    
    It also adds a dependency on src/libguestfs.la.

commit 6723ca116630b573a21af8acba3b0abf51985b91
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Nov 19 16:10:00 2009 +0000

    build: Fix inter-directory dependencies
    
    This change adds an explicit dependency on generator.ml for every file it
    generates, except java files. Java is left for another time because it's
    considerably trickier.
    
    It also adds a build rule for src/libguestfs.la so it can be rebuilt as required
    from other directories.
    
    It does this by creating a top level make file, subdir-rules.mk, which can be
    included from sub-directories. sub-directories need to define 'generator_built'
    to include local files which are built by generator.ml, and they will be updated
    automatically.
    
    This fixes parallel make, and will automatically re-create generated files when
    make is run from any directory.
    
    It also fixes the problem which efad4f53 was targetting. Specifically,
    src/guestfs_protocol.(c|h) had an erroneous dependency on stamp-generator, and
    therefore generator.ml, despite not being directly created by it. This caused
    them to be recreated every time generator.ml ran rather than only when
    src/guestfs_protocol.x was updated, which cascaded into a daemon and therefore
    appliance update.
    
    This patch also changes the contents of the distribution tarball by including
    files created by rpcgen.

commit bdea7babb7d7e6cb8e9d575ad57e7a9298add586
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 19 13:48:59 2009 +0000

    generator: Acquire lock to prevent two parallel runs of the generator.
    
    This commit acquires a lock on a file to prevent two parallel runs of
    the generator from stomping on each other.  The second run will wait
    for the first to complete before starting.
    
    The lock is acquired on the "HACKING" file because it's convenient --
    we are already checking this file exists to make sure that we don't
    start off in the wrong directory.
    
    Tested by adding some artificial sleeps in the code to observe
    locking behaviour between two parallel runs.

commit cd0ed5d315c58c22e5074b6c45c650fb237faad1
Author: Jim Meyering <jim@meyering.net>
Date:   Thu Nov 19 11:41:50 2009 +0100

    syntax-check: expand TABs in generator.ml
    
    Jim Meyering wrote:
    >>From 6f128e90afb055f9899011c4a592eb289e678936 Mon Sep 17 00:00:00 2001
    > From: Jim Meyering <meyering@redhat.com>
    > Date: Thu, 19 Nov 2009 11:39:10 +0100
    > Subject: [PATCH libguestfs] syntax-check: expand TABs in generator.ml
    >
    > * src/generator.ml: Expand leading TABs to spaces.
    
    That was incomplete.
    Please use the following instead.
    With it, now, "make syntax-check" now passes once again.
    
    >From 716a30d0b692972aac8fbea1fb7ad3318ab3a0d8 Mon Sep 17 00:00:00 2001
    From: Jim Meyering <meyering@redhat.com>
    Date: Thu, 19 Nov 2009 11:39:10 +0100
    Subject: [PATCH libguestfs] syntax-check: expand leading TABs
    
    * src/generator.ml: Expand leading TABs to spaces.
    * fuse/test-fuse.sh: Likewise.

commit 3e3c246f2558ab071f9341b45d1ac56231aa7636
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Nov 19 11:37:13 2009 +0100

    syntax-check: exempt *.pod from no-trailing-blank prohibition
    
    * .x-sc_trailing_blank: Exempt *.pod.

commit 45d4a1df58a028376a266fc785974e18e248b7db
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 18 17:41:41 2009 +0000

    BUILT_SOURCES now depends on running the generator.
    
    This completely reverts commit efad4f53923dcca94613e193d6383bd032e70498.

commit 45dce76b22aab46f010f0334f42296be86b2c521
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed Nov 18 16:02:53 2009 +0000

    daemon/RHEL: Choose correct udev settle script.
    
    On RHEL/CentOS 5.4, udevadm settle command does not work.  This didn't
    affect us before, but now that we're using parted for partitioning, we
    *do* need to wait for udev to settle (because parted isn't waiting for
    this, unlike sfdisk).
    
    This commit chooses the correct program to run.

commit 4b307e64995dd980f32495ec5dd717560ffb488d
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed Nov 18 16:01:23 2009 +0000

    fuse/RHEL: Don't require UTIME_{NOW,OMIT} to be defined.
    
    These macros don't exist on RHEL/CentOS 5.4.  If the feature
    is missing then just don't implement it in the FUSE layer.

commit 80baede369ead396d463a7bad14f8f77a1341149
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 18 17:31:08 2009 +0000

    appliance: Print uptime.
    
    Print the uptime just before the init script runs the daemon, so we
    have a good idea of how long the kernel boot + init script takes to run.

commit 42c418fc6bf9f0d1d1b1deaf823de579ab05246b
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 18 14:11:25 2009 +0000

    recipes: Fix git URL.

commit 4952f5a0f2eb6aac78e6917220d8de96efba0ad6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 18 13:40:32 2009 +0000

    Prepare for version 1.0.79.

commit 78cc199fa8f6a3c1673d118cbc0f42bfd6e1f192
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 18 13:40:04 2009 +0000

    fuse: Add test-fuse.sh to EXTRA_DIST.

commit 0344735faeb5344eea6a27bf0f06f286dd446bd9
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 18 10:37:10 2009 +0000

    generator: Fix API of functions that return RBufferOut
    
    (NB: The API / ABI doesn't actually change here - it's just made much
    simpler to use).
    
    The API for RBufferOut functions was unexpectedly hard to use in the
    case where a zero-length buffer might be returned.  For discussion on
    this see:
    
    https://www.redhat.com/archives/libguestfs/2009-November/thread.html#00115
    
    This commit ensures that in the zero-length buffer case, the return
    value is never NULL.  Thus code is now able to just check if the return
    value == NULL to indicate an error, which is simpler for all concerned.
    
    The implementation of this is, however, more complex because we have
    to be careful about this case inside both the daemon and the library
    code, which is what this commit does.
    
    This has passed a full round of tests.

commit d44838f9799402f3d4364ccf5599cd82d8554043
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 17 17:03:31 2009 +0000

    fuse: Add tests for guestmount.
    
    This script contains non-exhaustive tests for the system calls
    implemented by guestmount.

commit db8471028a1a6e39f46505c45648e041612cff07
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 17 17:02:45 2009 +0000

    fuse: Fix read for empty files.
    
    Error handling for the guestfs_pread call was incorrect, which
    meant that empty files could produce spurious error messages.

commit 6d3ab2d0fe7b3b58faea70f17a8c9e1d2d0f2cad
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 17 20:00:17 2009 +0000

    fish: Improve output of guestfish -h cmd
    
    Display this output like a short manual page.
    
    Don't put <..> around the parameters to the command.

commit 96f87f8b461030620649aabfd415304133e9282d
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 17 19:51:29 2009 +0000

    New API call: fill - fill a file with octets

commit 97e42a094f0329dcc49e512c54f7816cd13fb799
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 17 17:01:19 2009 +0000

    fuse: Fix cache invalidation in rename operation.
    
    We need to invalidate both parameters, otherwise the old (moved)
    file can appear that it still exists after the move.

commit fa8e51dd5a9a0cb640bab84ada8e1ade8203f0d8
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 17 17:02:15 2009 +0000

    fuse: Fix hard link creation.
    
    The parameters were swapped.  We also need to invalidate the
    cache for both parameters.

commit 94affdfb3a569b12e8aaf893d5ab8975d3a8b3cb
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 17 16:59:52 2009 +0000

    fuse: Fix symlink creation (RHBZ#538069).
    
    The parameters were swapped, preventing symlinks from being created.

commit fef86793b6b110982d31588301e96f4fd558b778
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 17 14:21:54 2009 +0000

    virt-df: Ignore domains which have ID 0.
    
    This is the remainder of the fix for RHBZ#538041.  Domains
    which have ID 0 are special domains.  libvirt defines it as
    the "control plane OS".  Only Xen and HyperV have this
    behaviour, and in both cases we should ignore those domains
    for the purposes of virt-df (user can just run "df" if they
    need that information for the dom0).

commit 6f78728d7e9a2cb10ec114b7575600c32c780030
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 17 14:09:58 2009 +0000

    virt-df: Turn errors into warnings when listing all domains.
    
    This is a partial fix for RHBZ#538041.  When listing all domains,
    don't die just because one domain fails, but keep trying for the
    rest.

commit 52b9bef73c09dc58d533fa8073db142cbe48c708
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 22:23:08 2009 +0000

    Docs: copyediting

commit d9b00735043bff53dbeb51f906bbb18fac1eefea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 16:36:04 2009 +0000

    Docs: Add documentation about other language bindings to API overview.

commit ab6602e7f083d4defa56034a6d569fd7be75abc2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 16:35:51 2009 +0000

    Docs: line folding in example.

commit 72fbdeb4f6ea4d871c2c59019d110fbdd8000915
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 15:57:32 2009 +0000

    Docs: group preformatted sections of text together.

commit 64ffbd1632b4ddc4e28e5cc2fe0f55bb84284f85
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 15:09:10 2009 +0000

    Docs typo: limited -> limits

commit d867cd76a2a9b2599324b0ce9905801f24e55f57
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 14:47:32 2009 +0000

    Docs: Add section on using multiple threads.
    
    This section was missing from the previous documentation.

commit e23503b609ee0599da149038fa6caf9de5ff6198
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 14:13:31 2009 +0000

    Docs: Add/extend API overview.

commit 8488666d0d21b1de6fd027eae577d9f1a3bd71a4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 13 12:15:09 2009 +0000

    Docs: Remove incorrect statement from man page.
    
    The low-level event-based API never existed so this statement
    in the man page is wrong.  If you want an asynchronous API, use
    threads.

commit 2f379be1a9457a60e0ea068520c7d5512a8d9d6e
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Nov 12 11:34:08 2009 +0100

    build: revive the ocaml package tests
    
    * autogen.sh: Generalize the ocaml-package-existence test.
    Remove the git-related part of the old test.

commit 18fe89c6cb65fd4d310aa123a2d270a6032ed667
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Nov 11 13:50:24 2009 +0000

    Generate guestfs_protocol.x when stamp-generator updates
    
    This partially reverts efad4f53923dcca94613e193d6383bd032e70498.
    guestfs_protocol.x wasn't being generated when building from a clean checkout.

commit 91e53a70b7acb90499d8493d5b3203151a3c01b8
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 11 13:40:04 2009 +0000

    autogen.sh: Remove test for ocaml etc from this script.
    
    This test seems to cause a lot of trouble.  We need to go back to
    the drawing-board on this one.

commit cfb0252ce1556819bb7d3a413b5ab118ae9030d9
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 11 10:55:26 2009 +0000

    Set cpio blocksize to 64K.
    
    See:
    https://www.redhat.com/archives/fedora-devel-list/2009-November/thread.html#00523

commit 978e869dd66c9c26654f9fad9a439c342dfca089
Author: Richard Jones <rjones@debian5x64.home.annexia.org>
Date:   Tue Nov 10 19:12:46 2009 +0000

    Debian: don't depend on gfs-tools since these have depsolving problems.

commit f38a5d0469d74f42e07af3beb4b730bce1c2a0ad
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 10 18:45:13 2009 +0000

    Update PO files for release.

commit ee28be12dbd7c02aed384d07cfd9adbff0b07159
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 10 18:38:54 2009 +0000

    Check for ocaml-xml-light-devel (xml-light.cmxa)
    
    Also unquote $pkg since OCaml package names can never contain
    spaces or other unfriendly characters.

commit d9af0effb73a2e505cc3b98d26bd37a5bef1c1e2
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 10 18:23:52 2009 +0000

    Prepare for version 1.0.78

commit fe845f92844d2b48c7e5e8e16a93e7b55aebda8c
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Nov 10 18:49:42 2009 +0100

    tell "make syntax-check" that examples/to-xml.c is exempt from some tests
    
    * .x-sc_prohibit_strcmp: Exempt examples/to-xml.c.
    * .x-sc_prohibit_strcmp_and_strncmp: Likewise.

commit 09b7c4269410f590d6413bf4dfd18ad2d87c0bf3
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 10 17:09:54 2009 +0000

    examples: Don't use STREQ etc in the to-xml.c example.

commit 0eb5c108b80afd8ecfd124e40e038eec383d2210
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 10 17:09:12 2009 +0000

    Don't export STREQ and friends in <guestfs.h>
    
    Move these to private header file(s) and other places as required
    since these aren't part of the public API.

commit bbe8ade4836027aba20a3985563309c5fecafa63
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 10 16:46:31 2009 +0000

    Fix problems found by 'make syntax check'

commit 767e7ca545a5a0b59e308b2ce4fbc798ef17be3a
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 9 14:42:55 2009 +0000

    Print timestamped messages during appliance launch.
    
    In verbose mode, print timestamped messages during guestfs_launch
    so we can see how long each step takes.

commit 6e355872aef92e555895c6d07469407a42f5023f
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 9 14:16:21 2009 +0000

    Record time of guest launch.
    
    The guest handle field start_t was previously used (when we
    had the wait_ready call), but had fallen into disuse.  Note
    that it could never be accessed through the API.
    
    Rename this field as launch_t, convert it to a timeval, and
    use it to measure the time since guestfs_launch was called
    so that we can start profiling guest launch.

commit 960d00160b9ea3e7163a93de2085188c2f0c2607
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 9 14:15:43 2009 +0000

    appliance: Prefix kernel messages with timestamp.

commit 626d0f98a3d4954f67fc12f92a98b58462ca0c31
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 4 23:15:26 2009 +0000

    Generic partition creation interface.
    
    This commit introduces a generic partition creation interface
    which should be future-proof and extensible, and partially
    replaces the old sfdisk-based interface.
    
    The implementation is based on parted but is hopefully not too
    dependent on the particulars of parted.
    
    The following new calls are introduced:
    
      guestfs_part_init:
        Initialize a disk with a partition table.  Unlike the sfdisk-
        based interface, we also support GPT and other partition
        types, which is essential to scale to devices larger than 2TB.
    
      guestfs_part_add: Add a partition to an existing disk.
    
      guestfs_part_disk:
        Convenience function which combines part_init & part_add,
        creating a single partition that covers the whole disk.
    
      guestfs_part_set_bootable:
      guestfs_part_set_name:
        Set various aspects of existing partitions.
    
      guestfs_part_list:
        List partitions on a device.  This returns a programming-friendly
        list of partition structs (in contrast to sfdisk-l which cannot
        be parsed).
    
      guestfs_part_get_parttype:
        Return the partition table type, eg. "msdos" or "gpt".
    
    The following calls are planned, but not added currently:
    
      guestfs_part_get_bootable
      guestfs_part_get_name
      guestfs_part_set_type
      guestfs_part_get_type

commit 01b6134eea7900eef5a50927e2c9d19c7c3aaa03
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 10 11:41:39 2009 +0000

    Add ata_piix to kernel module whitelist (RHBZ#533886).

commit f863f71d71335ebd6a35538c57dd59273fdd2d82
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 10 12:34:27 2009 +0000

    Fix compilation if readline library is not present.

commit fbf2dbddc49c0e6277ca4f83e87c24a21a043858
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 10 12:10:05 2009 +0000

    Fix compilation when Augeas is not present.
    
    It would complain that NEED_AUG macro was defined but not used.

commit 00609553e60d561cfbff74ba34f93daeebe00de9
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 15:06:36 2009 +0100

    avoid "syntax-check" failure: hide cast of argument to free
    
    * fuse/guestmount.c (fg_readlink): Perform cast in a
     separate statement to hide it from "make syntax-check".

commit 2585476b051d1c33e6bf7311548477a26d15d00d
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Nov 10 14:31:42 2009 +0100

    build: die early if we lack ocaml, ocamlfind or ocaml-xml-light
    
    * autogen.sh: Ensure that we fail very early when not building
    from a tarball and when one of those is not installed.

commit 74f73cc57baaf2b52f20b2f274c6836bed1a122d
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 15:05:23 2009 +0100

    tests: enable strcmp-related syntax-check tests
    
    * cfg.mk (local-checks-to-skip): Don't skip these checks:
    sc_prohibit_strcmp_and_strncmp, sc_prohibit_strcmp.

commit 6f5010512a3aa98ba020719507d2c92f781ede46
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 22:33:54 2009 +0100

    change strncasecmp() == 0 to STRCASEEQLEN()
    
    git grep -l 'strncasecmp *([^=]*== *0'|xargs \
      perl -pi -e 's/\bstrncasecmp( *\(.*?\)) *== *0\b/STRCASEEQLEN$1/g'

commit 5d61fdaef4735855bf1170695b858b3b495559d9
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 22:33:36 2009 +0100

    change strncasecmp() == 0 to STRCASENEQLEN()
    
    git grep -l 'strncasecmp *([^=]*!= *0'|xargs \
      perl -pi -e 's/\bstrncasecmp( *\(.*?\)) *!= *0\b/STRCASENEQLEN$1/g'

commit f137695cfa413e0d2f60cf0623956b0848ac304b
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 15:03:01 2009 +0100

    use STREQ, not strcmp: part 2
    
    git grep -l 'strcmp *([^=]*!= *0'|xargs \
      perl -pi -e 's/\bstrcmp( *\(.*?\)) *!= *0\b/STRNEQ$1/g'

commit a918cbe581250df4ab9d6ef5693f44b103881e0d
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 14:30:11 2009 +0100

    use STREQ, not strcmp: part 1
    
    git grep -l 'strcmp *([^=]*== *0'|xargs \
      perl -pi -e 's/\bstrcmp( *\(.*?\)) *== *0/STREQ$1/g'

commit 9497402a2f987f06c2cc7e03a870e1052e1b7b80
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 14:26:21 2009 +0100

    change strncmp() == 0 to STREQLEN()
    
    git grep -l 'strncmp *([^=]*== *0'|xargs \
      perl -pi -e 's/\bstrncmp( *\(.*?\)) *== *0\b/STREQLEN$1/g'

commit 837ba178efea5a6e56dd6beaae7b179f4434ff20
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 14:21:46 2009 +0100

    change strncmp(...) != 0 to STRNEQLEN(...)
    
    git grep -l 'strncmp *([^=]*!= *0'|xargs \
      perl -pi -e 's/\bstrncmp( *\(.*?\)) *!= *0/STRNEQLEN$1/g'

commit f6df937ca220e369071140ffebdae14310ed499a
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 14:06:37 2009 +0100

    convert strcasecmp(...) != 0 to STRCASENEQ(...)
    
    git grep -E -l 'strcasecmp *\(.*!= ?0\b'|xargs \
      perl -pi -e 's/\bstrcasecmp( ?\(.*?\)) != 0/STRCASENEQ$1/g'

commit 380459384c1ee073c1fe980e194d117a3e82d83d
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 13:58:42 2009 +0100

    convert uses of strcasecmp to STRCASEEQ
    
    git grep -l 'strcasecmp *([^=]*== *0'| xargs \
      perl -pi -e 's/\bstrcasecmp( *\(.*?\)) *== *0/STRCASEEQ$1/'

commit 6942895159d6cff153c4a9b8e2f6057578c5e4f5
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 19:50:22 2009 +0100

    define STREQ, STRNEQ, STREQLEN, STRCASEQ, etc.
    
    * src/guestfs.h: Define STREQ and company.
    * daemon/daemon.h: Likewise.
    * hivex/hivex.h: Likewise.

commit 9e01896a6e248bb6732af1d638eb741cc9dbf9bb
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 15:14:53 2009 +0100

    indent with spaces, not TABs
    
    * HACKING: Expand indentation TABs.
    * configure.ac: Likewise.
    * daemon/daemon.h: Likewise.
    * daemon/guestfsd.c: Likewise.
    * fuse/guestmount.c: Likewise.
    * hivex/LICENSE: Likewise.
    * src/generator.ml: Likewise.
    * tools/virt-win-reg: Likewise.

commit 40c1a1229e79f151d7f1d26662703a1910a310f2
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 15:09:35 2009 +0100

    fix doc typo
    
    * fuse/guestmount.pod: Avoid "the the".

commit 83ba030f922efb82b37b6eb0a564c0be31284938
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 15:08:09 2009 +0100

    placate 'make syntax-check'
    
    * hivex/hivex.c: Remove unused "#include <assert.h>".

commit e096278b1e8bc953cd978583b63a33f2a9edca0a
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Nov 9 18:01:48 2009 +0100

    avoid syntax-check warning about isdigit use in example program
    
    * .x-sc_avoid_ctype_macros: New file.

commit 630e0fde881502c1cc5f49cee945d930bb4f7ca3
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Nov 8 11:57:02 2009 +0000

    appliance: Enhance mkfs to support many more filesystem types.
    
    This fixes support for NTFS, and adds support for:
     - reiserfs
     - btrfs
     - GFS and GFS2
     - JFS
     - HFS and HFS+
     - NILFS
     - OCFS2 (disabled)
    
    We don't enable OCFS2 by default, because it pulls in about
    140 extra packages into the appliance.
    
    GFS & GFS2 default to single node (no lock manager etc).

commit 060554d48c48bf45262b0c02a33547850cd6112b
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Nov 8 11:55:38 2009 +0000

    Fix prototype of commandv to match prototype of commandrv.

commit ebbcac2c45b316b94241f4d493fb5e6cfa6f333a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 17:27:02 2009 +0000

    daemon: Always reflect command stderr to stderr when debugging.
    
    When debugging (ie. LIBGUESTFS_DEBUG=1 & verbose flag set in daemon)
    always reflect any stderr output from commands that we run to
    stderr of the daemon, so it is visible.
    
    Previously if stderror == NULL in command*, stderr output was
    just eaten and discarded which meant useful error messages could
    be lost.

commit 56fa877851e364575bc1d7921ec8cd7b0c35fb10
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 13:19:26 2009 +0000

    daemon: Add flags argument to command*() functions.
    
    This adds new variations of the command*() functions which
    take a 'flags' argument.  Currently the only flag available
    is defined as follows:
    
     COMMAND_FLAG_FOLD_STDOUT_ON_STDERR: For broken external commands
     that send error messages to stdout (hello, parted) but that don't
     have any useful stdout information, use this flag to capture the
     error messages in the *stderror buffer.  If using this flag,
     you should pass stdoutput as NULL because nothing could ever be
     captured in that buffer.
    
    This patch also adds some documentation for command*()
    function.

commit e9c3a4dd0a1caf7f0aa39a10679869440ca6c719
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 9 11:03:25 2009 +0000

    haskell: Disambiguate truncate symbol.
    
    This is a hack, but GHC doesn't like it if we have a symbol
    with the same name as one in the Haskell Prelude.  Therefore
    we much hide the corresponding symbol in the Prelude when
    building this module.

commit 8a7a985389b278e4ae9386be655661a50e4f91f6
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Nov 8 11:57:54 2009 +0000

    ocaml: Update dependencies file.

commit 4cd80853e04f96a33551b0028fb992c95cad9397
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 12:32:57 2009 +0000

    ocaml: Sort the dependencies so they are stable between machines.

commit 97ef26a6424388571a6fb8203e3d7c59f56c940d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 10:48:37 2009 +0000

    ocaml: General improvements to generated code.

commit a3a709a0a7232387fdcf4e320a19d4fb5057ef97
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Nov 6 09:14:31 2009 +0000

    Fixes for compiling on 32 bit.

commit a2aad1a84a72d61ae18ed4d2d5134b9efa8b85a0
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 5 10:03:59 2009 +0000

    Don't update appliance after running generator.
    
    I'm not sure why these dependencies exist, but they cause the
    appliance to be updated every time the generator runs, which
    appears to be unnecessary.

commit 92cbeb64ce1806ae458adb90a742a0086bad0352
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Nov 5 13:13:21 2009 +0000

    appliance: Add xfsprogs to list of packages

commit 07487fbda986e71d3e027c108ae36fde1672110c
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 4 21:51:35 2009 +0000

    fish: Allow <nn>P and <nn>E for petabyte and exabyte allocations.

commit 496e34bb8a1748c3986eef56d28d4034ed73ff48
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 4 18:03:58 2009 +0000

    fish: Allow <nn>T for terabyte allocations.

commit 2823210c9c6484cdc9aea0b4b30dc8f1d0067f8c
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 4 17:42:03 2009 +0000

    fish: New command 'sparse', like 'alloc' but to generate sparse files.
    
    With sparse you can make sparse files, which is fun because you
    can experiment with really large devices:
    
      ><fs> sparse /tmp/test.img 100G
      ><fs> run
      ><fs> sfdiskM /dev/vda ,
      ><fs> mkfs ext2 /dev/vda1    # very long pause here ...
      ><fs> mount /dev/vda1 /
    
    To see the real (ie. allocated) size of the sparse file, use the du
    command, eg:
    
      ><fs> !du -h /tmp/test.img
      1.6G -rw-rw-r-- 1 rjones rjones 100G 2009-11-04 17:40 /tmp/test.img

commit 5ccf064d0f5cded76234369d0a757b3372d8bfa1
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 4 17:23:11 2009 +0000

    daemon: Build daemon with AC_SYS_LARGEFILE.

commit f9ba9050e584e1693fe7b84a22e087bb6c81f195
Author: Richard Jones <rjones@debian5x64.home.annexia.org>
Date:   Wed Nov 4 16:32:50 2009 +0000

    Debian: Use /bin/bash as the shell for regression test scripts.
    
    /bin/sh on Debian is a minimal shell called 'dash' which doesn't
    support some features we need such as the particular 'function'
    syntax used by regressions/test-stringlist.sh, and therefore
    this script was failing on Debian.
    
    Change all of these scripts to use #!/bin/bash explicitly to avoid
    these sorts of problems.

commit a506a9a6c95da378debf6a9fa695ed57246d72c6
Author: Richard Jones <rjones@debian5x64.home.annexia.org>
Date:   Wed Nov 4 15:47:03 2009 +0000

    daemon: When running external commands, open stdin as /dev/null
    
    Previously when we ran external commands from the daemon, stdin
    (ie. fd 0) was closed.  This caused a problem when running the
    external hexdump command which seems to break if stdin is closed.
    
    This patch opens stdin on /dev/null.

commit fa9d7eac678bfcc6f01df7e23d26820603295ab5
Author: Richard Jones <rjones@debian5x64.home.annexia.org>
Date:   Wed Nov 4 14:31:06 2009 +0000

    Debian: Include ISOFS driver in the kernel.

commit 3e16d8182472f28c30a81227bead9b8d604d1d75
Author: Richard Jones <rjones@debian5x64.home.annexia.org>
Date:   Wed Nov 4 14:30:41 2009 +0000

    Debian: Ignore Debian appliance root when looking for translatable files.

commit f14c2b81d4d271afb34c08d21503b843a74d6a92
Author: Richard Jones <rjones@debian5x64.home.annexia.org>
Date:   Wed Nov 4 14:30:13 2009 +0000

    debian: Ignore some generated debirf files.

commit 0898b519e42ab515d4f854802c7f98395ca2a342
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 4 12:42:18 2009 +0000

    configure: Fix summary messages.
    
    The following 3 summary messages in the configure output
    always displayed "yes" even if they were not actually
    enabled.
    
    Haskell bindings .................... yes
    virt-inspector ...................... yes
    virt-* tools ........................ yes
    
    Fixed by correcting the code that tests if the automake
    conditional is set.

commit 55abbc71958473af0329b23cac10bf81b0d33123
Author: Jim Meyering <jim@meyering.net>
Date:   Tue Nov 3 18:55:21 2009 +0100

    hivex: fail upon integer overflow
    
    * hivex/hivex.c (windows_utf16_to_utf8): Avoid overflow and a
    potential infloop.

commit 3791cf4fb075de69e5af84c81e855f63da5ee27f
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Nov 4 11:33:29 2009 +0000

    hivex: Check unchecked calloc (Jim Meyering).

commit f03972aa0a0b43ed531e4afa6b1abb8318e62e21
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 3 16:50:08 2009 +0000

    Update PO files.

commit 74c1ff31b4f1d5612d6a9b457361e2f284912ce0
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 3 16:49:31 2009 +0000

    Fix EXTRA_DIST line in fuse/Makefile.am.

commit fc92eca3d575390d1d83caa04b276b009f4dbae5
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 3 16:49:13 2009 +0000

    Add make.sh.in to EXTRA_DIST.

commit 298e49eb5a3822074cff74759749babc706f4408
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 3 16:44:47 2009 +0000

    Comment out code which provokes strange gcc optimization error.

commit ade5776e36d5c9cd20c1d6daa7934a131d4c8a93
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 3 16:31:37 2009 +0000

    Prepare for 1.0.77.

commit b15a0df9359146eb9d84cc17fbba396656408acf
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 30 16:13:13 2009 +0000

    FUSE filesystem support.
    
    This implements FUSE filesystem support so that any libguestfs-
    accessible disk image can be mounted as a local filesystem.
    
    Note: file writes (ie. write(2) system call) is not yet implemented.
    
    The API needs more test coverage, particularly lesser-used system
    calls.
    
    The big unresolved issue is UID/GID mapping between guest filesystem
    IDs and the host.  It's not easy to automate this because you need
    extra details about the guest itself in order to get to its
    UID->username map (eg. /etc/passwd from the guest).

commit 683a5c117ea38aa561af85ee7d69d68a7f9d2b5e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Nov 3 15:30:36 2009 +0000

    Allow callers to disable the recovery process.

commit c4fbf18c691987d5594a5db517dd4728041185a3
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 2 17:02:32 2009 +0000

    New API call: pread
    
    guestfs_pread lets you do partial file reads from arbitrary
    places within a file.  It works like the pread(2) system call.

commit 8da0ebc96d446470aa9ec82ec034ef4f5fbb4c6c
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Oct 31 13:41:18 2009 +0000

    New API calls: lstatlist, lxattrlist, readlinklist.
    
    These three functions are very specifically designed for FUSE
    support, so we can list directories efficiently.  Instead of
    making lots of lstat, lgetxattr and readlink calls, we can make just
    three calls per directory to grab all the attributes (which we
    then cache briefly).

commit a0b60e8203beba7d7a164a5d165b984413496c2e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 30 16:10:45 2009 +0000

    New API calls: truncate, truncate_size, mkdir_mode, utimens, lchown.
    
    truncate, truncate_size: Used to truncate files to a particular
    size, or to zero bytes.
    
    mkdir_mode: Like mkdir but allows you to also specify the
    initial permissions for the new directory.
    
    utimens: Set timestamp on a file with nanosecond accuracy.
    
    lchown: Corresponding to lchown(2) syscall (we already have chown).
    
    The implementation is complicated by the fact that we had to
    add an Int64 parameter type to the generator.

commit 5a1307622f23ff0925817e2191bbb0f67d2a6436
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 2 14:30:54 2009 +0000

    examples/to-xml.c: Don't depend on Gnulib function.
    
    Since this program is just an example, it shouldn't require
    the Gnulib c-ctype functions.

commit 9728b6e67fa9a330eda37fb26e0d4b30aeb460e3
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Oct 30 17:11:02 2009 +0000

    appliance: Don't rebuild the appliance every time configure runs.
    
    config.status touches make.sh each time it runs, even if the
    resulting script would not change.  This causes the appliance
    to get rebuilt much more frequently than is necessary.
    
    There's no way to stop configure running, but we can move the
    config.status command into a Makefile rule to stop this
    undesirable behaviour.

commit d412dd921cbcc1e62f7324ac6e1979ec86558de8
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 2 16:15:14 2009 +0000

    guestfish: Fix a third indentation problem.

commit edeae9b92d784b44c0041903a23c30a486238f2c
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Nov 2 16:06:23 2009 +0000

    guestfish: Another indentation fix.

commit 116c0644ea5dfe3ca1c5955089ef44646921079f
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Oct 31 13:40:12 2009 +0000

    guestfish: Fix printing of buffers in structs.
    
    Somehow an 'indent' string crept in there, so it was printing:
    
      <char><indent><char><indent><char>...
    
    instead of:
    
      <char><char><char>...

commit 3b8e8411d5cd175b2ecbb6f1eb7ac5087cd2a762
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Oct 31 13:38:14 2009 +0000

    Fix rstructs_used handling in guestfish generated code.
    
    rstructs_used wasn't correctly generating code for guestfish
    because guestfish doesn't make all functions visible.  Since the
    calculation of rstructs_used was over all functions (including
    ones not available in guestfish) it could have generated
    unnecessary functions.
    
    In fact this error didn't affect us before - but I discovered
    it when I added some extra struct-returning functions (future
    commit).

commit e44d998ac34b1339691544eff49fb9748e5c0004
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Oct 31 13:37:04 2009 +0000

    daemon: Don't warn on -Wunsafe-loop-optimizations.
    
    Ignore -Wunsafe-loop-optimizations, same as in the top level
    configure file.

commit 43dab673ee433172b77232ec6eb3d478c2e03d70
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Oct 29 20:35:59 2009 +0000

    Add hivex* documentation to website.

commit 8a2dd817247817c55df45789742211dad416fc3a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Oct 29 20:33:27 2009 +0000

    Add HTML documentation to website.

commit 0b4e99d6e28771e426f3e6f2a0675119d853eabc
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Oct 29 20:06:47 2009 +0000

    Prepare for 1.0.76.

commit faeb8789b6c6d09536d8d4abadc1a29c6e3ff77a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Oct 29 18:46:46 2009 +0000

    Fix misspelling in previous commit.

commit 79c56cf76e289e3bf916cbf81dcc7f9ed854b52e
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Oct 29 18:36:12 2009 +0000

    RHEL 5: Also add le{16,64}toh functions

commit 5a98105e8584f834386c198b6a2c38867810d1f4
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Oct 29 17:54:48 2009 +0000

    RHEL 5: Detect endianness functions and supply them.

commit 20d8fb4f60abf56011c018282b17e208a297f5fa
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Oct 29 16:54:18 2009 +0000

    Add virt-win-reg to toplevel Makefile.am, fix POTFILES.in

commit e5aba7a0188a70f26f343ed4e47192734ec44cb1
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Oct 29 16:44:09 2009 +0000

    Prepare for version 1.0.75.

commit e5f4808509802e3bc01f2b15acc4cf3e33e23ec8
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 26 11:03:07 2009 +0000

    Support for Windows Registry.
    
    In hivex/:  This mini-library allows us to extract Windows
    Registry binary files ("hives").
    
    There are also two tools: hivexml converts a hive to a
    self-describing XML format.  hivexget can be used to extract
    single subkeys from a hive.
    
    New tool: virt-win-reg.  This is a wrapper around the library
    functionality allowing you to pull out data from the registries
    of Windows guests.

commit fbcf2f5dcfed4ee6e1df6669a28adb9442a95d09
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 26 14:26:36 2009 +0000

    New API: vfs_type - get the Linux VFS driver for a mounted device.

commit 18b97345401aca5092669983edac488aad6ca7d7
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 26 09:12:12 2009 +0000

    Modify Sys::Guestfs::Lib::resolve_windows_path to use case_sensitive_path.

commit dd8e4ad0f7a4ac439b352388b89a30cc8382e8c3
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 26 09:04:42 2009 +0000

    guestfish: Add win: prefix to use Windows paths.
    
    Add a win: prefix for path arguments in guestfish:
    
    ><fs> file win:c:\windows\system32\config\system.log
    MS Windows registry file, NT/2000 or above

commit 98aaff2d2d6b628f6f7630c8232f06f435dfff42
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 26 13:00:46 2009 +0000

    daemon: Change chdir to use openat/fdopendir.
    
    Uses Gnulib implementation of openat which should be portable.

commit 1796e94647f239767fa1bca4e898c9fc5e8705de
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 26 08:20:00 2009 +0000

    New API: case-sensitive-path to return case sensitive path on NTFS 3g fs
    
    This function handles an annoyance/peculiarity of the Linux
    NTFS 3g driver, which is that it exports NTFS filesystems with
    names case sensitive, even though under Windows they would be
    case insensitive.
    
    This causes problems because the location of (eg.) c:\windows
    might appear as /windows or /WINDOWS (etc) depending on the
    inconsequential details of how it was originally created.
    
    Example of this problem on a real Windows guest:
    
      ><fs> file /windows/system32/config/system.log
      libguestfs: error: file: access: /windows/system32/config/system.log: No such file or directory
      ><fs> case-sensitive-path /windows/system32/config/system.log
      /WINDOWS/system32/config/system.LOG
      ><fs> file /WINDOWS/system32/config/system.LOG
      MS Windows registry file, NT/2000 or above

commit 87fb82d2e92226bd2db3c658e40c107f9c719794
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 26 09:30:38 2009 +0000

    inspector: Remove inaccurate paragraph from documentation.

commit 81bb99b89df46d860123c0ee66b6e8ccb5f6950e
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Oct 25 21:43:37 2009 +0000

    Include HFS (Mac OS X) driver.

commit 8796f8bb37b7200dc3e1fd44d1bf88643b82a6d0
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Oct 21 16:31:26 2009 +0100

    Set LC_ALL=C before running qemu.

commit 08836291bb20eba5c3936bcea93805e79d7d1f38
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Oct 21 10:16:50 2009 +0100

    init: Check that start_udev succeeded
    
    If start_udev fails for any reason, notice and fall through to manual /dev
    creation.
    
    Patch from Charles Duffy <charles@dyfis.net>

commit 0732f80a7e5bece69123df201f47642d92f66ada
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Oct 20 15:37:40 2009 +0100

    Version 1.0.74.

commit 095919f2750d1311842636d084c83f46a9e377de
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Oct 20 15:03:16 2009 +0100

    Tab to space fixes, now passes 'make syntax-check'

commit 1052841bd16ab4715dfe5602f8c9ed44411b573d
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Oct 20 10:19:21 2009 +0100

    guestfs_find: Fix memory leak of sysrootdir.

commit c04840b3f8a59a2681ecbe666828296bcabd8978
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 19 17:59:00 2009 +0100

    virt-ls: Modify to use find0 instead of find.
    
    find0 is more scalable than find.  virt-ls will no longer
    crash if asked to recursively list / on a Linux guest.

commit 5d9d9a3de3df0e41ccd50eb79631f11df6470443
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 19 17:44:16 2009 +0100

    New API: find0 (unlimited version of find)
    
    This adds a new API call guestfs_find0, which is like guestfs_find
    but mainly doesn't suffer from the protocol limit of the earlier
    command.  The earlier command is not deprecated because it is
    still very useful.
    
    guestfs_find0 uses a FileOut parameter and writes the results to
    an external file.  The filenames in the output are separated by
    ASCII NUL characters (so a bit like "find -print0").
    
    There is also the addition of a regression test for this command.

commit aca523b907becc00914e271bcb29723ea3379891
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 19 16:57:54 2009 +0100

    guestfs_find: Document protocol limits for this API call.
    
    guestfs_find has to send the complete list of files in a single
    protocol message (hence, limited to 2-4 MB).  Unfortunately on
    a typical Linux guest, guestfs_find ("/") will exceed this limit
    resulting in an error.
    
    Therefore we should add an unlimited version of this call in a
    future commit.  This commit just documents the current limit.

commit 5dbb1ab1d0d66f6aa982e66d4a3eaec720ea9b0b
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 19 12:16:00 2009 +0100

    New tool: virt-ls
    
    This tool makes available the functionality of "ls", "ll", and "find"
    in a slightly simpler to use form.
    
    Examples:
    
      virt-ls -l myguest /tmp

commit a7edca1cfa96f4def8c23da96b0c8272ac4656b9
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 19 11:49:20 2009 +0100

    New tool: virt-tar
    
    This adds a new tool call virt-tar which is a general purpose
    archive and uploading tool.  It doesn't add any functionality
    which wasn't previously possible using guestfish, but makes it
    simpler to access for some users.
    
    Examples:
    
     virt-tar -zx myguest /home home.tar.gz
     virt-tar -zu myguest uploadstuff.tar.gz /tmp

commit b73523069a2170d20c52ddf070325f4678b752a5
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 19 10:45:44 2009 +0100

    tools: Make warnings about running on live guests more prominent.
    
    Add prominent warnings to the man pages about how it is dangerous
    to run these tools against live guests.

commit c2c4f451286a9da0babee43391397bacc5069eef
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 19 10:18:46 2009 +0100

    Move virt tools (virt-cat, virt-edit etc) into tools/ subdirectory.
    
    This moves the tool programs into a single directory:
      cat/* -> tools/virt-cat
      df/* -> tools/virt-df
      edit/* -> tools/virt-edit
      rescue/* -> tools/virt-rescue
    
    This in itself simplifies the build process because we only need
    one Makefile and one copy of 'run-locally'.
    
    'run-*-locally' has become just 'run-locally' and takes an extra
    parameter which is the name of the tool, eg:
      run-locally cat [virt-cat params...]
    
    virt-inspector stays in its own directory, because this contains
    more than just a single Perl script.

commit 2ae0596504e8851877dd4bbfab116220059f5505
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Oct 19 09:10:15 2009 +0100

    Comment: Describe the build order requirements for toplevel directories.

commit 0e952f7844e72712b081289d1bcd9ed0eeefe26d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Oct 14 11:24:52 2009 +0100

    Prepare for 1.0.73.

commit 51be29ec1d1cf1afe7a47bf1c2e24bfb980d8ae6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Oct 14 11:24:33 2009 +0100

    Add some missing EXTRA_DIST files.

commit 90a9c3c8ff37515c736207790cdb914a06093543
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Oct 2 15:42:14 2009 +0100

    inspector: Generate language bindings for OCaml.
    
    This commit adds a generic mechanism for deriving language bindings
    for virt-inspector, and implements one concrete binding, for OCaml.
    
    The bindings are generated from the RELAX NG schema (virt-inspector.rng)
    which is supposed to be a correct and always up to date description
    of the XML that the virt-inspector program can generate.
    
    From the RNG we generate a set of types to describe the output of
    virt-inspector for the language, plus an XML parser, plus some
    glue code to actually run an external instance of virt-inspector
    and parse the resulting XML.
    
    At runtime, an external 'virt-inspector --xml <name>' command runs
    and the XML is parsed into language-specific structures.
    
    This has been tested on the four example files (inspector/example?.xml)
    
    The only particular difficulty about the OCaml binding is the use of
    Obj.magic, which is naughty but works because of the isomorphism
    between the representation of tuples and records in OCaml.  This
    seems to cause no problems in my test program.  Apart from this, the
    OCaml binding is straightforward and could be adapted easily for any
    other languages that want type-safe virt-inspector bindings.
    
    It's important to keep virt-inspector.rng up to date with changes
    to virt-inspector's XML output format.

commit e04dde57d2f41158771e2a8877f51955bebba7f8
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Oct 5 12:25:15 2009 +0200

    build: avoid parallel ocaml/... build failure
    
    A parallel build could fail due to the use in ocaml/examples
    of ocaml/guestfs.cmi before it was built.
    * Makefile.am (SUBDIRS): Add both ocaml and ocaml/examples,
    to ensure they're built in this order, and not in parallel.
    * ocaml/Makefile.am (SUBDIRS): Don't define.

commit 843e07219d46eaf30c270970a060f9101e56e97f
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Mon Oct 5 12:20:53 2009 +0100

    Updated Polish translation

commit 2cccfb7d41abb20fd709bfba45e14c3ee9b57434
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Oct 1 16:59:28 2009 +0100

    inspector: Fix inspector/Makefile.am
    
    Accidentally pushed the older version of the patch in
    commit 9d25e82491ddcf495e1d30694327e4bfd3a23445.
    
    This includes Jim Meyering's suggested changes from
    https://www.redhat.com/archives/libguestfs/2009-October/msg00017.html

commit 0fb7b341f3f4924120513d2480a7e2cec876f7bc
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Oct 2 16:09:19 2009 +0200

    build: fix compile error
    
    Link demo scripts with just-build library, not the installed one.
    * ocaml/examples/Makefile.am (OCAMLFINDFLAGS): New variable.
    (lvs, viewer): Use it.
    This fix is based on a suggestion from Rich Jones.
    This addresses RHBZ#526917.

commit 5c44e9080a7c24dad0167da1b1c1323d29534857
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Oct 1 16:59:28 2009 +0100

    inspector: Add tests for RELAX NG schema.

commit e2168f75d8e57e496360b1900214a5790ee34d74
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Oct 1 16:58:38 2009 +0100

    inspector: Add RELAX NG schema for virt-inspector --xml output.

commit 73b620b3262683955467645a49b11420579bb1af
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Oct 2 09:51:06 2009 +0100

    configure: Update comment about viewer.ml.

commit 2af5924edcc3206cf229f99037e8352eddc7b32c
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Oct 1 16:06:17 2009 +0100

    inspector: Canonicalize device names (fix RHBZ#526717).
    
    Make filesystem device names canonical, so they are /dev/sd*
    instead of /dev/vd*.

commit fab8553412faa0f46026496e9b171edba6b8c2d7
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Oct 1 15:22:12 2009 +0100

    run-*-locally: The programs are now virt-[tool], not virt-[tool].pl
    
    This fixes commit b488436cc54288fcae8988493749f2e6c87f274c.

commit f7897e6bae3e2114f98be8b54b2c8579cb0d1356
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Oct 1 15:20:14 2009 +0100

    inspector: Don't bomb if no kernels detected.
    
    If $os->{kernels} wasn't defined, virt-inspector would exit with
    an error, leaving partial XML output.
    
    Change the code so it doesn't die in this case, instead just
    leaves out the <kernels> section.

commit 2fd34120b51a3d303e0b65bc4070b8a6b2850718
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 30 15:32:41 2009 +0100

    OCaml viewer: Use ocamlduce to replace xpath code.

commit df76ea5cd3f4cdf9f24f524119088b174bb1286d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 29 11:56:26 2009 +0100

    OCaml viewer: Handle exceptions properly.

commit 48ca519e1582f2bb2b864d0eb583af6f24dca6ac
Author: Richard Jones <rich@koneko.home.annexia.org>
Date:   Sat Sep 26 12:45:37 2009 +0100

    OCaml example: graphical disk usage viewer.
    
    This is an example of how to write an app which uses libguestfs
    and libvirt, and has a responsive user interface (using threads).
    It is a Gtk-based "graphical virt-df".
    
    Read the top of the 'viewer.ml' file first for instructions on
    how to compile.  This program is not compiled by default.

commit a12058d75f8740a587f0ebbd530dc65133cd0b47
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Sep 24 11:22:17 2009 +0100

    virt-df: Add note about parsing CSV.

commit 0d17371a43eab8003e396eab3dccdfb145b0154d
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Sep 24 10:59:01 2009 +0200

    avoid use of all ctype macros
    
    * cfg.mk (disable_temporarily): Don't disable sc_avoid_ctype_macros.
    * fish/tilde.c: Remove unnecessary inclusion of ctype.h.
    * bootstrap: Add gnulib's c-ctype module to the list.
    * daemon/m4/gnulib-cache.m4: Likewise.
    * daemon/ext2.c: Include "c-ctype.h", not <ctype.h>.
    Use c_isspace, etc, rather than isspace.
    * daemon/guestfsd.c: Likewise.
    * daemon/lvm.c: Likewise.
    * daemon/proto.c: Likewise.
    * fish/fish.c: Likewise.
    * fish/tilde.c: Likewise.
    * src/generator.ml: Likewise.
    * src/guestfs.c: Likewise.
    * examples/to-xml.c: Likewise.
    * examples/Makefile.am (to_xml_CPPFLAGS): Add -I$(top_srcdir)/gnulib/lib
    so inclusion of "c-ctype.h" works.
    (to_xml_CPPFLAGS): Rename from to_xml_CFLAGS.

commit 992e5f5c0075babc5fa2f09b42b3ed0d0cfb04a8
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Sep 24 09:34:53 2009 +0200

    maint: prune dead wood from list of skipped syntax-check rules
    
    * cfg.mk (local-checks-to-skip): Remove now-passing and
    no-longer-relevant rule names.

commit d75fb7ba6cc47f9d80db3db601d56c997b94b9a0
Author: Jim Meyering <meyering@vv.meyering.net.meyering.net>
Date:   Thu Sep 24 09:24:55 2009 +0200

    maint: use spaces, not TABs for indentation
    
    "make syntax-check" was failing.  This fixes it.
    * HACKING: Indent with spaces, not TABs.
    * configure.ac: Likewise.
    * rescue/virt-rescue: Likewise.
    * src/generator.ml: Likewise.

commit 38f58bfb92448f23ba9561d449693538be5fc703
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 23 13:49:46 2009 +0100

    Prepare for 1.0.72.
    
    Also update PO files.

commit 52069643c55a3de2977564cae85da6e3e4343b3c
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 23 14:23:47 2009 +0100

    More HTMLFILES.

commit 28cd2943f391ed1460df11b0fef15374bfc444f7
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 23 14:01:28 2009 +0100

    Include virt tools in EXTRA_DIST.
    
    Partially revert b488436cc54288fcae8988493749f2e6c87f274c.
    It turns out that automake doesn't automatically place bin_SCRIPTS
    in EXTRA_DIST.

commit 0bc1960a835013939708a24be587e2c1405287fd
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 23 12:37:26 2009 +0100

    Rename virt-[tool].pl as virt-[tool]

commit 071e8b552267be34bafdfb57e98db7992235725b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 23 12:09:26 2009 +0100

    Check return value from readlink.

commit 7658abc281b0ca301fab1f6ec0dc7f986ee839b0
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 23 12:05:55 2009 +0100

    Create manpage atomically.
    
    Don't fail with a partial file if disk full, etc.

commit 804225e1b673bc2d40e25c9ed5dc53271e96b8a5
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 23 12:04:25 2009 +0100

    Replace @...@ with $(...) in these common Makefile.am files.

commit 4ba2b2834bb619eaa9f7fb67478985c37bc7caf3
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 23 11:50:49 2009 +0100

    guestfish: Update 'SEE ALSO' section of the manpage.

commit f40f131e3ef522868c07d85a86b44567074753b3
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 23 11:12:05 2009 +0100

    New tool: virt-edit
    
    Edit any file in a guest.  This was possibly previously
    using guestfish, but having a separate command makes it
    simpler.
    
    The usage is simply:
    
      virt-edit mydomain /some/file
    
    It runs $EDITOR or vi on the file, and if the user changes
    it, uploads the result back to the VM.

commit ddb1074fab7fe84f02dad7fe01efb9b2b28dfb42
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 23 11:11:21 2009 +0100

    virt-cat: Remove some unused Perl module includes.

commit 5f5f9432fff40c8a901a7a643a9795bdb66949cc
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 22 19:50:21 2009 +0100

    Add 'virt-rescue' command.
    
    This command runs a "rescue appliance" against a virtual machine
    or disk image.  This is useful for making ad-hoc interactive
    changes to virtual machines.
    
      $ virt-rescue --ro /dev/vg_trick/F11x64
    
      Welcome to virt-rescue, the libguestfs rescue shell.
    
      Note: The contents of / are the rescue appliance.
      You have to mount the guest's partitions under /sysroot
      before you will be able to examine them.
    
      bash: cannot set terminal process group (-1): Inappropriate ioctl for device
      bash: no job control in this shell
      ><rescue> mount /dev/vg_f11x64/lv_root /sysroot
      EXT4-fs (dm-0): barriers enabled
      kjournald2 starting: pid 269, dev dm-0:8, commit interval 5 seconds
      EXT4-fs (dm-0): internal journal on dm-0:8
      EXT4-fs (dm-0): delayed allocation enabled
      EXT4-fs: file extents enabled
      EXT4-fs: mballoc enabled
      EXT4-fs (dm-0): mounted filesystem with ordered data mode
      ><rescue> ls /sysroot/
      bin   dev  home  lib64       media  opt   root  selinux  sys  usr
      boot  etc  lib   lost+found  mnt    proc  sbin  srv      tmp  var
      ><rescue> exit

commit f44169bb7da9f2871a798321fa5dc1e1395f7d67
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 22 19:52:56 2009 +0100

    Add direct appliance mode flag and implementation.
    
    When the g->direct flag is set, the appliance stdin/stdout
    are not connected to the library.  Instead they inherit the
    stdin/stdout of the caller.
    
    This is used to implement virt-rescue.

commit d8c5a56e01eef3fb6087ca36ec21691c64592028
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 22 19:51:47 2009 +0100

    Tidy up appliance rescue code.
    
    The appliance shouldn't run the daemon after we leave the
    rescue shell.  It should just exit instead.

commit 83eeae7656d90695a2a877b1b3ed0e34bbf70cab
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 22 13:34:50 2009 +0100

    Rejig configure.ac tests for qemu vmchannel support.
    
    vmchannel is no longer required, so we shouldn't test for it.
    However we should test instead for user mode networking support.
    
    Also fix up the documentation / error messages.
    
    Always test for vmchannel and user mode networking support in
    qemu.  This gives us more troubleshooting information if people
    report bugs.

commit a51afe5b02351561d01046271c6b1c984de04240
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 22 12:12:56 2009 +0100

    Prepare for 1.0.71.
    
    Update version number and update PO files.
    
    Put latest version and release date on the website front page.

commit df0743b3fe6f218674acdd7aa1dd1d41a3e1b0e0
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 22 10:41:05 2009 +0100

    Change handling of spaces on Linux kernel command line.

commit 56d09b7364b876afe306facfa2a2598dd7691131
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 21 15:34:21 2009 +0100

    Update documentation of qemu / vmchannel.

commit 905d6e571aff9cf32faf02aa91f1a216c0611684
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 21 15:27:20 2009 +0100

    Implement "null vmchannel" - no vmchannel needed!
    
    This commit removes the requirement for vmchannel, although retaining
    support for it.
    
    In this configuration, known as "null vmchannel", the library
    listens on a random loopback port.  It passes the number of this
    port to the appliance (guestfs_vmchannel=tcp:10.0.2.2:12345), and
    the daemon then connects back.  The library, instead of connecting,
    listens and accepts the connection during guestfs_launch.
    
    QEMU SLIRP (user mode networking) is still required to make this
    work: SLIRP forwards the TCP connection transparently (instead of
    explicitly as with guestfwd) to 127.0.0.1:<port>
    
    There is a window in which any other local process on the machine
    could see the port number in the qemu command line and try to
    connect to it.  This would be a devastating security hole, because
    any local process could pretend to be the daemon and feed back
    malicious replies to our remote procedure calls.  To prevent this,
    we check the UID of the other side of the TCP connection.  If
    the UID is different from the library's EUID, then we reject the
    connection.  To do this we have to parse /proc/net/tcp.  (On Solaris
    we could use getsockopt (SO_PEERCRED), but this doesn't work on
    Linux TCP sockets).
    
    Other vmchannel(s) are still supported.  This is important, because
    we can't in general be sure the qemu will always support SLIRP.
    In particular, in recent versions of qemu it is possible to compile
    out SLIRP.

commit 8b73370bc9ded1aebe22008884d6907f2f7a7e60
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 21 15:27:02 2009 +0100

    Gnulib: Add arpa-inet and netinet-in modules.

commit adc3797002e16b378d2b37ed93411d1b0a7779ce
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 21 13:03:27 2009 +0100

    Flexible guestfs_vmchannel parameter for future appliances.
    
    This reimplements parts of commit da0a4f8d1f6ddd302ceba028d87c6e009589e503
    in a different, but compatible way.
    
    We pass guestfs_vmchannel=tcp:<ip>:<port> on the command line.  This
    is intended to be used as follows (now and in future versions):
    
      tcp:10.0.2.4:6666    for guestfwd vmchannel
      tcp:10.0.2.2:<port>  for future "no vmchannel" implementation
      /dev/vcon4           for future virtio-console vmchannel*
    
    It also accepts the old-style guestfs=10.0.2.4:6666 parameter which
    is sent by older libraries, and turns this transparently into the
    correct format above.
    
    If no guestfs_vmchannel is passed, then this defaults to the guestfwd
    vmchannel which older libraries would expect.
    
    * Maybe this last one should be dev:/dev/vcon4 or file:/dev/vcon4, but
    we don't need to decide that now.

commit e05b600006ea415aa5b61a22b41d856c0159b3b9
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 21 12:32:25 2009 +0100

    Rearrange and tidy up code in guestfsd.c
    
    This just tidies up the main() function in the daemon.  There is
    no longer a huge fixed-sized buffer used for the kernel command
    line.  Variables are moved closer to where they are used.  Some
    local variables turned out to be unused - these are removed.  Finally
    the part that reads the kernel command line is moved into a separate
    function.
    
    There is only minimal functional change here (it now prints out
    the kernel command line).
    
    Literal '4' replaced with 'sizeof' expression, at Jim Meyering's
    suggestion during patch review.

commit 3aba10df858176a5a71478c501560430b9b2bf61
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 21 12:11:51 2009 +0100

    Make GUESTFWD_PORT into a string.

commit 954763ee0c5d46eecdf96ae3e47bb5006a952f9f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 21 12:11:01 2009 +0100

    Remove unnecessary extra space from qemu command line.

commit 3e4c3020c69267135fd3ff56e31be92a97baf083
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 21 11:52:53 2009 +0100

    Remove guestfs_wait_ready (turn it into a no-op).
    
    This commit changes guestfs_launch so that it both launches
    the appliance and waits until it is ready (ie. the daemon communicates
    back to us).
    
    Since we removed the pretence that we could implement a low-level
    asynchronous API, the need to call launch() followed by wait_ready()
    has looked a bit silly.
    
    Now guestfs_wait_ready() is basically a no-op.  It is left in the
    API for backwards compatibility.  Any calls to guestfs_wait_ready()
    can be removed from client code.

commit 7533cb977f697022ab4343cb3793eb6a6d79a3f0
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 21 12:01:11 2009 +0100

    Combine temporary buffers.
    
    buf[], append[] and memsize_str[] were all temporary buffers
    used in non-overlapping code.
    
    Combine them to use a single buffer (buf[]).

commit ea9cd2d66789ad225b7ec93744d3ea48c656670d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 21 11:07:47 2009 +0100

    Rearrange qemu command line order (no functional change).

commit b0de2c576c0303fc9df7d2f08b07eb245a0d9d32
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Sep 18 14:06:07 2009 +0100

    Enable new-style -chardev ... guestfwd command line.
    
    Newer versions of qemu have changed the command line format
    (again).  '-net channel' is now deprecated.  Instead we use:
    
        -chardev socket,id=guestfsvmc,path=/path/to/sock,server,nowait
        -net user,vlan=0,net=10.0.2.0/8,guestfwd=tcp:10.0.2.4:6666-chardev:guestfsvmc
        -net nic,model=ne2k_pci,vlan=0
    
    The old style format is still used if the new style is not
    detected at runtime.

commit 528ce3e8fac897c8e1071226324d13e9cfc500c8
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Sep 17 16:44:20 2009 +0100

    Fix code which looked for leaked FDs between each command.
    
    This code was not checking the return value from system()
    so it failed if uncommented.  Add ignore_value() around the
    call to system.  However, leave the code still disabled.

commit 6011d9cb076b3547c036d9d3f85581fcec2292b0
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 15 17:14:44 2009 +0100

    Remove explicit guestfs=10.0.2.4:6666 kernel command line parameter.
    
    Since we control the appliance tightly, we can just specify
    that it will always use a particular host and port, and we
    don't need to pass it on the command line each time.
    
    Also the VMCHANNEL_* constants are only relevant to the
    particular guestfwd vmchannel implementation, so we rename
    them as GUESTFWD_*.

commit 45c08534a11512453bf6257238449b3b99bf8c50
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Sep 17 15:28:41 2009 +0100

    Daemon: fix handling of errors from xread and xwrite.
    
    If xread or xwrite returns -1, that indicates an error and we
    should exit.  Note that xread/xwrite has already printed the
    error message.

commit 810507b25e83345fb6076368bae54e3eeef83f23
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Sep 17 14:50:04 2009 +0100

    Fix verbose packet dumping functions.
    
    Add the configure parameter --enable-packet-dump so that this
    code can be enabled without editing the source.
    
    This code is normally commented out, because it is too verbose
    unless you happen to be debugging the underlying protocol.  Because
    it is normally commented out, I found it had bit-rotted slightly.
    This commit also fixes the obvious problems.

commit cf481012fc4f97b52e098e40f5eae356ca7d42ab
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Sep 17 14:49:06 2009 +0100

    'len' should be an unsigned 32 bit int.
    
    This only happened to work by accident before because 'unsigned len'
    happens to be 32 bit on all platforms we support.

commit f8692af73e166d880bd3c084c3fd26f2c56ccf08
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Sep 17 14:39:42 2009 +0100

    Disable -Wunsafe-loop-optimizations
    
    This warning indicates that GCC could not do a particular sort
    of loop optimization.  It pops up randomly in certain forms of
    looping code, and seems safe to ignore.

commit f50ceed44c5d3d1baa06db6a325710b8bd957d28
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 15 17:13:24 2009 +0100

    Update PO files (no functional change).

commit 8e0747f2fd5bbe504e350c97ca60de8ee176d012
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 15 11:13:54 2009 +0100

    Prepare for version 1.0.70.

commit 7c1bbe77efdefed4e105efbfff32a4fb4b8230ae
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 15 11:12:45 2009 +0100

    Update PO files.

commit 26130719c6852f322356c55589efde4584bb0708
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Sep 15 11:10:20 2009 +0100

    Set minimum gettext version to 0.17.
    
    This fixes the problem that the 1.0.69 tarball would fail in
    the po/ subdirectory when installing:
    
    make[1]: Entering directory `/builddir/build/BUILD/libguestfs-1.0.69/po'
    /bin/sh @MKINSTALLDIRS@ /builddir/build/BUILDROOT/libguestfs-1.0.69-1.fc11.x86_64/usr/share
    /bin/sh: @MKINSTALLDIRS@: No such file or directory
    make[1]: Leaving directory `/builddir/build/BUILD/libguestfs-1.0.69/po'
    
    RHEL 5.3 has gettext 0.14.6.  However the tarball will still
    build (since it includes all the required code).  This may cause
    a problem if RHEL users want to build from the git repository.

commit 0e9cc9dc9e6318600da938782257d99c95ed3a46
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Tue Sep 15 09:23:49 2009 +0100

    Fix comparison between signed and unsigned (for RHEL 5).

commit f59cd0ee260c09bdd240c2ba1212abb0d6248dc4
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Mon Sep 14 20:14:47 2009 +0100

    Move decl out for C99 compliance.

commit 037267f1b8dce102e0dfc2fffdaf96cd11a6846c
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 14 19:35:58 2009 +0100

    Update PO files.

commit 37497dd20860c208198a3ca50798a25623b1bfb1
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 14 19:35:46 2009 +0100

    Move guestfs-internal-actions.h to EXTRA_DIST.

commit 52be0a66c9564990d7f9deed28b2364d36f3319f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 14 19:28:14 2009 +0100

    Prepare for 1.0.69.

commit 91b3e248128718c53bda19d0e0fd7451a85b75ba
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Sep 11 20:00:30 2009 +0100

    Remove main loop.
    
    This commit removes the external main loop, which never worked
    and caused a number of bugs.  Requests are now done synchronously,
    and if the user wants to have requests issued in the background
    or to have a responsive GUI, then they'll just have to use threads.
    
    The big change is to push all reads and writes through two
    functions called send_to_daemon (for writes) and recv_from_daemon
    (for reads) which operate synchronously.  These functions
    read/write whole messages, and also handle checking for EOF
    (ie. daemon died) and asynchronous log message events from
    qemu (eg. from debug / dmesg printed by the guest).  A more
    complete description of how these work can be found in the code.
    
    This code passes a complete run of the tests.
    
    Bugs believed to be fixed by this commit:
    
      https://bugzilla.redhat.com/show_bug.cgi?id=501888
      internal error: reply callback called twice
    
      https://bugzilla.redhat.com/show_bug.cgi?id=504418
      In virt-inspector: "download: guestfs_download reply failed, see earlier error messages"
    
    I have tried to avoid reintroducing this:
    
      https://bugzilla.redhat.com/show_bug.cgi?id=508713
      libguestfs: error: write: Broken pipe (guestfish only)
    
    One other benefit of this is that 'set_busy/end_busy' calls
    no longer appear in traces.

commit d1ce767d6b7fc8934765296612736abc3cda7b43
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 14 16:21:04 2009 +0100

    Don't enable trace in set_trace test.
    
    This leaves trace enabled afterwards, resulting in some
    ugly test messages.

commit 893108af57a35f4878115e0811beb89596cb78f4
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 14 15:43:23 2009 +0100

    Fix type punning warning about use of CMSG_DATA in Rawhide.

commit cc73e4b1c38d81f84299a75c3f7fe40bfebd7f9d
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Sep 11 09:27:57 2009 +0100

    guestfish: Enable grouping in string lists
    
    This change adds the ability to group entries in a string list with single
    quotes. So the string:
      "'foo bar'"
    becomes 1 token rather than 2. Consequently single quotes must now be escaped:
      "\'"
    resolves to a literal single quote.
    
    Incidentally, this change also alters another, probably unintentional behaviour
    of the previous implementation, in that tokens are separated by any amount of
    whitespace rather than a single whitespace character. I.e.:
      "a  b"
    resolves to:
      'a' 'b'
    rather than:
      'a' '' 'b'
    That last syntax can be used if an empty argument is still desired. Whitespace
    is now also defined to include tabs.
    
    parse_string_list can also now fail if it contains an unmatched open quote.

commit 4ec1b719a203fbc0d4789de9852d2a7c5f39f621
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Sep 14 13:41:02 2009 +0100

    Ignore localrepo/ directory.
    
    This can be used by people building from source and packagers for
    their own purposes.

commit f4bfd3753dd08d4f98e9768edc5f848a1615cfdf
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 9 17:48:30 2009 +0100

    Add command trace functionality.
    
    Enable this by calling guestfs_trace (handle, 1) or by
    setting the LIBGUESTFS_TRACE=1 environment variable.

commit dfbbf1f34f5526fe9b812c34bd6c7828c4757f2f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 9 12:34:13 2009 +0100

    Non-daemon actions indirect through generated code.
    
    Previously non-daemon actions were called directly by
    user code, eg:
    
    /* Non-generated */
    int
    guestfs_set_verbose (guestfs_h *g, int v)
    {
      g->verbose = !!v;
      return 0;
    }
    
    This changes these actions so they go indirectly via
    some generated code, eg:
    
    /* Generated */
    int guestfs_set_verbose (guestfs_h *g,
                    int verbose)
    {
      return guestfs__set_verbose (g, verbose);
    }
    
    /* Non-generated */
    int
    guestfs__set_verbose (guestfs_h *g, int v)
    {
      g->verbose = !!v;
      return 0;
    }
    
    The aim is to have a place in the generated code where
    we can add debug or tracing information for these non-
    daemon calls.

commit 8e366e06b6473a65d45d7eb9c56a7fbae1ad3971
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Sep 11 17:04:13 2009 +0100

    guestfish: Redirect stdout when executing remote commands
    
    guestfish --listen necessarily redirects its stdout to /dev/null so as not to
    interfere with eval. The remote protocol doesn't contain any other provision for
    collecting stdout for the caller, so executing guestfish --remote will never
    generate any output.
    
    This patch fixes that by forwarding the caller's STDOUT to the listener over the
    unix socket connection. The listener redirects its STDOUT to the caller's STDOUT
    for the duration of the command, then closes it again.

commit 28bead40c6c7c856dcd3f75cfc79e1ef8e6dacf7
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Sep 12 09:45:44 2009 +0100

    Update TODO list

commit ff9d661b56763a575a16317185de7c58ed6b0d63
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Sep 11 20:21:37 2009 +0100

    Add diffutils package.
    
    On Fedora 12, /usr/bin/cmp is not pulled in unless we explicitly
    add the diffutils package.

commit b9cd81a10cb35478aba0c58fdec0e8566d3985fa
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Sep 11 14:27:54 2009 +0100

    Add echo_daemon command
    
    echo_daemon is a simple echo which can be used to test connectivity between the
    client and daemon.

commit 2fec523f25853ed5e1765f66ca6e82c0e060a980
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Sep 11 10:33:32 2009 +0100

    generator.ml: Fix string list memory leak
    
    Parsed string lists are allocated by malloc, but were never freed.

commit 335e2d438eef18ad2cda357069b52943f26f7c0d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 9 12:03:10 2009 +0100

    Ignore some more m4 files.

commit a102553ae873d263ab880b2b967242e015eaab9e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Sep 9 12:01:42 2009 +0100

    Don't include gnulib files in POTFILES.in.

commit c8cac9c4bac711e937d00baeb4469edaab748999
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Sep 4 18:00:23 2009 +0200

    avoid build-from-scratch failure due to missing daemon/configure
    
    * bootstrap: Don't use autoreconf's --norecursive
    option.  We require the default --recursive behavior in order
    to create daemon/configure.  Reported by Matthew Booth.

commit d950e0718d22f2fa3b4fbfeac9203ad801997ceb
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 31 20:29:08 2009 +0200

    maint: guestfs.c: avoid warning about possible NULL deref from llvm/clang
    
    * src/guestfs.h (guestfs_abort_cb): Declare with attribute noreturn.

commit c7a3809cd97febb04ad0748ba59e01e7859a347b
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 31 19:51:46 2009 +0200

    maint: guestfs.c: remove unnecessary initialization
    
    * src/guestfs.c (guestfs__receive_file_sync): Don't set "r",
    only to ignore it.

commit 03ede659b227e2bf5a5d51c2a6bb76058b3a9361
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 28 14:07:35 2009 +0200

    generator.ml: avoid a warning about signed overflow in tests.c
    
    * src/generator.ml: Emit "unsigned long int n_failed;" rather than
    "int failed;", to avoid warning from gcc about "assuming signed
    overflow does not occur when simplifying conditional to constant".

commit f80d93ea1360b5f0ba2ba575572eb937a7eb5361
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 28 13:53:36 2009 +0200

    generator.ml: avoid defined-but-not-used warnings in guestfs_c_actions.c
    
    * src/generator.ml (emit_ocaml_copy_list_function): New function.
    Emit a function definition only if it will be used.

commit b981262c909b5bf2cd4956c039276039e2f1869b
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 28 13:43:16 2009 +0200

    generator.ml: avoid warnings in generated ocaml/guestfs_c_actions.c
    
    * src/generator.ml: Emit prototypes for ocaml_guestfs_* functions,
    to avoid warnings from gcc -Wmissing-prototypes.  Normally we'd put
    these somewhere else, but in this unusual case, they're not needed
    anywhere else.  Handle the >5-argument case, too, for these:
    ocaml_guestfs_test0_byte, ocaml_guestfs_sfdisk_byte,
    ocaml_guestfs_sfdisk_N_byte.

commit 272e0007674498787c7abe85ac75b42cdeb41801
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 24 11:39:42 2009 +0200

    build: enable gcc warnings in capitests/ and ocaml/
    
    * capitests/Makefile.am: Use $(WARN_CFLAGS) and $(WERROR_CFLAGS).
    * ocaml/Makefile.am:: Likewise.

commit e61d51d8044c4d488a30b2a2f8a3d87edc9fa7c8
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 27 13:23:20 2009 +0200

    ocaml/guestfs_c.c: avoid warning about missing prototypes
    
    * ocaml/guestfs_c.c (ocaml_guestfs_create, ocaml_guestfs_close): Declare.

commit a1c4f731c5d626934ef241ba57f98f0efb723a0a
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 27 12:36:25 2009 +0200

    ocaml/guestfs_c.c: avoid warning about initialization discarding "const"
    
    * ocaml/guestfs_c.c (guestfs_custom_operations): Add a cast.

commit 3e97b7664a385300bebdc81c8b8638c5d876af9f
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 27 12:34:38 2009 +0200

    ocaml/guestfs_c.c avoid signed/unsigned-comparison warning
    
    * ocaml/guestfs_c.c (ocaml_guestfs_strings_val): Declare index as
    unsigned int.

commit d88f17c5783d41865013c69c9783641c43321f05
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 25 16:21:48 2009 +0200

    build: use only one m4/ directory
    
    * Makefile.am (ACLOCAL_AMFLAGS): Specify only one include dir: m4.
    * bootstrap: Tell gnulib-tool to put .m4 files in m4/, not gnulib/m4.
    * autogen.sh: Move autoreconf from here into...
    * bootstrap: ...here, so that it is run only when gnulib-tool is.
    Also, tell it to skip the usual autopoint and libtoolize runs.
    * m4/.gitignore: Update.

commit 1d32a24cc64a62dbcd023bcbeb2d50a95b5cb381
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 25 09:10:21 2009 +0200

    build: invoke autopoint with --force
    
    * bootstrap: Invoke autopoint with --force, to avoid warning
    about existing build-aux/config.rpath.
    Invoke libtoolize before gnulib-tool, to avoid spurious warnings.
    * autogen.sh: Add comments.
    Remove build-aux/config.rpath before running autoreconf.

commit 5606c4af0d2ca90103beb0513c482858b228d650
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 25 09:43:04 2009 +0200

    build: update gnulib submodule to latest
    
    * .gnulib: Update to latest.

commit 0a49ae2033e03a1904c8832ae828f232d76edb99
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 19:44:36 2009 +0200

    build: don't define _GNU_SOURCE manually
    
    Now that we're using gnulib in earnest, any manual definition
    would provoke a redefinition warning.
    * fish/fish.c (_GNU_SOURCE): Don't define.
    * fish/destpaths.c (_GNU_SOURCE): Likewise.
    * src/guestfs.c (_GNU_SOURCE): Likewise.
    * bootstrap (modules): Add asprintf, strchrnul, strerror, strndup
    and vasprintf.
    * fish/fish.c (main): Set argv[0] to sanitized program_name, so
    functions like getopt_long that use argv[0] use the clean name.

commit 06284b56ee1648f7dc1eab0dd2027d2358d90772
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 19:19:39 2009 +0200

    guestfish: diagnose stdout write failure
    
    Use gnulib's closeout module to ensure any failure to write to
    stdout is detected and reported.
    * fish/fish.c: Include "closeout.h".
    (main): Call atexit (close_stdout);
    * bootstrap (modules): Add closeout.

commit 692cdd9e5f037ca1761c5339f0173576c153dc5a
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 24 11:32:17 2009 +0200

    guestfish: don't try to diagnose getopt failure
    
    * fish/fish.c: ... getopt_long already does that.  Instead, suggest
    "Try `guestfish --help' for more information."

commit a2203ed709e8a4fe9844b437e5d04c4c9f3bbc29
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 19:05:20 2009 +0200

    guestfish: write --help to stdout, use gnulib's progname module
    
    * fish/fish.c: Include "progname.h".
    (main): Call set_program_name to initialize.
    Don't hard-code guestfish everywhere.  Use program_name.
    However, be careful when modifying argv[0], since it is used
    in the hopes that it is an absolute file name.
    (usage): Don't spew all of --help for a mis-typed option.
    Split long lines.

commit d672120d67247d6829781a675458dc82563f38c8
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 24 11:34:22 2009 +0200

    build: avoid some autoconf warnings
    
    * configure.ac: Move gl_EARLY and gl_INIT to be earlier.

commit b9b583fa393888db9935ecc2dfec2d6c9fc0f30d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Aug 24 11:45:49 2009 +0100

    Todo: ntfsclone.

commit 49c8717a715085356f16916a106a501345688d6b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Aug 22 10:40:42 2009 +0100

    Add waitpid along guestfs_close path (RHBZ#518747).

commit 4e783c122d4b3a29a21891f86778e43a2e5bc347
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 20 13:56:47 2009 +0200

    fish/: enable -Werror and all of gcc's warning options
    
    * fish/Makefile.am: Use $(WARN_CFLAGS) $(WERROR_CFLAGS).

commit a22ee89ad551a2800447e679fe6b660f36baa1ce
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 15:04:32 2009 +0200

    generator.ml: avoid signed/unsigned-comparison warning in fish/cmds.c
    
    * src/generator.ml (emit_print_list_function): Emit code that doesn't
    evoke warnings.  s/int/unsigned int/
    (emit print_*_indent): Likewise, s/int/unsigned int/

commit a6da8aba66b104e3eec08ddc63c05c13a68d80a4
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 15:02:16 2009 +0200

    destpaths.c: avoid signed/unsigned-comparison warning
    
    * fish/destpaths.c (free_words): Change param type: s/int/size_t/.

commit e637f845f11669d1a5453d996abb14f3835256ff
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 14:59:49 2009 +0200

    fish.c: don't perform arithmetic on void* pointers
    
    * fish/fish.c (xwrite): Use char*.

commit 1414c8bf6c77c7534b10b2e03caa573cd90b914a
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 14:58:20 2009 +0200

    fish.c: avoid signed/unsigned-comparison warning
    
    * fish/fish.c (script): Change type of index to "unsigned int".

commit c825490e72da9afdaaec6685774728093d71dc3c
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 14:55:39 2009 +0200

    fish.c: avoid "assignment discards qualifiers..." warning
    
    * fish/fish.c (main): Cast-away-const.
    * fish/fish.h (bad_cast): Define.  Safer than using an actual cast.

commit 65987b21449aaa1cbb37075126366fe4419cc072
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 14:50:23 2009 +0200

    tilde.c: avoid a warning
    
    * fish/tilde.c (find_home_for_username): Change param type: s/int/size_t/
    (try_tilde_expansion): Adjust caller.

commit 3ad2c6142567f0b307002ef2c74f23e43115843f
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 14:45:13 2009 +0200

    fish.c: avoid warnings
    
    * fish/rc.c (UNIX_PATH_MAX): Remove unused definition.
    * fish/fish.h (rc_listen): Declare with __attribute__((noreturn)).

commit ad521cd478697b1395bcaa84842fc86eb816bca5
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 21 14:41:49 2009 +0200

    edit.c: avoid warning about signed/unsigned comparison
    
    * fish/edit.c (load_file): Change type of param from int to size_t.
    (do_edit): Adjust caller.

commit 8d62446afaee3db1c8aba80dc583ddf281d84038
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 20 16:28:35 2009 +0100

    Remove virt-v2v.  New repo: http://gitorious.org/virt-v2v/

commit 71726c63d374a311d792fa7ed2c9a66de3074128
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 20 12:29:46 2009 +0200

    daemon: diagnose socket write failure
    
    * daemon/proto.c (send_chunk): Don't ignore socket-write error.
    * daemon/proto.c (send_file_end): Return "int", not void,
    so we can propagate send_chunk failure to caller.
    * daemon/daemon.h (send_file_end): Update prototype.
    * daemon/tar.c (do_tar_out, do_tgz_out): Update uses of send_file_end.
    * daemon/upload.c (do_download): Likewise.

commit 8fcb034d9aca20c82f0d890b2ba6e1484ae627f1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 19 21:37:56 2009 +0100

    tests: Found three more references to the squashfs, replaced with ISO.

commit 08962d9c21a7169a95a8c58588ca70040821e043
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 19 17:51:40 2009 +0100

    tests: namemax on ISO devices is 255
    
    Was 256 for the old squashfs device.

commit d91e0eb896e2a440ba464aff7fd3e2e69be088db
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Aug 19 15:51:27 2009 +0100

    Cleanup initialisation of hash entries in Lib.pm

commit 9dede93f422d4da2fffbc89ec6e931cbf638a4e1
Author: Richard Jones <rjones@debian5x64.home.annexia.org>
Date:   Wed Aug 19 15:09:27 2009 +0100

    tests: Use ISO instead of squashfs.
    
    The squashfs format changes too much.  Use an ISO file for
    the tests instead.

commit 664fd90b1cf22ac9be02067424c0597a6609c380
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 19 14:03:35 2009 +0100

    mke2fs: Use e4fsprogs programs if available.
    
    On RHEL 5, mke2fs is ancient, and there is a non-standard "mke4fs"
    binary which acts like the more recent mke2fs on Fedora.  Since there
    are several annoyances and actual bugs in the ancient RHEL 5 mke2fs,
    use mke4fs instead if it's available.

commit db3db0edd58855323ae036002625e283b2a0a948
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 19 14:02:08 2009 +0100

    tests: modprobe fat instead of ext2 module.
    
    On RHEL 5, ext2 is compiled into the kernel, so trying to modprobe
    it will fail.  I've checked that fat.ko is always a module on the
    platforms we care about (RHEL 5, Fedora 11, Debian), so use that
    to test instead.

commit d8216372303ebf06c13c94699800713adee7f829
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 19 14:01:13 2009 +0100

    tests: Conditionally skip UUID tests.
    
    More tests introduced which break with old e2fsprogs that didn't
    support UUIDs.  Skip those tests when the old platform is
    detected.
    
    Also tidy up this code a little.

commit 48df55634d2beee0ccc1d10f6e4449441497d937
Author: Jim Meyering <meyering@redhat.com>
Date:   Wed Aug 19 14:30:02 2009 +0200

    avoid build failure due to Haskell keyword clash
    
    * src/generator.ml: Fix this particular problem by
    renaming the "module" parameter to "modulename".
    Avoid the general problem by ensuring that no parameter name is
    in the set of nearly all Haskell, OCaml and C reserved words.
    (zfile): Adjust one more offender: s/method/meth/.

commit 3f3e987d850729ed99e2930f86345ab3be5ae8e9
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Aug 19 12:52:16 2009 +0100

    Export inspect_linux_kernel in Lib.pm

commit 1faaa0b63a3a7a1f23bcab6b42c24eb6acc8b6b9
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Aug 19 11:42:46 2009 +0100

    Add boot/grub_fs to output
    
    If present, this gives the mount point of the filesystem which contains grub.
    All entries in grub.conf will be relative to this filesystem.

commit ada916b3ed675ab8b88581b75356f6b25dbf63d9
Author: Jim Meyering <meyering@redhat.com>
Date:   Wed Aug 19 10:01:07 2009 +0200

    guestfish: detect more failed syscalls
    
    * fish/fish.c (issue_command): Detect/diagnose more failed syscalls.

commit f68eeee2dbc6bb67673ff0655ea169b3ba7e7e0e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 19 09:44:51 2009 +0100

    Prepare for version 1.0.68.

commit bf0300fa82aa049a5f446a510000a2af84497516
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 19 09:37:44 2009 +0100

    guestfs_launch: Correct checks for dup failure.

commit 09d667c5d15c62e38f32c6acd6858e62645da4e5
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 19 09:10:24 2009 +0100

    Updated PO files.

commit cce84d778fc1bb3dce84bd8cf2329e9bf3c7d287
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 19 09:09:47 2009 +0100

    build: Comment out some unused macros.
    
    GCC 4.4.1 warns about some unused macros.  Comment these out
    while they are not used.

commit eabcb7ffaf3f85c18d53a13ed26693ad748835d8
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 18 14:56:48 2009 +0200

    build: new configure-time option: --enable-gcc-warnings
    
    * configure.ac: Define/configure it.
    * src/Makefile.am: Use new variables.

commit 97af17e32667345fd43199aaeecf9e0999c50a0f
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 18 15:39:26 2009 +0200

    suppress warnings from -Wmissing-noreturn
    
    Even though these functions are marked as "not implemented yet",
    and they will surely return a value once implemented, ...
    * src/guestfs.c (select_add_timeout): Declare with noreturn attribute.
    (select_remove_timeout): Likewise.

commit 09b8afefba2d6f4aed2b1c7f08cc912799f386fc
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 18 15:35:32 2009 +0200

    suppress a warning from -Wswitch-default
    
    * src/guestfs.c (guestfs_end_busy): Add a "default:" label.

commit 0da873c120fa1d31ce8a7d9276143f34c469d082
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 18 15:32:40 2009 +0200

    suppress signed/unsigned-comparison warnings
    
    * src/guestfs.c [struct guestfs_h] (msg_in_size, msg_in_allocated):
    (msg_out_size, msg_out_allocated): Change type from int to unsigned int.

commit 9802e6845225289c8c9ff6b935cc9b8ef41bb9db
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 18 15:23:35 2009 +0200

    build: don't perform arithmetic on void* pointers
    
    * src/guestfs.c (receive_file_data_sync, xread, xwrite): Use char*.

commit 85f36bdfe34a6c2d89d8c95d45385d94eacb9d87
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 18 15:12:26 2009 +0200

    generator.ml: suppress signed/unsigned-compare warnings
    
    * src/generator.ml (check_reply_header): Emit parameter declarations
    that are unsigned, so as to avoid signed/unsigned-compare warnings.

commit e74c4053eb1943c86f3cd7f59e02b165f344438c
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 18 15:03:55 2009 +0200

    build: suppress an ignored-dup-return-value warning
    
    * src/guestfs.c (guestfs_launch): Handle dup failure.

commit fcc988ff855595ad1729d12a1d34a3e65a8159d8
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 18 14:55:59 2009 +0200

    build: suppress an ignored-write-return-value warning
    
    * bootstrap (modules): Add ignore-value.
    * src/guestfs.c: Include "ignore-value.h".
    (stdout_event): Ignore failure to write to stderr.
    Also, prefer STDERR_FILENO over the literal "2".
    * src/Makefile.am (libguestfs_la_CPPFLAGS): Include gnulib's .h files.
    (libprotocol_la_CFLAGS): Remove -Wall -Wno-unused.

commit 0889e5afe6de124b1c54a912efd4aa11f89f4e51
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Aug 18 15:06:20 2009 +0100

    New 'modprobe' command.
    
    Allow kernel modules to be loaded into the appliance.

commit 95c4ce2af34220afd56cbc1999df31a989ba5429
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 18 10:15:57 2009 +0200

    avoid compiler warnings about unused vars in generated code
    
    * fish/Makefile.am: Compile rc_protocol.c into a convenience library,
    so it can have its own CFLAGS, and link that into guestfish.
    
    generator.ml: Use TABs, not spaces for indentation.

commit 645caae7f8ca5b6e1cf105795385df270f7b8c22
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Aug 18 09:16:56 2009 +0100

    generator: Small code rearrangement.
    
    Move code which updates pod2text memo file into a separate function.

commit 4ec7159a777e77f7ad05c7f9edefdfae7c09c7f2
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 20:44:01 2009 +0200

    generator.ml: do not emit unused print_* functions
    
    * src/generator.ml: Do not emit functions like print_xattr,
    print_lvm_vg, print_inotify_event, that are not used.

commit f3d773328331670052356896e016c8c469b76dc5
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 20:28:34 2009 +0200

    generator.ml: do not emit unused print_*_list functions
    
    * src/generator.ml (emit_print_list_function): New function.
    Emit a function definition only if it will be used.

commit 428792851da442228b2b272a640d0f081b788444
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 18:47:46 2009 +0200

    generator.ml: avoid warnings in generated tests.c
    
    * src/generator.ml: Avoid warnings in generated tests.c, regarding
    print_strings, and in exercising any function that takes a StringList
    or DeviceList parameter.
    (print_strings): Change param type to "char *const *s".
    Declare fully-const initializer for each list-taking function use.
    Cast *List argument to "(char **)".

commit 116094a21a0b35e169def4c344f63c0e6066f615
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 18:44:37 2009 +0200

    avoid compiler warnings about unused vars in generated code
    
    * src/Makefile.am: Compile protocol.c into a convenience library, so it
    can have its own CFLAGS, and link that with the destination one.

commit a8d3384ec74bea0da7ca1db07d9886dceca69b67
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Aug 18 08:56:18 2009 +0100

    Implement 'debug ls' and 'debug ll' commands.
    
    These commands can be used to list files in the appliance.

commit ecc06fc0c498395103ab357196e0688469e12425
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 21:14:34 2009 +0200

    generator.ml: Use TABs, not spaces for indentation.

commit 52c0f286850943334fc6491d6e24b1e216c4849c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 17 12:27:43 2009 +0100

    Ignore manywarnings.m4 / warnings.m4.

commit 41c8ce4cb694182f9460e2d99042c4353c275817
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 17 12:26:58 2009 +0100

    java: Small fix to Java bindings.
    
    Missing declaration of local variable 'i'.

commit a7c7b038489531db7a717a5fdd12597c2c33e714
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 17 12:23:32 2009 +0100

    HACKING: Document make targets and ./configure --enable-gcc-warnings.

commit 21280774ec12d8ffa018b27157ffa8aa5768f5d3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Aug 17 12:23:16 2009 +0100

    Remove redundant macro.

commit 9c60bb390a009de2311f1d1da6e71260010c4833
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 11:56:10 2009 +0200

    indent with spaces, not TABs

commit f40892ca2f89d4572c6ff8035e21b4a4a6681d11
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 10:35:05 2009 +0200

    daemon: enable -Werror and many gcc warnings when --enable-gcc-warnings
    
    * daemon/m4/gnulib-cache.m4: Add two modules: manywarnings, warnings.
    * daemon/configure.ac: Implement --enable-gcc-warnings, and selectively
    disable a few warning options that are either not useful or that provoke
    too many warnings for now.
    Define and AC_SUBST WARN_CFLAGS and WERROR_CFLAGS.
    * daemon/Makefile.am (guestfsd_CFLAGS): Use $(WARN_CFLAGS)
    and $(WERROR_CFLAGS), rather than just -Wall.

commit 9730ac3f64b929515ee38883cbc1dbc1a1b5b926
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 10:30:52 2009 +0200

    xattr.c: avoid warning about comparison between signed and unsigned
    
    * daemon/xattr.c (getxattrs): Use an unsigned index.

commit 15890c02484284a2d8025c30c0a3470fe30f6fdd
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 10:25:42 2009 +0200

    guestfsd: don't ignore failed write-to-socket
    
    * daemon/proto.c (reply): Fix typo that would cause us to ignore
    failed write-to-socket.

commit c8c06989bec98519a70667b81cdc106f29152190
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 09:51:52 2009 +0200

    daemon.h: avoid warning about possible noreturn function
    
    * daemon/daemon.h (main_loop): Use "noreturn" attribute.

commit bab25ba43689fde1c3e9748572dfba9f219944cd
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 09:43:18 2009 +0200

    sfdisk.c, fallocate.c: use a string literal as format
    
    * daemon/fallocate.c (do_fallocate): Format was not a string literal.
    * daemon/sfdisk.c (sfdisk): Likewise.

commit 77f65cfa24caccbfb8031724f8ec6d8690a8d48e
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 09:40:16 2009 +0200

    wc, blockdev: avoid warnings about discarding "const" qualifiers
    
    * daemon/wc.c (wc): Make "flag" param const.
    * daemon/blockdev.c (call_blockdev): Likewise, for "switc".

commit 45e367e610cf0ecf4dc8efe6241714cef874f39d
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 09:38:50 2009 +0200

    daemon/zero: don't ignore write and close errors
    
    * daemon/zero.c (do_zero): Detect write and close errors.

commit 5057a88680b206dee512d0339108247389f7c6d0
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 09:24:47 2009 +0200

    guestfsd.c: don't perform arithmetic on void pointers
    
    * daemon/guestfsd.c (xread, xwrite): Use char* pointers instead.

commit 9be9050a5bdcf8557ea32e6bd8fb17265dd7bc04
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 09:16:20 2009 +0200

    command.c: avoid shadowing a global function
    
    * daemon/command.c (do_sh_lines, do_sh): Do not shadow global "command".

commit 0925dea85867ea2bf59fda536d5e7ca5ee685aca
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 09:15:34 2009 +0200

    avoid warning about old-style no-param function definition
    
    * daemon/df.c (do_df, do_df_h): Add "void".
    * sync.c (do_sync): Likewise.

commit 24f5b285ca255896598d11ed7e79774573ea35ae
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 17 08:49:00 2009 +0200

    generator.ml: emit slightly prettier code
    
    * src/generator.ml: Emit a few omitted newlines.

commit 0ca568c93763a3158aa2423d39c03694cf209978
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 14 16:54:44 2009 +0200

    python: avoid "_POSIX_C_SOURCE" redefinition warning
    
    * src/generator.ml: Include <Python.h> *before* <stdio.h>
    to avoid redefinition warning about "_POSIX_C_SOURCE".

commit 7df26d657d13c1bded35ea3f79f969f7e899b506
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 7 09:38:37 2009 +0200

    adjust const "**" pointers to avoid warnings
    
    Also, ...
    * src/generator.ml: Add DeviceList type, and propagate that change
    out to all calling/interface code.

commit ef6da9d74355cc5bc73bdf79c261ccefa6632824
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sun Aug 16 11:15:10 2009 +0100

    test-tool: Recognize '-t timeout' as an option.

commit 8a927dc92ff4f0f71445e2c7b8ec866082446cfb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 15 18:03:21 2009 +0100

    New commands: mkfs-b, mke2journal*, mke2fs-J*
    
    mkfs-b: Pass the -b (blocksize) parameter to mkfs.
    
    mke2journal and friends: Lets you create external ext2 journals on
    devices.
    
    mke2fs-J and friends: Lets you create ext2/3/4 filesystems with
    external journals.

commit 8678a9ffc75b0ce63292cd43ddb01afd616e28ff
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Aug 15 18:02:08 2009 +0100

    generator: Generate the UUIDs for tests randomly.
    
    Adds a uuidgen function which gets the random UUID from the
    uuid program.  Uses this for tests.

commit b3c7f0122210f2849f262ba090fd27880d8d5069
Merge: 6adf753f0 c7fa9cdc4
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 14 22:05:39 2009 +0200

    Merge branch '226-elide'

commit 6adf753f01f3e0423217609a879a8f11b67c0bd6
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 14 21:01:48 2009 +0200

    build: avoid "make sytnax-check" failure
    
    * daemon/configure.ac: Change a leading TAB to 8 spaces.

commit c7fa9cdc498c3cc0a9caeb7cd3b2df0dbe84f303
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 14 19:33:35 2009 +0200

    generator.ml: don't emit unused functions
    
    * src/generator.ml: Use "rstructs_used" to emit definitions only for
    put_TYPE_list functions that are used.

commit cfd9440267f22abc65bae74c67d50c67f4219068
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 14 19:12:18 2009 +0200

    generator.ml: factor out a function
    
    * src/generator.ml (emit_put_list_function): New function.

commit d651809dd11248a6d1e97f1ed19bde471461703a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Aug 14 16:54:55 2009 +0100

    Work out which RStruct/RStructList structs are really used, and how.

commit c7e519b3e12c1fbe4a22066b34bb4205e80af194
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 20:45:06 2009 +0100

    guestfish: Add --selinux option.

commit 5402bec46503da01a9eacfb958c76ca388bee762
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 17:27:38 2009 +0100

    Version 1.0.67.

commit 7f65b8cff651d291960611111990613df2d1fff8
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 13 18:29:59 2009 +0200

    tests: increase likelihood that heap abuse triggers failure
    
    * regressions/Makefile.am (TESTS_ENVIRONMENT): Always set
    MALLOC_PERTURB_ to a random value in 1..255.

commit 7363291caa65dbe46cde36f83edf7039f235197a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 17:23:25 2009 +0100

    appliance: Remove /usr/sbin/tcpd - it's unreadable on RHEL 5.4.

commit ac57115e8d253f1a4281b671b5cf0b1801deacfa
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 17:16:14 2009 +0100

    appliance: Replace LANG=C with LC_ALL=C

commit 9a80c2f5139b6a6202ef1c090fc2799997e4c1c5
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 16:41:37 2009 +0100

    umount: Enable device name translation for device parameter.

commit 07210fc12b0db771cd006f045d613afe2b7a908f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 15:00:38 2009 +0100

    mount: Check mountpoints are absolute paths.

commit 0c2c125aa2b5e93a63f5d9db4587ab7d489b7d80
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Thu Aug 13 14:43:57 2009 +0100

    selinux: Don't fail if libselinux is not found.

commit d12860163f92b098e35aebd51a7d5f1969035aa6
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 14:41:52 2009 +0100

    Misc parameters which are String but should be Pathname.

commit cb42ca4ffeac6bde8b5e52fb246f0b2e009592fa
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 14:41:05 2009 +0100

    In rmmountpoint, have to explicitly check for ABS_PATH (*not* NEED_ROOT).

commit ee0967747c84fec408e85722993ef9b083daeb72
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 14:39:59 2009 +0100

    inotify-add-watch does not need to explicitly check for ABS_PATH.

commit 333cd2d01864354bffd86563ca652e85f24592e5
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 14:39:31 2009 +0100

    cp/cp-a/mv parameters marked as Pathname.

commit 61053e888d2bcc922dde4cf55e9879f821f8f2ad
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 13 14:37:43 2009 +0100

    do_equal does not need to explicitly check for NEED_ROOT/ABS_PATH.

commit 9b0b0f50fb044dd1f5bcef6f6f5d30c6e448cabd
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 13 14:47:00 2009 +0200

    generator.ml: convert leading TABs to spaces

commit 57cd32214d1eaa8c6547b4d70fefc60c5966f42a
Author: Jim Meyering <meyering@redhat.com>
Date:   Wed Aug 12 21:16:30 2009 +0200

    sfdisk: guard against buffer overflow
    
    * daemon/sfdisk.c (sfdisk): Don't let outrageous "extra_flag"
    or "device" strings overflow a fixed-size buffer.

commit 57926e2fc9a27a1463a7b8c22f337ca768787828
Author: Jim Meyering <meyering@redhat.com>
Date:   Wed Aug 12 09:49:24 2009 +0200

    do_umount: don't use RESOLVE_DEVICE anymore
    
    * daemon/mount.c (do_umount): Don't use RESOLVE_DEVICE here,
    now that the caller always invokes REQUIRE_ROOT_OR_RESOLVE_DEVICE.

commit 49d27765a8b4d6eab8d5acc03444d93008c294ae
Author: Jim Meyering <meyering@redhat.com>
Date:   Wed Aug 12 10:57:03 2009 +0200

    generator.ml: factor out "pr_args n" function

commit c8998a232da4686ebee43a92562a97eb4a701508
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 11 18:07:17 2009 +0200

    generator.ml: finish adding Dev_or_Path support
    
    * src/generator.ml: Update all rules to handle Dev_or_Path.
    (the above changes to generator.ml are mostly mechanical)
    Emit a use of REQUIRE_ROOT_OR_RESOLVE_DEVICE.
    * daemon/upload.c (do_download): Remove use of
    REQUIRE_ROOT_OR_RESOLVE_DEVICE, now that it's automatically done
    in calling code.
    * daemon/file.c (do_file): Likewise.

commit 31f2f3eab791580bc4a14c75b90e2c6e4e6a119e
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 11 17:38:05 2009 +0200

    generator.ml: add type: Dev_or_Path
    
    * src/generator.ml (file, download): Use it.

commit 93d8f38722fd405f66f54c3530e1a0b39d72b700
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 11 17:17:08 2009 +0200

    generator.ml: constify do_mkdtemp
    
    * daemon/dir.c (do_mkdtemp): Rewrite for a "const" parameter.
    * src/generator.ml (mkdtemp): Declare parameter to be of type Pathname.

commit 93ce219a06aa65c02d41037d0893b0ff7733454d
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 11 16:17:41 2009 +0200

    generator.ml: move String/Device decls "down" to definition

commit cce7b53f876ae4d857bf2fa7c0d9f80f397a37e9
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 11 15:59:56 2009 +0200

    generator.ml: use new "Pathname" designation
    
    Nearly every file-related function in daemons/*.c is affected:
    Remove this pair of statements from each affected do_* function:
    -  NEED_ROOT (return -1);
    -  ABS_PATH (dir, return -1);
    and change the type of the corresponding parameter to "const char *".
    * src/generator.ml: Emit NEED_ROOT just once, even when there are two or
    more Pathname args.

commit d469a803d7cb5c961513877608d7247aa2f49507
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 11 12:16:51 2009 +0200

    generator.ml: new type, "Pathname"
    
    * src/generator.ml: Emit NEED_ROOT and ABS_PATH into generated
    stubs.c, rather than requiring they be added manually at the start
    of each and every do_* function that operates on a "path" parameter.
    Update grammar: Pathname is just a String, with the above exception.
    Do not update augeas "path" parameters, since they are not file names,
    but rather ":"-separated search paths.  Except aug_init, for which
    "path" *is* a file name.

commit d13257817f91237bbe61efc6ed3c29e54b9fd089
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 11 11:56:33 2009 +0200

    generator.ml: emit "const char *" for Device and String params
    
    * src/generator.ml: Emit "const char *", not "char *" for Device and
    String params, now that the non-const code is hoisted into the calling
    code in stubs.c.

commit faa75749bfbf3541c7e630677aff9706b9e2711f
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 23:15:25 2009 +0200

    fix daemon.h's use of NEED_ROOT-in-#define

commit 3d8bf02b14b6183aa2ef8b05526eb58ca046feed
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 23:11:01 2009 +0200

    update all NEED_ROOT uses
    
    run this command:
      git grep -l -w NEED_ROOT|xargs perl -pi -e \
        's/(NEED_ROOT) \((.*?)\)/$1 (return $2)/'

commit b1b4b91796b1ef62cf8655339e032540eda9beb4
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 23:07:21 2009 +0200

    * src/generator.ml: Change all `String "device"' to `Device "device"'.
    
    Then update each affected function, removing each uses of RESOLVE_DEVICE,
    now that it's generated in caller from stub.c.
    * daemon/blockdev.c (call_blockdev): Remove use of RESOLVE_DEVICE.
    * daemon/devsparts.c (do_mkfs): Likewise.
    * daemon/ext2.c (do_e2fsck_f, do_get_e2label, do_get_e2uuid): Likewise.
    (do_resize2fs, do_set_e2label, do_set_e2uuid, do_tune2fs_l): Likewise.
    * daemon/fsck.c (do_fsck): Likewise.
    * daemon/grub.c (do_grub_install): Likewise.
    * daemon/lvm.c (do_lvremove, do_pvcreate, do_pvremove): Likewise.
    (do_pvresize): Likewise.
    * daemon/mount.c (do_mount_vfs): Likewise.
    * daemon/ntfs.c (do_ntfs_3g_probe): Likewise.
    * daemon/scrub.c (do_scrub_device): Likewise.
    * daemon/sfdisk.c (sfdisk, sfdisk_flag): Likewise.
    * daemon/swap.c (do_mkswap, do_mkswap_L, do_mkswap_U): Likewise.
    (do_swapoff_device, do_swapon_device): Likewise.
    * daemon/zero.c (do_zero): Likewise.
    * daemon/zerofree.c (do_zerofree): Likewise.

commit e0a3379ab902a807c431c9f0d6224bbeaa6b8913
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 22:50:00 2009 +0200

    update generator to emit each RESOLVE_DEVICE call
    
    * src/generator.ml: Emit RESOLVE_DEVICE (device, goto done);
    just before each Device-enabled do_$FUNCTION.

commit 5ccc4e534d234b40b4995609b67efe4c8018cdd8
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 19:10:14 2009 +0200

    s/NEED_ROOT_OR_IS_DEVICE/REQUIRE_ROOT_OR_RESOLVE_DEVICE/

commit caade25005b8e1b9c49a4e6174d38bbf0ef87b75
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 19:08:11 2009 +0200

    guestfsd.c: correct s/IS_DEVICE/RESOLVE_DEVICE/ in another comment

commit 2045bc118f1bb46b7e676ebf5ea9fd7590a8a5ad
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 23:13:31 2009 +0200

    manually adjust ABS_PATH uses for new semantics
    
    * daemon/file.c (do_cat): fix an ABS_PATH use

commit 48e55edc05f79503bb5ccf51c3453bbd5195d2b0
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 19:03:36 2009 +0200

    update all uses of ABS_PATH
    
    run this command:
      git grep -l -w ABS_PATH|xargs perl -pi -e \
        's/(?:ABS_PATH)( \(.*?,) (.*?)\)/ABS_PATH$1 return $2)/'

commit 8f805a97bb4e2ad84e7e9340086af1d8d749fcd3
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 19:02:12 2009 +0200

    propagate semantic changes to NEED_ROOT, NEED_ROOT_OR_IS_DEVICE
    
    changing IS_DEVICE semantics leads to changing semantics of
    NEED_ROOT_OR_IS_DEVICE and NEED_ROOT, too.
    * daemon/daemon.h: Update definitions.

commit 686335c6c217e5c75b9ebec0551725bc64b2dabf
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 18:54:51 2009 +0200

    convert the last few, manually

commit a69a1a9f8fd67cb01b43fda17ea28b3acac53e9f
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 18:51:32 2009 +0200

    change almost all uses: s/IS_DEVICE/RESOLVE_DEVICE/
    
    Use this command:
      git grep -l -w IS_DEVICE|xargs perl -pi -e \
        's/\b(?:IS_DEVICE)\b( \(.*?,) (.*?)\)/RESOLVE_DEVICE$1 return $2)/'

commit c4034840e1f02b1b42f4dfd32530807e0b318543
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 18:49:55 2009 +0200

    * daemon/daemon.h (RESOLVE_DEVICE): Rename from IS_DEVICE.
    
    Change parameter from "errcode" (which would be returned) to "fail_stmt"
    so that a caller can specify e.g., "goto done" upon failure.

commit 00c6f2fc97c765abd2da8b16e996bd233c97ab93
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 18:17:05 2009 +0200

    generator.ml: define new String-like type: "Device"

commit 23f1c1c06287cc7bd482c6e3c8282488d31df420
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Aug 13 11:48:27 2009 +0100

    Don't assume grub is on a separate boot filesystem
    
    Paths in grub.conf are relative to the filesystem containing it. grub parsing
    currently assumes that it is on /boot, and will fail if it isn't, for example
    because a guest only has a single partition.
    
    This patch makes grub parsing work harder to work out what grub paths are
    relative to. Firstly, it looks for a previous detected 'linux-grub' filesystem.
    If this isn't found, it tries to work out which filesystem contains
    /boot/grub/menu.lst and uses that.

commit ab25502ef5322c877397f6f9941a8654eafab681
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Aug 12 22:12:20 2009 +0100

    add_drive: Don't use cache=off if not supported by underlying filesystem.
    
    If you use the guestfs_add_drive function, then currently it
    generates a qemu command line element like:
    
      -drive ...,cache=off,...
    
    This causes qemu to try to open the device with O_DIRECT.
    Unfortunately some filesystems don't support this flag, notably tmpfs,
    which means you can't use libguestfs in conjunction with tmpfs.  On
    some systems /tmp is a tmpfs filesystem.
    
    This patch fixes this so that if the filesystem doesn't support
    O_DIRECT, then we omit the cache=off parameter.  This seems reasonable
    from a reliability point of view, because if you're using tmpfs then
    you probably didn't expect reliability in the case where your system
    suddenly powers off.

commit fe3c99bdeef43ec3ef6dec86807419f8d595b33b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 12 16:56:09 2009 +0100

    Add 'setcon', 'getcon' commands to set and get the SELinux context.

commit 31b65e3b5596c8836cab7885bff3a3f4b7801e36
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 12 18:23:17 2009 +0100

    Return error if allocations fail.

commit 4d16c1eb12250e7d4ffcdedbafe2dd9501a843d7
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 12 17:40:22 2009 +0100

    Add documentation for SELinux configuration.
    
    Also use L</...> to link between sections.

commit f2b5ef670ceaa10ab91fc3972819e65e2c2d290b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 12 17:40:07 2009 +0100

    Spelling fix: labelled -> labeled.

commit 012c23e4bd7b508ed58b0258c4eea16480a5842d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 12 16:31:06 2009 +0100

    If using SELinux, mount /selinux in the appliance.
    
    If selinux=1 on the Linux kernel command line, then we mount
    /selinux in the appliance.  We will also bind-mount this
    directory into guests when we run commands.

commit 2bae7e4d960f9a798be9d329a52163b4dc47321c
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 12 16:10:35 2009 +0100

    Allow selinux=? kernel flag to be controlled.
    
    Adds new API calls to set and get this flags.

commit 35c27d64cf20f0e2cdcd10f532d65ca3012eec7f
Author: Jim Meyering <meyering@redhat.com>
Date:   Wed Aug 12 14:44:14 2009 +0200

    fish: don't read freed memory
    
    * fish/rc.c (rc_remote): Close file handle only *after* xdr_destroy,
    because that latter may flush its file handle (implicated via
    xdrstdio_create).  FYI, this failure is triggered for me only when
    MALLOC_PERTURB_ is set to nonzero < 256 in my environment.

commit 67fc7312bc3a60a2cd3a2a66b3630f19dddbec31
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 11 09:53:16 2009 +0200

    doc: improve emacs snippets
    
    * HACKING: Make (setq indent-tabs-mode nil) apply to nearly all
    files, not just C-mode ones.

commit 3084a650d7666889981b2fc7f1c71c67e7c08856
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Aug 12 10:38:54 2009 +0100

    Fix regression test rhbz503169c10.sh.
    
    'll' command has changed semantics very slightly
    (see commit 6727e7c8bdf1cb39264a9de6333d228b51c39956).
    We need to fix this test so it doesn't try to run
    the ll command without a mounted disk.

commit a3ba651c713af87b1fa3d6308901708abc423a1f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Aug 11 19:35:04 2009 +0100

    Add contents of /proc/mounts to the debugging information.

commit a471a15e042fd9d3af43161a482aadd560ea77d0
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 11 13:16:27 2009 +0200

    daemon/ls: make do_ll require root, like all the rest
    
    * ls.c (do_ll): Do invoke "NEED_ROOT" here, and add a FIXME to
    provide a "debug ll" command with the semantics we're removing.

commit 565fe8ee12571371f0376544b515339ad1172a0e
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 15:00:48 2009 +0200

    build: avoid first-time configure-from-clone failure
    
    * bootstrap: Run autopoint before using the file it creates,
    po/Makevars.template.  Reported by Richard Jones.  Details here:
    https://www.redhat.com/archives/libguestfs/2009-August/msg00135.html

commit 69540569a1e6b3ff78dae238159c3d2396bdfc7c
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 12:44:09 2009 +0200

    build: enable automake's silent rules option
    
    * configure.ac: Use AM_SILENT_RULES([yes]).
    Those who want verbose build output may configure with
    --disable-silent-rules or use "make V=1".
    * daemon/configure.ac: Likewise.

commit 5e15f5f6c0cdb30f51804ea1d34b50f45cebfe93
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 10 12:17:00 2009 +0200

    build: daemon/do_debug: parameters aren't always unused
    
    * daemon/debug.c (MAYBE_UNUSED): Define.
    (do_debug): Mark parameters as unused only when they really
    are unused.  Spotted by Richard Jones.
    
    SCALAR(0xdd8370)
    prefer sizeof *VAR sizeof TYPE (no semantic change)

commit 5b18e8fb48e1400ad2efcc34dd771af3fbb3f606
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 6 16:05:44 2009 +0200

    build: avoid warnings in daemon/inotify.c
    
    Avoid "comparison between signed and unsigned integer expressions"
    warnings.  If it's at all hard or risky to avoid this type of warning,
    then it's not worthwhile.  Here, it's easy and safe.
    * daemon/inotify.c (inotify_posn): Declare local to be of unsigned type.
    (do_inotify_read, do_inotify_files): Likewise.

commit d748fc69ad292439396d3a17cd884a521a50167c
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 6 15:28:48 2009 +0200

    build: avoid warnings in daemon/guestfsd.c
    
    * daemon/guestfsd.c (print_arginfo, print_shell_quote): Mark each
    "info" parameter as unused.

commit ee9fb40039610f7ee8841443c358cb0d25e01178
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 6 15:26:13 2009 +0200

    build: avoid warnings in daemon/debug.c
    
    * daemon/debug.c (do_debug): Mark parameters as unused.

commit e32fef81b30e0e09ee41e7cf4b717267b1c70ad2
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 6 15:25:03 2009 +0200

    define ATTRIBUTE_UNUSED
    
    * daemon/daemon.h (__attribute__, ATTRIBUTE_UNUSED): Define.

commit b2928e1329824ade2e8b0744b1bf7a469adfdecb
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Aug 7 20:07:03 2009 +0200

    daemon/file.c: remove duplicate absolute-path check
    
    * daemon/file.c (do_file): Remove redundant use of ABS_PATH.
    It's redundant because the preceding line invokes NEED_ROOT_OR_IS_DEVICE,
    which also invokes ABS_PATH.

commit 294994f2c9c4a1c62c6134f60d57ad2400df7dfb
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Aug 7 17:38:44 2009 +0100

    Tidy up generation of java/Makefile.inc.
    
    (Just whitespace and comment changes, and small restructuring
    of the code).

commit bbf31542d76bee124b6dfb690ef2c635d44e5c44
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Aug 7 09:51:04 2009 +0100

    Debug: Improve the way the qemu command line is printed.
    
    Change the way the qemu command is displayed to look like
    this:
    
    /usr/bin/qemu-kvm \
        -drive file=/tmp/test.img,cache=off,if=virtio \
        -m 500 \
        -no-reboot \
        -kernel /tmp/libguestfsHBJHRh/kernel \
        -initrd /tmp/libguestfsHBJHRh/initrd \
        [...]
    
    This allows the command line to be copied and pasted directly
    into the shell, and also makes it simpler to read.

commit 3c9655205d097a61d1de86d655358dc9f7d7610e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Aug 7 09:31:35 2009 +0100

    Allow network interface to be configured.
    
    Add ./configure --with-net-if=(virtio|ne2k_pci) option.
    
    This lets you workaround the following virtio_net bug:
    
    https://bugzilla.redhat.com/show_bug.cgi?id=516022

commit 91a950672facec03e2a2fa17902db20b000007cf
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Aug 7 08:32:56 2009 +0100

    Tests: swapon_device test mkswap /dev/sda1 instead of /dev/sdb.
    
    On RHEL 5, mkswap /dev/sdb fails, even with the '-f' option
    (contradictory to what the manual page says).
    
    This commit adds a new 'InitPartition' initialization which
    just creates /dev/sda1, and then does the swap test on that.

commit 0444c8ac3ae3d3e248e0ef4f271c77677c94245e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 6 18:46:57 2009 +0100

    Always pass mkswap -f parameter.
    
    Otherwise mkswap will give a silly error if you ask it to
    swap on a whole device.

commit 731d6642df3b4ccfa268cbb0aa6b992161e16bb6
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 6 18:40:59 2009 +0100

    Tests: Don't test block size in statvfs test.
    
    The block size changes between kernel releases, causing
    a false failure in the tests.  The error was:
    
    test_statvfs_0: bsize was 65536, expected 131072

commit dd633941ba995dc6cd79c3e6d6f57eb38df19286
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 6 17:02:25 2009 +0100

    Version 1.0.66

commit 08bd907cf8cda299c8783e45d00e9f49d06e17cd
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 6 15:44:20 2009 +0100

    RHEL 5: inotify_init1 call did not exist on RHEL 5.

commit 65adeaef8d18670e20589873e7dddedd848cfd0e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 6 14:35:46 2009 +0100

    Fix: segfault in tab completion (RHBZ#516024).
    
    Actually this fixes two bugs: 'strs' was not being freed on every
    path, and the tab completion segfault described in the bug report.

commit 84092e8a2d819e7342132747bd4cc5301b227175
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Aug 6 14:14:18 2009 +0100

    Fix errno check in readdir in devsparts.c

commit 873a781e604bf791cf03107ab119cd80fc9a1159
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 6 13:38:17 2009 +0100

    Add ne2k-pci driver to the appliance.
    
    This allows people to use the ne2k-pci network driver, for those
    situations where the virtio_net driver is broken (cough 516022 cough).

commit 64dc1b586ddc18d443e92c091d8690a4bd4cd8d3
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 6 12:52:49 2009 +0100

    Make user network numbering explicit.
    
    Use:
     -net user,vlan=0,net=10.0.2.0/8
    just to make the (already implicit) 10.0.2.x network explicit.

commit 95689e1fec77a3a5104ca293ca68fada3ffb8ac1
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 6 12:10:52 2009 +0100

    appliance: More debug added to /init.

commit 8fe55616e103fc91677a9f541ec3321fc3369874
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Aug 6 13:07:51 2009 +0100

    Exclude daemon/lib and daemon/tests from being added to po/POTFILES.in

commit aaebe3a28637aa23b0dbbbaa1c5c9598ea7be61c
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 6 07:50:11 2009 -0400

    build: remove bootstrap's --gnulib-srcdir option
    
    ...because it probably didn't work, and even if it did, we've
    discovered that using a separate git repo like that can lead
    to subtle mix-ups.
    Also, fix invocation of gnulib-tool in daemon/.

commit 35e50ba9f5cf445a15388aaa4e8b0cfe271f635f
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Aug 6 13:47:48 2009 +0200

    build: fix build failure
    
    * bootstrap (gnulib_tool): Create lib and tests directories
    under daemon/ before running gnulib-tool there.

commit 9c320689f0d287d83b376f497886ce0142c4c892
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 11:44:51 2009 +0100

    daemon: use gnulib
    
    * daemon/Makefile.am (SUBDIRS): Define.
    (AM_CPPFLAGS): Define, to include from gnulib's lib/
    (LDADD): Define, to link with gnulib's libgnu.a.
    * daemon/configure.ac: Use AC_CONFIG_AUX_DIR([build-aux]),
    gl_EARLY and gl_INIT.
    (AC_CONFIG_FILES): Add lib/Makefile and tests/Makefile
    * daemon/m4/gnulib-cache.m4: New file, generated by running
    ../.gnulib/gnulib-tool --import --with-tests hash
    * daemon/.gitignore: Ignore all of the imported files.
    build: tell bootstrap about daemon/
    * bootstrap: Run gnulib-tool --update in daemon/.
    Remove bootstrap's --gnulib-srcdir option, because it probably
    didn't work, and even if it did, we've discovered that using
    a separate git repo like that can lead to subtle mix-ups.

commit b398696e0102c33180797f5f7804284fae6e2b77
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 6 11:01:20 2009 +0100

    appliance: Include more debug output in the /init script.
    
    Output more debugging information from this script, to enhance the
    usefulness of LIBGUESTFS_DEBUG output.

commit fa12c47086c14467110733a940ea34347508c93a
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Aug 3 16:04:50 2009 +0100

    Recognise cd-rom devices in devsparts.c
    
    Also:
    * Un-duplicate device detection code by creating a common mapping function.
    * Add some more comments.

commit 31e0b549ddbd0323b5871cd9856a9003937e5bf6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Aug 5 23:33:22 2009 +0100

    Fix test failures in upload and download (RHBZ#515764)
    
    The tests hardcoded an MD5 of the test file, COPYING.LIB, whose contents had
    change. This change causes it to compute the MD5 rather than hardcoding it.
    
    OCaml provided by rjones.

commit d114705eb9df722ad430ced67bff010d07ae0fc9
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Aug 6 08:56:39 2009 +0100

    Add copyright and license notice to regressions/test-noexec-stack.pl

commit c137cc2141912a6f6fc5c53e32347df35f257be0
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Aug 5 17:32:02 2009 +0100

    Add some newly-untracked files to .gitignore

commit c6fb79ab01af4d653bc3b3cda559154240db0542
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Aug 3 20:29:24 2009 +0100

    Fix swapon_label test
    
    The swapon label test has a side-effect, in that it creates a new partition.
    This causes the later failure of the list_partitions test.
    
    This change causes the swapon_label test to zero /dev/sdb after the test, and
    then re-read the partition table.

commit eed0a221fe7594e8be2d54fcea73a938701a68db
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Aug 5 16:00:12 2009 +0100

    Add resultant change to po/POTFILES.in
    
    I missed this when committing 7e9cb884492aec243337ffc8e4432a9ff2690956

commit f2a72d04abbe279d7ed0f36dbc8dfe6f7e1ab898
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Aug 5 14:55:54 2009 +0100

    Add a test for an executable stack in resultant binaries

commit 453be60ed5b0ddbff6cb2b3777a254a1b33bbd1b
Author: Jim Meyering <meyering@redhat.com>
Date:   Wed Aug 5 08:01:38 2009 -0400

    build: generate some just-removed files in po/
    
    * bootstrap: Generate po/Makevars and po/LINGUAS.

commit 7dd203045281c46f085bb15b1f3907f35369e752
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 4 14:21:32 2009 +0200

    build: remove trailing blank lines; enable the syntax-check rule
    
    * cfg.mk (disable_temporarily): Remove sc_prohibit_trailing_blank_lines.
    * appliance/Makefile.am: Remove trailing blank line(s).
    * appliance/debian/modules/y0_install-guestfsd: Likewise.
    * appliance/make.sh.in: Likewise.
    * appliance/packagelist.in: Likewise.
    * appliance/update.sh.in: Likewise.
    * haskell/run-bindtests: Likewise.
    * ocaml/run-bindtests: Likewise.
    * python/run-python-tests: Likewise.
    * recipes/squashfs.example: Likewise.
    * ruby/run-ruby-tests: Likewise.

commit d710553478930300e42006e03b2b47fe1c0683f1
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 4 14:19:29 2009 +0200

    build: exempt symlinks from trailing-blank-line prohibition
    
    * cfg.mk (sc_prohibit_trailing_blank_lines): Exempt symlinks.

commit 3d37fb87da4926fd47d7080d04eb4c26ff80195e
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 4 14:03:17 2009 +0200

    build: enable syntax-check: TAB-only indentation in Makefiles
    
    * cfg.mk (disable_temporarily): Remove sc_makefile_TAB_only_indentation.

commit 55338bb35acceb046b8b7120c255be3add36e12a
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 4 14:01:38 2009 +0200

    build: tweak HACKING so we pass "make syntax-check"
    
    * HACKING: Convert leading TABs.

commit 72d55c5dd94523bf3b63bab7d9213421a98025c4
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 4 14:00:11 2009 +0200

    build: remove trailing blanks, enable syntax-check
    
    * regressions/test-cancellation-download-librarycancels.sh:
    * src/generator.ml:
    * cfg.mk (disable_temporarily): Remove sc_trailing_blank.
    * .x-sc_trailing_blank: New file.

commit 65d67bc65e04c5180fb1ea5c70b2845066dd4876
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 4 14:46:38 2009 +0200

    maint: use COPYING.LIB version 2.1
    
    * COPYING.LIB: Update to 2.1.
    * .x-sc_TAB_in_indentation: Also exempt COPYING.LIB.

commit 7861d9a9012c28c23e3d7e1115dcbb6c10d828aa
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 4 13:55:51 2009 +0200

    build: don't emit trailing blanks, remove generated file
    
    * ocaml/Makefile.am (.depend): Don't redirect directly to $@.
    Filter out trailing blanks.
    * ocaml/.depend: Regenerate.

commit db252b0c7acaadab603860b25601eb7282d0221a
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 4 13:49:19 2009 +0200

    build: remove more files added by ./autogen.sh
    
    * po/LINGUAS: Remove file.
    * po/Makefile.in.in: Likewise.
    * po/Makevars: Likewise.
    * po/Rules-quot: Likewise.
    * po/boldquot.sed: Likewise.
    * po/en@boldquot.header: Likewise.
    * po/en@quot.header: Likewise.
    * po/insert-header.sin: Likewise.
    * po/quot.sed: Likewise.
    * po/remove-potcdate.sin: Likewise.

commit b439f38bbeb2f37e9ff8c37bbcaf475f1073ca66
Author: Jim Meyering <meyering@redhat.com>
Date:   Tue Aug 4 04:47:17 2009 -0400

    build: tell aclocal to search gnulib/m4, too
    
    * Makefile.am (ACLOCAL_AMFLAGS): Append "-I gnulib/m4".

commit 98eba2fc37c133f590a77b574fb0a294ab1df1b4
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 10:55:34 2009 -0400

    Document and enforce the new spaces-only indentation policy.
    
    * cfg.mk (disable_temporarily): Remove sc_TAB_in_indentation,
    to enable the "make syntax-check" that enforces this.
    * .x-sc_TAB_in_indentation: New file.  Exceptions.
    * HACKING: Document the policy, with tips on how to conform.

commit 12a531cc37ebe952cc90d1322f14de5f04393f14
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 11:10:13 2009 -0400

    Convert all TABs-as-indentation to spaces.
    
    Do it by running this command:
    [exempted files are matched via .x-sc_TAB_in_indentation]
    
      git ls-files \
        | pcregrep -vf .x-sc_TAB_in_indentation \
        | xargs pcregrep -l '^ *\t' \
        | xargs perl -MText::Tabs -ni -le \
          '$m=/^( *\t[ \t]*)(.*)/; print $m ? expand($1) . $2 : $_'

commit 41d4d5c9dc7bb43abed8434d2b40489f60c3fe15
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 11:00:22 2009 -0400

    Remove files imported via autogen.sh.
    
    * m4/.gitignore: Ignore these files.
    * m4/codeset.m4: Remove file.
    * m4/gettext.m4: Likewise.
    * m4/glibc2.m4: Likewise.
    * m4/glibc21.m4: Likewise.
    * m4/iconv.m4: Likewise.
    * m4/intdiv0.m4: Likewise.
    * m4/intl.m4: Likewise.
    * m4/intldir.m4: Likewise.
    * m4/intlmacosx.m4: Likewise.
    * m4/intltool.m4: Likewise.
    * m4/inttypes-pri.m4: Likewise.
    * m4/inttypes.m4: Likewise.
    * m4/inttypes_h.m4: Likewise.
    * m4/isc-posix.m4: Likewise.
    * m4/lcmessage.m4: Likewise.
    * m4/lib-ld.m4: Likewise.
    * m4/lib-link.m4: Likewise.
    * m4/lib-prefix.m4: Likewise.
    * m4/lock.m4: Likewise.
    * m4/longdouble.m4: Likewise.
    * m4/longlong.m4: Likewise.
    * m4/nls.m4: Likewise.
    * m4/po.m4: Likewise.
    * m4/printf-posix.m4: Likewise.
    * m4/progtest.m4: Likewise.
    * m4/signed.m4: Likewise.
    * m4/size_max.m4: Likewise.
    * m4/stdint_h.m4: Likewise.
    * m4/uintmax_t.m4: Likewise.
    * m4/ulonglong.m4: Likewise.
    * m4/visibility.m4: Likewise.
    * m4/wchar_t.m4: Likewise.
    * m4/wint_t.m4: Likewise.
    * m4/xsize.m4: Likewise.

commit 60625a3b0fa365b951a6130261ef63611b7f667c
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 11:09:13 2009 -0400

    allow use of #if HAVE_CONFIG_H, for example code
    
    * .x-sc_prohibit_have_config_h: New file, to exempt examples.

commit 8357b74a71a3a5f418fa910671b65c563345ad82
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 15:39:09 2009 +0200

    guestfs: fix typo in my recent change
    
    * src/guestfs.c (guestfs_perrorf): Rename former err to errnum,
    to avoid compilation error.

commit e0fac4f05c6ac0d18bbc8438b4d5dea8963d19fc
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 15:21:44 2009 +0200

    Guard #inclusion of config.h in examples.
    
    * examples/hello.c [HAVE_CONFIG_H]: Include <config.h> conditionally.
    * examples/to-xml.c: Likewise.

commit 31625ac8150f455479acd989997a85a8ffa07cf4
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 08:32:44 2009 -0400

    build: reenable "syntax-check" rule: sc_const_long_option
    
    * cfg.mk (disable_temporarily): Remove sc_const_long_option.
    * daemon/guestfsd.c (main): Declare long_options to be "const".
    * fish/fish.c (main): Likewise.
    * test-tool/test-tool.c (main): Likewise.

commit fa8b1e5ed134e53f99a9eb0d7b44760f3e8e48d4
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 05:53:26 2009 -0400

    build: temporarily disable failing "syntax-check" rules
    
    * cfg.mk (disable_temporarily): Define.

commit 2206238e83c2d7a0537f7dd91cf9f46342d712e6
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 05:18:10 2009 -0400

    maint: use a git submodule for gnulib
    
    * .gitmodules: New file, to track gnulib.
    * .gnulib: Submodule directory.
    * Makefile.am (EXTRA_DIST): Don't list config.rpath or
    gitlog-to-changelog.
    * autogen.sh: Adapt to use the new submodule.
    * cfg.mk: New file.
    (SUBDIRS): Add gnulib/lib and gnulib/tests.
    (dist-hook): Reflect new location of getlog-to-changelog.
    * configure.ac: Set build-aux/ as AUX_DIR.
    Invoke gl_EARLY and gl_INIT.
    (AC_CONFIG_FILES): Add gnulib/lib/Makefile and gnulib/tests/Makefile.

commit ba594badd918fcd4c57960049ec6784844a04e73
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 05:33:35 2009 -0400

    always include <config.h>
    
    * ocaml/guestfs_c.c: Include <config.h>.
    * examples/to-xml.c: Likewise.
    * examples/hello.c: Likewise.

commit 798574359470b43eab7ac7766a17700cf5b8660b
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 06:58:16 2009 -0400

    build: add -I option to get config.h.
    
    * ocaml/Makefile.am (AM_CPPFLAGS): Define.
    (guestfs_c.o, guestfs_c_actions.o): Use it.

commit e3aec7df3021120745d9502d7772e1312f6dfb8f
Author: Jim Meyering <meyering@redhat.com>
Date:   Mon Aug 3 08:43:54 2009 -0400

    guestfs: don't fault upon failed vasprintf
    
    * src/guestfs.c (guestfs_perrorf): Handle failed vasprintf.

commit 83b29e9834bf1c39e6a9df900b1398da7898f67f
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Aug 3 11:43:38 2009 +0100

    Cleanup whitespace warnings in Lib.pm

commit 11399e99056f5f9a41f007ba78445d7e89007175
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jul 31 17:31:54 2009 +0100

    Use grub entries to find Linux kernels
    
    This change adds grub parsing to Lib.pm. It adds the following structure to $os:
      {boot}
      ->{configs}
        ->[0]
          ->{title}   = "Fedora (2.6.29.6-213.fc11.i686.PAE)"
          ->{kernel}  = \kernel
          ->{cmdline} = "ro root=/dev/mapper/vg_mbooth-lv_root rhgb"
          ->{initrd}  = \initrd
      ->{default} = 0
    
    The kernel and initrd entries are just references to their top level entries
    under kernels and initrd_modules respectively.
    
    It also changes the way Linux kernels and initrd are discovered. Instead of
    searching /lib/modules and /boot for files with matching names, kernels and
    initrds are scanned as they are discovered in grub.conf.
    
    Additionally, the following attributes are added to the kernels top level entry:
    * path
        The path to the kernel's vmlinuz file.
    * package
        The name of the package which installed the kernel.
    
    The xml output of virt-inspector is updated to reflect all of the above changes.

commit d624eefafc1416ccec95ebb5ab36294955a35507
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 31 23:24:11 2009 +0100

    guestfish: Display RStructList results more pleasantly.

commit 1f16b9bcdf37b34aca1f9f57cd4e861df38b4ddf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 31 22:31:05 2009 +0100

    Add interface to Linux 'inotify' API.

commit 878e10f0486c4563a3115571f31585b6603de928
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 31 15:57:46 2009 +0100

    lib: Add selinux=0 to default kernel command line.
    
    SELinux exists in a very disturbed state if it is enabled at
    boot time, but no policy is loaded.  In particular, it messes
    up the security.selinux extended attributes on files in a
    not-very-useful way.
    
    We can't enable SELinux because we don't know what policy
    can or should be loaded.  Therefore it's best to disable it
    completely.

commit aedcbd6b041358cffd496e5b152a997977c8f721
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jul 31 14:30:09 2009 +0100

    Update incorrect comment in Lib.pm
    
    Related: change the name of the function the comment describes to be more
    accurate.

commit 6a6c01b62a3f75be76265669861ccb31965d887d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 31 12:12:29 2009 +0100

    Improve warnings about missing tests.
    
    Don't warn where a command just has no tests.
    
    Instead check other commands' tests so we get a definitive
    (and much smaller) list of commands that are not tested anywhere.

commit 01e8b0b2d108c540e2a2215959d8ffb19910bf59
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 31 11:55:38 2009 +0100

    New commands: swapon-*, swapoff-*, mkswap-file.
    
    swapon-device
    swapoff-device
    swapon-file
    swapoff-file
    swapon-label
    swapoff-label
    swapon-uuid
    swapoff-uuid
    mkswap-file

commit a78178d0c85e90b24235b729c8784bb081c5a1d2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 31 08:57:10 2009 +0100

    New command: 'fallocate' to (pre-)allocate sized files.

commit 09404a18d54571b66ed633e113cdfea60efceab9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 31 08:39:43 2009 +0100

    New commands: 'ln', 'ln-f', 'ln-s', 'ln-sf' and 'readlink'.
    
    These commands can be used to make hard and symbolic links.  The
    readlink command is used to read existing symbolic links.

commit 26db7133500e4823d36af82204700ee1a27eea54
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 31 07:39:30 2009 +0100

    Add 'realpath' command.

commit 3d71ce9b3551b50b280e1a317e097189e7600a88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 31 07:40:57 2009 +0100

    Ignore failure of 'mv' commands in appliance Makefile.
    
    A lot of people report these as 'errors' when they are not.
    Hide the error messages.

commit e3709c26adaa4d6f6d8326df1a9e1145ea1afdae
Author: Jim Meyering <jim@meyering.net>
Date:   Thu Jul 30 14:03:48 2009 +0200

    configure.ac: more quoting
    
    Also, prohibit an invalid value of $JAVA_HOME,
    since it must be used unquoted below.

commit 0da21470033876fab8377fa0efb08bc1bdc9e383
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 30 12:10:52 2009 +0100

    build: If guestfwd test fails, need to print AC_MSG_RESULT 'no'

commit d4de1d56149511d87da37a5b92d329b1292f12fd
Author: Jim Meyering <jim@meyering.net>
Date:   Thu Jul 30 10:50:49 2009 +0200

    build: fix test for --nocompress option
    
    Richard W.M. Jones wrote:
    > On Wed, Jul 29, 2009 at 10:50:44PM +0200, Jim Meyering wrote:
    >> The test for febootstrap-to-initramfs' --nocompress option
    >> was always failing for me on F11.  Here's why:
    > [...]
    >
    > Ouch that's obscure.  I've applied this patch and the previous
    > one you sent too.  Thanks!
    
    Our messages crossed.
    Rebasing my fixed patch and adjusting the log:
    
    >From 9e7846da50ceeee57187f703835bd3975e789719 Mon Sep 17 00:00:00 2001
    From: Jim Meyering <meyering@redhat.com>
    Date: Wed, 29 Jul 2009 16:33:02 -0400
    Subject: [PATCH] build: quote the other option test similarly
    
    * configure.ac: Quote properly.

commit bfc2f824b52bc723660062ba55be93c8409a0546
Author: Jim Meyering <jim@meyering.net>
Date:   Wed Jul 29 22:50:44 2009 +0200

    build: fix test for --nocompress option
    
    The test for febootstrap-to-initramfs' --nocompress option
    was always failing for me on F11.  Here's why:
    
      $ bash                               ~/w/co/libguestfs:210-comment-fix
      $ t=`febootstrap-to-initramfs 2>&1`
      [Exit 1]
      $ if ! echo $t|grep -sq -- --nocompress; then echo not found; fi
      not found
    
    Notice: without quotes, the [--nocompress] term expands to "k",
    because I happen to have a temporary file named "k":
    
      $ echo $t
      Usage: febootstrap-to-initramfs [--files=filelist] k DIR Please read
      febootstrap-to-initramfs(8) man page for more information.
      $ echo "$t"
      Usage: febootstrap-to-initramfs [--files=filelist] [--nocompress] DIR
      Please read febootstrap-to-initramfs(8) man page for more information.
    
    a simpler example gives a clue:
    
      $ touch a b c
      $ echo [--z]
      a b c
      $ echo [--a]
      a
      $ echo [--b]
      a b
    
    it's interpreting [--nocompress] as a range: "-" through "n", plus
    the other characters, ocmpres.  "k" falls in the --n range.
    
    Anyhow, here's the fix:
    
    >From 84855642ed41828d01d55123cfab8d8dede759c1 Mon Sep 17 00:00:00 2001
    From: Jim Meyering <meyering@redhat.com>
    Date: Wed, 29 Jul 2009 16:33:02 -0400
    Subject: [PATCH] build: fix test for --nocompress option
    
    * configure.ac: Fix underquoting bug that would cause the test
    for febootstrap-to-initramfs' --nocompress option always to fail
    with certain-letter-named files in the top directory.

commit f531395aadabd02c354a2391754f8249c35914b6
Author: Jim Meyering <meyering@redhat.com>
Date:   Wed Jul 29 14:48:45 2009 -0400

    fix comments; move declarations
    
    * daemon/devsparts.c (do_list_devices, do_list_partitions):
    Remove stray words in comments.
    Move declarations down to definition.

commit 36b151d8100615022917bfe829906b30422e328a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 23:02:42 2009 +0100

    Whitespace and comment changes.

commit c7bb43e789841406c629bfd8e41ce4e1ed98eab6
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 22:53:23 2009 +0100

    df: Fix alignment of columns.

commit 31b1dc4ca58c5b52a940bef5215b7195a27ce18d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 21:34:06 2009 +0100

    guestfish: Make more strings translatable.
    
    However this doesn't yet attempt to translate the POD
    command documentation.  We need a plan to do that.

commit 8a9a020dab077a097c8c64864046145268cf042b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 18:46:55 2009 +0100

    tests: Use squashfs for static data where possible.
    
    Instead of creating a new InitBasicFS for just about every test,
    where a test doesn't need to write to the filesystem it is far
    faster to use prepared data on an InitSquashFS instead.
    
    This commit changes as many tests as possible to make this so,
    making the tests much faster.

commit c6d820652cd2d2c4798c544c8bf4fa71cc5ba5d3
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 18:44:46 2009 +0100

    tests: Fix read_file test.
    
    The test ignored the fact that this function returns a (char *, size_t)
    pair, and just treated the char * as a string.  This of course would
    fail if the string didn't happen to be nul-terminated.
    
    The tests are updated to add a new TestOutputBuffer type which should
    be used with functions that return RBufferOut.

commit 27167b83028eba75b600e1ad929d5faf61f5f639
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 18:10:48 2009 +0100

    Implement '*grep*' family of commands.

commit 6e98d7a6f761e9dcc7406d7379be0b2b01e73e7f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 16:51:10 2009 +0100

    Updated Polish translations (Piotr Drąg).

commit 34499b70a5562c1bebf3bf27c06a32f95809416a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 16:09:29 2009 +0100

    Version 1.0.65.

commit bbd08b33b7da2d2230e9fee3287465c14201aee9
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 15:59:28 2009 +0100

    Updated PO files.

commit 4674fc998636b30469fba6b7914f7e38d81c6170
Author: Jim Meyering <jim@meyering.net>
Date:   Wed Jul 29 14:16:03 2009 +0200

    build: avoid locale-specific changes in generated, VC'd file
    
    When I build with LC_ALL=C in my environment,
    the all-local rule generates po/POTFILES.in that
    is sorted differently from the on that is checked in:
    
        diff --git a/po/POTFILES.in b/po/POTFILES.in
        index ca01b3d..154915a 100644
        --- a/po/POTFILES.in
        +++ b/po/POTFILES.in
        @@ -63,12 +63,11 @@ fish/tilde.c
         fish/time.c
         inspector/virt-inspector.pl
         java/com_redhat_et_libguestfs_GuestFS.c
        -ocaml/guestfs_c_actions.c
         ocaml/guestfs_c.c
        +ocaml/guestfs_c_actions.c
         perl/bindtests.pl
        -perl/Guestfs.c
        -perl/lib/Sys/Guestfs/Lib.pm
         perl/lib/Sys/Guestfs.pm
        +perl/lib/Sys/Guestfs/Lib.pm
         python/guestfs-py.c
         ruby/ext/guestfs/_guestfs.c
         src/guestfs-actions.c
    
    If we generate that file so that sort always uses the C locale, then,
    this type of difference will not arise.  Here's the patch to fix the
    rule as well as to reflect the change in the generated file:
    
    >From 609e1d1840da25614a7c9e8954e5356050c9f2ad Mon Sep 17 00:00:00 2001
    From: Jim Meyering <meyering@redhat.com>
    Date: Wed, 29 Jul 2009 08:13:35 -0400
    Subject: [PATCH] build: avoid locale-specific changes in generated, VC'd file
    
    * Makefile.am (all-local): Use LC_ALL=C to sort in C locale.
    * po/POTFILES.in: Regenerate.

commit f631721bb522d6fb7794549eca6e2f8a73768713
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 29 16:01:23 2009 +0100

    On RHEL 5, 'file' command prints 'AMD x86-64' for 'x86-64' arch.

commit cac85e6ea9509029c74d713f381dc00d8de12679
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 15:55:17 2009 +0100

    Run cpio with --quiet option so it doesn't print 'xx blocks'

commit ada4fad0cb09537a385e1bc5aa1ca8426a7f62fc
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed Jul 29 15:49:48 2009 +0100

    Lib.pm: Skip tests if perl-libintl module is not available.

commit 8b7ba66d5eab6263d9c5e951139c7047190e1b16
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 15:33:22 2009 +0100

    Lib.pm: Use Perl backtick instead of slurp (Aron Griffis).

commit 86d7b4a71db46a4035df4a03693ad5dac9d27242
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed Jul 29 15:02:16 2009 +0100

    Don't show empty CD devices (RHBZ#514505).

commit 6dc219f7c583b773fc9ef5889c72ca5b135f0af1
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 12:45:11 2009 +0100

    ocaml: Rebuild the tests from source if the main library changes.

commit eb12e0eba3c4932d59897a6b477fc788bea82529
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 09:48:08 2009 +0100

    inspector: Determine guest architecture.
    
    This commit adds kernel and userspace architecture detection
    (fully for Linux, partially for Windows).  It adds an architecture
    for each kernel detected, and an architecture for each root (ie.
    userspace) found.

commit 5ebb86ce5ec1f2fc261076f9d810d2cba839759e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 28 17:55:35 2009 +0100

    Lib.pm: Add file_architecture command.
    
    This command detects the architecture of some types of binaries,
    libraries, kernel modules and initrd images.

commit 702b3bd3d9eb547ab1df5426a8897f47b5eac12b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 10:15:06 2009 +0100

    Lib: Document the $ro parameter for mount_operating_system properly.

commit bde4e94e183188c7dd48b45479f9270e4f72cb8b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 29 09:39:02 2009 +0100

    Mention related tools in the manual page.

commit e7a763f1f40e259e8cc6d8cd8eb466524670bb32
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 28 17:14:14 2009 +0100

    Whitespace: indent some names in images/Makefile.am correctly.

commit d0c89ec5f222d368a66f728c3647e3d8d0cff54b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 28 15:43:14 2009 +0100

    Lib.pm: Use 'file' as replacement for 'zfile'.

commit 0f0fac2205e81672e1ed0454a9d9a42847fd23d2
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 28 15:29:23 2009 +0100

    Pass '-z' parameter to 'file' command so it looks inside compressed files.
    
    Also we deprecate the old 'zfile' command.

commit 68d894cddda10ba1d5e4cb1808e90526230773a2
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 28 15:24:44 2009 +0100

    Add DeprecatedBy flag to mark functions which are deprecated.

commit c49a3543fab33365c85f899a68ff167ea9b36a46
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 28 15:23:28 2009 +0100

    Need to declare asprintf_nowarn as inline to avoid gcc complaining.

commit 4493b3f7c61f169aecde1a26e3e736402a296fed
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 27 22:27:45 2009 +0100

    Replace shell_quote function with %Q and %R printf specifiers.
    
    %Q => simple shell quoted string
    %R => path will be prefixed by /sysroot
    
    eg. snprintf (cmd, sizeof cmd, "cat %R", path); system (cmd);

commit 2cc07d45efd9ea5ed0a7682461b591fad21ba2d1
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 27 16:39:02 2009 +0100

    Add InitSquashFS test type, for tests that just use the squashfs (/dev/sdd).
    
    This also speeds up those tests because we don't have to wait
    to create a filesystem which is never used.

commit c7233bb3ce155c44606a3c17fe2331d43d7e26c6
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jul 24 14:56:38 2009 +0100

    Make read-only optional in mount_operating_system()

commit e96487383b2a6ade1d62cf1ccf22f0d2de98df45
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 24 18:29:42 2009 +0100

    More ideas on a quick Perl one-liner syntax for TODO file.

commit e25930b6cb06c09f5d1eedb8b36f5c3d9b91624a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 24 15:46:15 2009 +0100

    guestfish -iv should print virt-inspector command (for debugging).

commit 3ca9765b2a87b090f0e626e88620eab385cd0233
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 24 14:36:50 2009 +0100

    Reformat the TODO file.

commit a44afca3728ff1cc5b593708064b1d4db6290190
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 24 09:31:49 2009 +0100

    Pass cgroup_disable=memory, saves ~ 5MB of RAM.

commit 1e4ce50407544e275741a1ade774f35976d1afee
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 23 18:57:05 2009 +0100

    get_append call can return NULL, but bindings didn't handle it.
    
    It's not a good idea because there is no way to return an error
    indication.  However at least this means it won't segfault.

commit 58608e1117f853a3891505cd2c31ae69bcd3d2e0
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 23 12:45:12 2009 +0100

    RHEL 5 thinks squashfs is HFS+ filesystem, unless we specify the type explicitly.

commit 61c6b9962b879d1ebdcfa50796693b85232b02aa
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 23 11:16:15 2009 +0100

    Remove hard-coded qemu-kvm, replace with $QEMU.

commit 8b3e1a48ee9df34ccedb23712b7e0592f463520e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 23 10:45:36 2009 +0100

    Version 1.0.63

commit 75ae14b97be03dbe02de67c6ea4ebc95b303ac75
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 22 20:58:39 2009 +0100

    Add libguestfs-test-tool.
    
    This is an end-user testing tool, designed to test basic functionality
    of libguestfs/qemu/kernel combination on the end-user's final host
    machine.
    
    It does not perform a thorough test, but should be enough to find
    most booting issues.
    
    Also this is intended to be used when reporting bugs.

commit 0196280359bde8a2382f5bdc9858e75505f2cebc
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 22 21:18:01 2009 +0100

    Fix typo in error message.

commit 0b13101493ca9b784d446206cb90f080df92ab97
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 22 21:11:10 2009 +0100

    Revert "Add 'set-kernel'/'get-kernel'/LIBGUESTFS_KERNEL to override appliance kernel."
    
    This reverts commit 34d2df41626f1ee4172a6d40b06d72d6ed9d6348.

commit e263f63f26a7bfb35c5f02f204784d2daa4e4fd4
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 22 13:42:51 2009 +0100

    set-append and set-kernel parameters are both nullable.
    
    (So are the return values, but leave that bug for another day).

commit 2a7397529a8ea94d1e968fad0880384d18b8ca81
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 22 13:35:48 2009 +0100

    Add 'set-kernel'/'get-kernel'/LIBGUESTFS_KERNEL to override appliance kernel.
    
    This allows you to override the appliance kernel with an easy
    command or environment variable.

commit 1c0cafba1e6a78d2a2c68f20208d0e4eb55a0d2a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 22 12:39:21 2009 +0100

    Todo: Suggestion for 'replace' command.

commit 737c44b6ed3ede99c33c548429feedbe50172652
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 16:01:04 2009 +0100

    Add commented-out support for alternate guestfwd syntax.
    
    This commit just moves code around.  The new support is not enabled
    because it doesn't work.  See qemu-devel, subject
    "guestfwd option doesn't allow supplementary ,server,nowait"

commit 6176fde0a478568ee1c1b5a80fc8173b6ce0383a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 15:59:35 2009 +0100

    configure: Detect new-style guestfwd support (RHBZ#512957)
    
    However new qemu 0.10.5 still doesn't work.

commit ac2f8a637206fe635e332c8eb3ca5ed1c292fe24
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 13:34:46 2009 +0100

    Library: Pass more options on the Linux kernel command line.
    
    Always pass:
      noapic             (APIC causes problems for lots of people)
      udevtimeout=300    (for very slow qemu using softemu)
      acpi=off           (ACPI is troublesome and unnecessary, so turn it off)

commit 908758642bd4058d1ea31df6def1ff31b98d82bb
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Jul 21 11:46:24 2009 +0100

    Split $os->{version} into $os->{major_version} and $os->{minor_version}

commit 56d1798c83008920f86f10169e127d46054b2298
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 11:47:57 2009 +0100

    Allow TMPDIR to override directory used for temporary files (RHBZ#512905).

commit e5c1da8e99094d2808dbcc74651051bc291cbefb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 11:00:47 2009 +0100

    Generator: Implement RBufferOut and "read-file" call.
    
    This commit implements the RBufferOut type for returning
    arbitrary 8 bit data from calls.
    
    We also implement the guestfs_read_file call to read a
    whole file that can contain any 8 bit content, but up to
    a limit of ~ 2 MB.

commit d533a37519ddd5197f822516f3115e875434a3e8
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 11:10:19 2009 +0100

    Docs: Fully document the guestfs_readdir ftyp return field.

commit 321b30f1af4005a6483b1f71b59ab346f341908e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 21 10:59:51 2009 +0100

    Docs: Add "API Overview" section to guestfs(3) manpage.
    
    This section collects together related API calls, to provide
    more coherent documentation about different ways to carry
    out actions such as uploading and downloading.

commit 4349daf47c1ef700ba7c776e2f5432d67284e7f0
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 20 19:04:40 2009 +0100

    Generator: Improve accuracy of a comment.

commit f4f0d2969a8bb6b5ec187260b98daf6a4f309f69
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 20 15:09:11 2009 +0100

    virt-inspector --fish: Fix incorrect '-a' parameter (RHBZ#512709)
    
    virt-inspector --fish dom
    virt-inspector --ro-fish dom
    
    Both of the above commands give incorrect results if run on a
    libvirt domain, eg:
    
    $ virt-inspector --ro-fish RHEL54Betax64
    ==> --ro -a RHEL54Betax64 -m /dev/VolGroup00/LogVol00:/ -m /dev/sda1:/boot
                ^^^^^^^^^^^^^
    
    This is because the current code just prints back the original @ARGV
    parameters.
    
    This patch fixes this by getting the image names instead.

commit 26e323fdb3518ccf2a16aa807689ca9992606705
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jul 20 11:16:55 2009 +0100

    Replace 'distrofamily' with feature tags
    
    It turns out that the distribution hierarchy is not as reliable concept as you
    might think. This patch removes distrofamily again.
    
    Instead of distrofamily, we will add feature tags. This patch adds 2 feature
    tags for Linux distributions:
    
    package_format (eg rpm/dpkg)
    package_management (eg rhn/yum/apt)
    
    This change is reflected in the output of virt-inspector

commit 978f5328ff534ac966e3def640a71672d11956de
Author: Guido Günther <agx@sigxcpu.org>
Date:   Sat Jul 18 18:20:29 2009 +0200

    add nls_base.ko and nls_cp437.ko for vfat

commit 43aa40de2aa68ca36ca0968ff88c0d80d26f090b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Jul 18 10:43:52 2009 +0100

    Make /sysroot path configurable.
    
    Currently /sysroot is hard-coded throughout the daemon code.
    
    This patch turns the path into a variable so that we can change
    it in future, for example to allow standalone mode to be implemented.
    
    This patch was tested by running all the C API tests successfully.

commit 7b994e6df2dd93d135f89c6119ae557d6cdaabb1
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 17 17:40:30 2009 +0100

    Version 1.0.62.

commit 7eacd3741810a2da7423723e491262f59ef28aa6
Merge: c6811ef00 6a0a0d645
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 17 16:33:30 2009 +0100

    Merge branch 'master' of git+ssh://g-rjones@et.redhat.com/git/libguestfs

commit c6811ef0037dfed18796d1ccd892d904d40add9a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 17 16:32:05 2009 +0100

    RHEL 5.4 fix: Check for qemu-kvm binary in /usr/libexec

commit 6a0a0d645826ee61b5131c26990f36c8b7d1c33b
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jul 16 23:48:25 2009 +0100

    Differentiate 'distro' and 'distrofamily' in Sys::Guestfs::Lib
    
    Change distro in the output formally known as virt-inspector to reflect the
    actual distro. Possible values are now: fedora, rhel, centos, scientific,
    debian.
    
    Add new distrofamily entry which is one of: redhat, debian. Currently all
    distros except 'debian' are in the redhat family.
    
    This allows you to, for example, select a RHEL/CentOS/Scientific Linux specific
    kernel for installation rather than assuming they're all the same.
    
    Note this also changes the behaviour of virt-inspector --query. It will now only
    return rhel=yes for RHEL.

commit 6e3803d78de713b8f23ad493d43a99cc9767bc06
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 17 09:37:37 2009 +0100

    cat: Example of finding DHCP IP address of a VM.

commit 3b6999228f64a78067280c04a2b3185f75080fdf
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 17 09:37:18 2009 +0100

    Fix non-srcdir builds: Ignore perl/Makefile-pl.old

commit 4ffabd87497d7701ed0aaeb3eb13bc65f0474082
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 17 09:36:28 2009 +0100

    Fix non-srcdir builds: further fixes to OCaml build rules.

commit a42f9c0b047ee0a27cbda84d073b4a6f8c9e7859
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 16 19:29:47 2009 +0100

    Fixes for non-srcdir builds: Only include POTFILES from SUBDIRS directories.

commit 8f185ebbae7b97b16742b2f7910b890b1feacd75
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 16 19:27:16 2009 +0100

    Fix non-srcdir builds: fix OCaml build rules.

commit 308f289ffaa758804d97e2b926aec5c135e30c12
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 16 18:52:44 2009 +0100

    Fix non-srcdir builds: Files generated by configure should be in the tarball.

commit 51c3d0564eec66e0df1a4a3080a14d8ccfe7793c
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 16 18:32:57 2009 +0100

    Fix non-srcdir builds: Don't include generated *_protocol.c files in POTFILES.

commit af4864434ef2fdcedf2bf487adc413f17fec1760
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 16 18:31:25 2009 +0100

    Don't clean up some non-generated files.

commit 1f5b3d3afd8a2b3241cd0d6d38f244feeee6298d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 16 18:23:53 2009 +0100

    Fix for non-srcdir builds: more misc fixes.

commit 663bfbfcea3ec137e0a31832cf5cf24c6fc0a59b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 16 18:08:44 2009 +0100

    Fix for non-srcdir builds: Run src/generator.ml from the srcdir.
    
    Note that files generated by src/generator.ml are stored in
    the srcdir, *not* the builddir.  The reason is so that they
    can be included in the tarball and will appear in the srcdir
    for tarball builds.

commit 4b2138b961392a6a3cd9dd78f5e8d4ca8f3af64b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 16 18:04:01 2009 +0100

    More misc fixes to non-srcdir builds.

commit 9bb9b5a49580107893680f86733e36296d5e8a30
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 16 17:52:59 2009 +0100

    More misc fixes for non-srcdir builds.

commit 2dc7a46b3ccf362dbe7f853865efb614e801864c
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 16 17:15:40 2009 +0100

    Miscellaneous fixes for non-srcdir builds.

commit fdf26a445702313fe5ce676dec14011d96f0f64f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 15 23:12:02 2009 +0100

    New commands: 'mkmountpoint' and 'rmmountpoint'
    
    These specialized commands are used to create additional mountpoints
    before mounting filesystems.  They are only used where you want to
    mount several unrelated or read-only filesystems together, and need
    additional care to use correctly.
    
    Here is how to use these calls to unpack the "Russian doll" nest
    of a Fedora 11 live CD:
    
     add-ro Fedora-11-i686-Live.iso
     run
     mkmountpoint /cd
     mkmountpoint /squash
     mkmountpoint /ext3
     mount /dev/sda /cd
     mount-loop /cd/LiveOS/squashfs.img /squash
     mount-loop /squash/LiveOS/ext3fs.img /ext3
    
    The inner filesystem is now unpacked under the /ext3 mountpoint.

commit 76e9e4b05bf90cc81560c853d11f9a7325ff0e35
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 15 22:25:51 2009 +0100

    New command: 'mountpoints' which returns a hash of device -> mountpoint.

commit d8c797acb38998d7e017a0f205561df8718544a8
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 15 19:16:02 2009 +0100

    Build fix: perl-libintl is not required for the basic Perl bindings.

commit fe32976c39c24e7270db5302d303ddb9aea84de3
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 15 17:18:19 2009 +0100

    Version 1.0.61

commit 9b04665f6a4112173a7823f5fedaebc60d890e1f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 15 16:34:19 2009 +0100

    New tool virt-cat: display a file in a virtual machine.
    
    This script is just a simpler way to cat a file from a VM.  It
    is otherwise equivalent to using guestfish.
    
     virt-cat someguest /etc/fstab
    
     virt-cat someguest /var/log/messages | tail

commit 7023d12d8bf2cda06bfdea879019198831018169
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 15 14:24:41 2009 +0100

    Make Perl strings translatable using perl-libintl.
    
    All Perl strings are now marked as translatable using __"string"
    or __x("string {placeholder}", placeholder => $_).  Perl strings
    now get copied to the PO files.
    
    The po/POTFILES.in file is now updated automagically whenever we
    add new *.c, *.pl or *.pm files into the repository.

commit a2098671a2309cbc16c8ed477160438a72763629
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 15 11:39:04 2009 +0100

    guestfish: Add tilde expansion for paths (RHBZ#511372).
    
    This commit adds tilde expansion for local users in guestfish:
    
      ><fs> echo "~"
      ~
      ><fs> echo ~
      /home/rjones
      ><fs> echo ~foo
      ~foo
      ><fs> echo ~rjones/bar
      /home/rjones/bar
      ><fs> echo ~roo
      ~roo
      ><fs> echo ~root/foo
      /root/foo
      ><fs> echo ~root
      /root

commit 02c0df27779b74558ccfe6c461586bae33925c54
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 14 15:50:29 2009 +0100

    Version 1.0.60.

commit d9e3d8751a2ba4159807c6dddfb4e8fd1c877102
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 14 15:59:45 2009 +0100

    java/Makefile.inc: Include this generated file.
    
    We have to include this generated file because it is part of
    the build system, thus required to exist before the generator
    runs.

commit bf78b6d9ad9bc25a08df43c5e4cb00df3dd16223
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 14 15:41:51 2009 +0100

    File missing from tarball: rc_protocol.x

commit c4ea7f2acd5a2b72f367893d374a6c1835d12400
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 14 15:19:34 2009 +0100

    Version 1.0.59.

commit 2d1b6628fffaa1ef5aa3ba7a6812e76d6f344026
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 14 14:34:57 2009 +0100

    RHEL 5: header was called <sys/xattr.h>

commit f067148d594edc1d53fae64ad720d7fe0e3731ed
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 14 14:31:18 2009 +0100

    Fix: daemon/xattr.c can now compile even when no xattr support.

commit f88f56588cc123725c1350fcbf900721003c75c5
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 13 13:06:26 2009 +0100

    Guestfish feature: remote control of guestfish over a pipe.
    
    The use case is to have a long-running guestfish process in
    a shell script, and thus to avoid the overhead of starting
    guestfish each time.  Do:
    
     eval `guestfish --listen`
    
     guestfish --remote somecmd
     guestfish --remote someothercmd
     guestfish --remote exit
    
    This patch also supports having multiple guestfish processes
    at the same time.
    
    The protocol is simple XDR messages over a Unix domain socket.

commit 0b139ae2a6c0611b8739ce110fcf1add7ebd2dfe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 14 13:47:18 2009 +0100

    Removed getfattr/setfattr from TODO list, since now implemented.

commit c9a928de813253aa85aa3dd3ad56abc944e39673
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 14 11:50:55 2009 +0100

    Support for Linux extended attributes.
    
    This commit adds six calls to support Linux extended attributes.
    They are:
      getxattrs     list all extended attributes for a file or directory
      setxattr      add/replace an extended attribute
      removexattr   remove an extended attribute
      lgetxattrs    \
      lsetxattr     (same as above, but operate on symbolic links)
      lremovexattr  /
    
    See attr(5) for more information.
    
    This also adds support for the FBuffer field type, which maps to
    an XDR opaque<> or a C (int, char *) pair.

commit a62f84e5e0f1d431edd0c0a1bd5cabdf0925dd3c
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 14 12:47:53 2009 +0100

    virt-inspector: Ignore swap partitions marked as "none".

commit 74742300691caf8323509af8879f68ad91f9fde2
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 14 11:48:55 2009 +0100

    Improve launch error message.
    
    The previous error message was confusing for new users:
    
      libguestfs: error: guestfs_mount: call launch() before using this function
    
    The new error message explains the action that the user must take,
    especially if they are using guestfish:
    
      ><fs> mount /dev/sda1 /
      libguestfs: error: guestfs_mount: call launch before using this function
      (in guestfish, don't forget to use the 'run' command)

commit 2f90355b7a8729e96f550fce01f1fef853bf1d8d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 14 11:37:05 2009 +0100

    Add reiserfs module to kernel whitelist.

commit 579e257c26b1865d5e8b7a8baa47b438d7368e80
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 13 18:28:45 2009 +0100

    Only allow virt-v2v to be run on single root guests (ie. no multi-boot).

commit 4f659e36b97654a9bb9961030fdf0789776dbd69
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 13 18:06:10 2009 +0100

    Ignore old-style initrd which is a compressed ext2 filesystem.
    
    'cpio' chokes on these, taking ages to decide that they are
    not cpio files, and producing masses of messages.  This was
    causing virt-inspector to be very slow (many minutes) on
    RHEL 3 guests.  With this fix, speed is back to normal.

commit 4382a9ebd270402c861dd2972df37e9179fa9fe8
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 13 18:00:07 2009 +0100

    Implement new 'zfile' command, to show file type inside compressed files.

commit b7b499f942b01d635bf6255cb1780faa4f748c40
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 13 16:49:12 2009 +0100

    Ignore java/Makefile.inc (generated file).

commit fd3ba0dbb93ee23f591fdce48aa8d65552eef89d
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jul 13 13:51:42 2009 +0100

    Automatically generate list of built java sources

commit 4318823e2c9d6427720e2eae5b75a940969cec7c
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jul 13 12:55:02 2009 +0100

    Revert "Fix checking of generator being run from the right directory."
    
    This reverts commit 35c646965a21d452cf74ef3683612210a653c36d.
    
    As well as reverting this change, add a comment explaining that
    configure must run first.

commit b99738590650199606267a06dcf715ed0c494f08
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 13 12:27:35 2009 +0100

    Move BUILT_SOURCES so the comment is back in the right place.

commit 3eec2fb1eee0e8a39c5d67f995aa19d6f88ffe38
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 13 12:12:34 2009 +0100

    Order alphabetically the options in guestfish.1 manpage.

commit e273b65fb589ec57ad5d95edfced796e2e9e7aec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 11 21:35:03 2009 +0100

    Guestfish: implement -x option, echo commands before executing them.

commit 1c408cbd5b6c63646852db14d3cd0432dee96224
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 11 21:33:41 2009 +0100

    Fix: '-D' was not recognized as a parameter to guestfish.

commit eaaa64b6af3ac90926d193de9c518ce7ac91877c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 11 21:27:23 2009 +0100

    Regression test: Test reopening the handle in the same process.

commit 7976900128add4c5305b01097e4901519ef6a28a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 11 21:20:17 2009 +0100

    Guestfish: Add 'reopen' command to reopen the libguestfs handle.

commit 86e6e1621450418eb38a3e95965e57983919aa4c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 11 21:07:57 2009 +0100

    Add missing documentation for "more" command in guestfish help output.

commit 0bd4ca25e545ef945fb567d236f9810497774c16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 11 14:00:53 2009 +0100

    Add tests to many non-daemon functions.
    
    Tests are added to the following functions:
      get_qemu get_path get_append get_autosync
      is_ready is_config is_launching is_busy
      set_memsize get_memsize get_pid

commit d138f8829960644d9d5eb7c405fa555ed13e34c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 11 13:44:53 2009 +0100

    Add TestOutputIntOp, CompareWithIntOp.
    
    These constructors allow enhanced tests where we compare
    the result of a test against some operator, eg. >= 1 or < 5

commit 60168e38d01c482f89ee95580c7d00e4159c3d60
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 11 13:38:01 2009 +0100

    Test for "version" command should be InitNone.

commit 07747a2c3dadee1df63dda2701ba6e8257d1a39f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 11 13:37:24 2009 +0100

    Add comment to the code about InitNone and InitEmpty.
    
    These two constructors are treated as identical, but they
    should be distinct concepts.

commit 8558c63747da3fe31f40c7a16d4c74b248259799
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jul 11 13:36:31 2009 +0100

    Fix UPDATES and host_cpu in configure.ac.
    
    UPDATES does not need to be propagated into config.h.
    
    host_cpu was AC_DEFINE'd twice.

commit d919e6279adc168c07e83cb07f792731ab27e0b6
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Jul 11 12:12:33 2009 +0100

    Documentation for virt-v2v.

commit 820ae347efb6a8c82f66f024871cff733a1144a6
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Jul 11 11:20:46 2009 +0100

    V2V outline program.

commit 252f26a211aed5c8d30697aef57195f1392f9699
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 10 23:14:16 2009 +0100

    Don't list Java files explicitly, since these files are auto-generated.

commit a92d810f40cfa1154d1c2ab6635ee6ea65f59b29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 10 22:46:06 2009 +0100

    Version 1.0.58.

commit 85a689cc2106f3f2cfea6d37c8ba8cb433f2084b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 10 22:15:53 2009 +0100

    Proposal to add BufferIn and RBufferOut types (not implemented).

commit 2f00d9a5f3d100ad43d98e58615d5465057daeb0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 10 22:01:50 2009 +0100

    Sys::Guestfs::Lib: Exit with error if a libvirt domain appears to have no disks.

commit 81ff38ae2cb66bb1dc72383fdaf4bb968864c5f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 10 21:59:46 2009 +0100

    virt-df: Recognise libvirt domains with file-backed disks.
    
    File-backed disks (<source file="...">) didn't get recognised
    before.  This patch fixes the problem.

commit e1c25d3500493404eca0e00c6cff023c6f8faa78
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 17:57:41 2009 +0100

    Add --version options to virt-df, virt-inspector and virt-v2v.

commit 07ae68942c2bdc9065522fa0c1ec824d9d67f0b5
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 17:52:09 2009 +0100

    Add 'version' call to get true library version number.
    
    This patch also changes the way that the version is specified
    in configure.ac.  It is now made out of four parts (major, minor,
    release and extra) and constructed for AC_INIT.

commit 2bb1dae5fed6d26ce39c15f14c5fbc396b58c141
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 16:28:15 2009 +0100

    Move 'use File::Temp' from virt-inspector program to Sys::Guestfs::Lib.

commit bbb8dbbb170f2e50f8f036325bbf5ed4bf2c7e59
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 14:10:31 2009 +0100

    Version 1.0.57.

commit 4ba716eb42d6067b36204b63e09927fe024db22a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 14:09:47 2009 +0100

    Update PO files.

commit 5013ed9bbac130a6ac678e99fb2122230b269381
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 14:09:33 2009 +0100

    Additional C files for POTFILES.in.

commit cb6ece8086e8c6b2eca90bddb83bea7081ad786d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 14:02:45 2009 +0100

    Rename internal subroutines with leading underscore character.
    
    Otherwise Pod::Coverage in the tests will complain that the
    internal subroutines are undocumented.

commit 923c1831f2cfb9d0b858c134623da0d593c7f84d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 13:04:17 2009 +0100

    Working version of virt-df.

commit 90a77d194d15e44eac21e248b9f0520b54615075
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 12:06:11 2009 +0100

    Fix for returning structures (hashes) from Perl calls.
    
    Calls such as stat and statvfs which returned a single structure
    were returning an array of values instead of a full hash of keys +
    values.
    
    Fix this by pushing the key names on the stack too.

commit b581708e1e90b32feda3427074e29849ee9bd68f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 11:43:17 2009 +0100

    '$_' should be marked as a local variable in Sys::Guestfs::Lib::open_guest.

commit 727d51fb77ee09f01b0e132bd1a7c122631ee8cc
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 11:41:43 2009 +0100

    Properly close fds and unregister handlers in guestfs_close.
    
    This caused a segfault if you tried to repeatedly open and close
    a guestfs handle in the same program.  The reason is that the
    old handler remained registered (not always - it was racey).
    
    This adds proper cleanup to the guestfs_close path, also for file
    descriptors.

commit 689ff5dc2be2b68c5faf209421dd64ac99775825
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 10:44:20 2009 +0100

    Added framework for 'virt-df' command.

commit 6e2c3f5c20451f02787a1b8e0238dab7e2aef0c6
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 10:23:11 2009 +0100

    Ignore any file called 'localconfigure'.
    
    Developers should put their custom parameters for configure/autogen.sh
    into a script called ./localconfigure, and this script will be ignored
    by git and the build system.

commit 82ec6bcaf268ddb739d9fa11e3b9cf9bcfa814e8
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri Jul 10 10:22:47 2009 +0100

    Added outline of the virt-v2v script.

commit d0fa426a56cd9d8e0f426a6ded0badf9f8c8b96e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 9 19:37:09 2009 +0100

    Remove virt-inspector --force option - it didn't do anything.

commit 7bfcd93e811adb1adcae521fc7768b2a83d14cf9
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 9 19:25:01 2009 +0100

    Sys::Guestfs::Lib minor documentation clean-up.

commit 84e6014cc2e07b1668b0eadc52ae95e8bf0b1866
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 9 18:29:08 2009 +0100

    Move the inspection analysis code into Sys::Guestfs::Lib library.
    
    Creates new functions:
      inspect_all_partitions
      inspect_partition
      inspect_operating_systems
      mount_operating_system
      inspect_in_detail
    
    Includes far more documentation for the process.

commit 9e95fa93ff0addea463c1b1e72fc811e5a1f4cb7
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 9 15:29:28 2009 +0100

    Move 'resolve_windows_path' to Sys::Guestfs::Lib.

commit 56e153cd7f22b3defc63495d77b1a21ed68657d0
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 9 14:35:34 2009 +0100

    Move 'get_partitions' call into Sys::Guestfs::Lib.

commit 5e1035a16810a964ac6ae204684f9e38dc625fcb
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 9 14:01:58 2009 +0100

    Add Sys::Guestfs::Lib - useful functions for using libguestfs from Perl.
    
    This adds an extra Perl module called Sys::Guestfs::Lib which
    adds useful functions for using libguestfs from Perl.
    
    The intention is that common code shared between virt-inspector,
    virt-df and virt-v2v will move into this library.
    
    This patch also changes virt-inspector to use this library.

commit bc7a6627def604b871ac9bbb482f8956abff8470
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jul 9 14:01:10 2009 +0100

    Just whitespace changes in the generator code.

commit 1e1aa6170a4a32446fc91796d9db85532fbb2a11
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed Jul 8 17:20:52 2009 +0100

    Update with links to the new mailing list.

commit 5db28ca65b645d478966126743359386a992a807
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 7 20:28:29 2009 +0100

    Fix checking of generator being run from the right directory.
    
    Originally it was looking for 'config.status', but this file
    might not exist until configure has been run.  Make it look for
    HACKING instead.

commit 882e264a12aa640f36804c4947f1c89423a4062a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jul 7 20:06:27 2009 +0100

    Version 1.0.56.

commit a53529b974f555fbe9920a8a4d6dbe8be90064e1
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Tue Jul 7 19:39:58 2009 +0100

    RHEL 5: Mount squashfs with explicit type.

commit c8022cf8ed4dfa16f3685d14ed28d679851e0380
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Tue Jul 7 19:02:59 2009 +0100

    RHEL 5: Skip 'scrub' test if command is not in the initramfs.

commit b616ca5d915efae555627382396d68da74180039
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Tue Jul 7 19:01:45 2009 +0100

    RHEL 5: 'mkswap -U' not supported, check before testing it.

commit 976324c1dceb5a45391f14e3ee108f50f0c3569b
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Tue Jul 7 17:34:31 2009 +0100

    Update ocaml/.depend.

commit ad0c5ba4e5f1d85c5b42568b4b63079c8757e7e9
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Tue Jul 7 17:33:47 2009 +0100

    RHEL 5: RHEL kernels don't have $arch at the end, so look for non-arch kernels too.

commit 9fcf3b9bebf449f425f9cefda7771f852ea6cfc5
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Tue Jul 7 17:33:09 2009 +0100

    RHEL 5: $(builddir) did not exist with this old autoconf/automake, so workaround.

commit 6df0c23be26a3d80371e78856efc5a27a1192931
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Tue Jul 7 17:32:34 2009 +0100

    RHEL 5: for (int i = ...) is not permitted with this old version of GCC.

commit 0613eb174583b6872e5acef3d83e4cfffe730388
Merge: 062fc77e7 6803b5d3b
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Tue Jul 7 16:55:51 2009 +0100

    Merge branch 'master' of git://git.et.redhat.com/libguestfs

commit 6803b5d3bc7270e0fe4351eb202ab290a8321db4
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 7 13:42:34 2009 +0100

    Generate structs and struct lists generically.
    
    This modifies the way that struct and struct lists are generated
    (for return values) so that there is no need to add an explicit
    new type when adding a new structure.
    
    All tests pass, and the C API should be compatible.
    
    I have also inspected the changes that are made to the generated
    code by hand.

commit 561ed46edcdf411c01f85491f6fa3e144d9f4a7f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jul 7 13:03:36 2009 +0100

    Fix for 349814e9d912c4: Get correct path when building Ruby bindings.

commit 26f5c73c94585c94a1ed7d29cda631ddc4557bf0
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 6 16:01:51 2009 +0100

    Test two (of four) cancellation paths.

commit 7ed84e65bfe201fb3ce37851b236cd54c7a891a4
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 6 16:01:23 2009 +0100

    Add a debug message to the library cancellation path.

commit 4a32fd93e7cdf02617338caac273656cfd2718df
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 6 13:10:25 2009 +0100

    Introduce regression tests for various qemu failures.
    
    Test failure of qemu and recovery of the library:
     - mid-command
     - between commands
     - during launch [test not working yet]
     - explicitly killed by guestfs_kill_subprocess
    
    Also this patch cleans up the other tests in this directory
    and disables the long-winded test-bootbootboot test.

commit 583481048b71479e050f668a41d3763679ad8086
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 6 12:46:44 2009 +0100

    guestfish: Always fflush stdout between commands.

commit 1fea91c631bce9d2c543f4e3883fffe2b8a312b3
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 6 12:37:14 2009 +0100

    Whitespace change in ocaml/.depend file.

commit 80affe9f214f52d8da6b84c584c680cad732dd0e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 6 12:30:59 2009 +0100

    Add 'get-pid' command.
    
    This is used to get the PID of the qemu subprocess, mainly for
    debugging and testing purposes.

commit 7a7bac8c18ec3fd635fb1f32237ba44bdbc508ba
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 6 12:30:33 2009 +0100

    Todo: Remote-control guestfish through a pipe.

commit 465463c0c6505fcb887746eb222d8d5986c307cb
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 6 12:05:55 2009 +0100

    Sort the .gitignore file (no semantic change).

commit c20caaa51529a3350b4d55b8a75f85e1c9e57581
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jul 6 12:03:35 2009 +0100

    Remove files generated by autoreconf (Guido Gunter and Matthew Booth).

commit ad8334f2a11621f22f4a29c7e8b20efedf2b0c84
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sun Jul 5 16:04:50 2009 +0100

    Don't die if reply message is oversized (RHBZ#509597).

commit 0414af0a127ca924981be1d713651e79941fab4d
Author: Guido Günther <agx@sigxcpu.org>
Date:   Sat Jul 4 14:41:23 2009 +0200

    use 'stupid_simple' instead of 'nested' initramfs
    
    speeds up start of the appliance

commit 21ecab471b8033a34454ca453edeffb7812465e5
Author: Guido Günther <agx@sigxcpu.org>
Date:   Fri Jul 3 22:20:05 2009 +0200

    select proper kernel by architecture

commit f37f9567c568ef0bdb30c3e38c4a8affba2e90e0
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jul 3 11:52:50 2009 +0100

    Make it possible to build in a separate directory
    
    This patch allows you to do:
    mkdir build
    cd build
    ../configure ...
    make
    
    This will output all generated files to the build directory. Given that
    autogen automatically runs configure, you can also do:
    
    BUILDDIR=./build ./autogen.sh
    
    which will do the right thing.
    
    Also:
    
    * Fix a dependency bug which means that guestfs_protocol.h
      isn't automatically rebuilt.
    * Re-running autogen.sh with no arguments won't blow away your previous
      configure arguments.

commit ce417fe79eeb5ea1bd88dc467a3172e29cb9b3e6
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Jul 3 14:17:23 2009 +0200

    generate slightly more "const-correct" code
    
    * src/generator.ml: Add a few "const" attributes.

commit a0e66520ea05260c66316d0f0708020f446ade7a
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Jul 3 12:05:22 2009 +0200

    avoid leak upon failed realloc
    
    * daemon/guestfsd.c (commandrv): Free original buffer (rather
    than leaking it) if realloc fails.

commit b12b576c9a0413614085ed7fb568d9b501536b2c
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Jul 3 11:53:49 2009 +0200

    remove trailing blanks

commit 728fe915b6e54e4727088e9da96e0fae75bdb290
Author: Jim Meyering <meyering@redhat.com>
Date:   Fri Jul 3 11:52:19 2009 +0200

    daemon/readdir: avoid a small leak
    
    * daemon/readdir.c (do_readdir): Free both p and v.name, in case
    only one of the allocations failed.

commit 10868ae8c98b94ec5682e09b6bfc4816f5316c60
Author: Guido Günther <agx@sigxcpu.org>
Date:   Thu Jul 2 17:30:40 2009 +0200

    touch fakeroot.log
    
    indicationg we're done creating the appliance

commit 1fab5132e2c2630b5264c2e9fc3a8aee7e784588
Author: Guido Günther <agx@sigxcpu.org>
Date:   Fri Jul 3 12:42:38 2009 +0200

    remove superflous debirf scripts

commit 8471a403f06c83648de183528d5cad1d40277e16
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 3 12:02:21 2009 +0100

    Guestfish tab-completion on destination paths, fixed this time.
    
    Tab-completion on destination paths should now work correctly.

commit cd692d5aa6b975a53914ce59ea226ddc41d9e9e2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 3 11:31:01 2009 +0100

    Don't keep rebuilding debirf module symlinks.

commit 1098aed6018973674b6689b6ca5140f3b1f52003
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 3 11:10:49 2009 +0100

    'readdir-and-stat' call is now effectively implemented.

commit 4ed8de02bf379c9f5ffb1f9e6beadef8ce13d2d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jul 3 10:47:10 2009 +0100

    Add Debian appliance directory to the distfile.
    
    'make dist' won't copy symlinks into the output file, so we
    have to add a rule to the Makefile to copy these.
    
    (Issue reported by Guido Gunther).

commit 062fc77e7719eeb03dead9774e3cf68248ca0079
Merge: 6eae32d5c 2d6bd9a04
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Fri Jul 3 00:22:14 2009 +0100

    Merge branch 'master' of git+ssh://192.168.122.1/home/rjones/d/libguestfs

commit f3c7f8ea9ba23a545eb5e7eef7e8a008437e42e4
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Jul 2 15:39:08 2009 +0200

    use safe_malloc and safe_calloc in generated code
    
    * src/generator.ml (safe_malloc): Define to guestfs_safe_malloc.
    (safe_calloc): Define to guestfs_safe_calloc.
    [most generated code]: Fail immediately upon failure of otherwise-
    unchecked malloc and calloc calls.
    * src/guestfs.c: Include <stddef.h>.
    (xalloc_oversized): Define.
    * src/guestfs.h (guestfs_safe_calloc): Declare.

commit 31282dbac5bbaf6a61080eca7360b2cee9730acc
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Jul 2 15:25:58 2009 +0200

    prefer sizeof *VAR over sizeof TYPE (no semantic change)
    
    * src/generator.ml: Slightly safer, in case the
    declared type ever changes.

commit 2d6bd9a04f8bb240a71cde03f284f4ce023f04d0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 21:51:47 2009 +0100

    Prepare for 1.0.55.  PO files also updated.

commit 244a5d0c94e1a985023cf50c5783df8744466844
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 21:50:30 2009 +0100

    Add 'sfdiskM' command.
    
    This command is a saner interface to partitioning.
    
    All partition sizes are specified in megabytes (not cylinders).
    You don't need to specify the cyls/heads/secs parameters.
    
    All the test code has been updated to use this, so it is now
    CHS-independent (eg. when CHS changes as between IDE and virtio).

commit b49699b7a4095d47dceeb0c853013d0dac2b35b5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 21:48:17 2009 +0100

    Remove generated files guestfs_protocol.[ch].
    
    These generated files were accidentally left in when we
    removed the other generated files in cset
    b3cb0b04eb2d38ba32c160a83d8e3894b376907b.

commit fca62e0c927be634b831b9a20de09f768cc23d71
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 21:33:51 2009 +0100

    Don't rebuild the whole appliance if just the /init script has been changed.

commit c7a3739206ef0ef1f8f4813350948382efe8d0f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 21:32:59 2009 +0100

    Improve virtio-blk performance (RHBZ#509383).

commit 12b951913a7023b3055b958f1c92f01dcf6594b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 17:38:55 2009 +0100

    Add ./configure --with-drive-if=(ide|scsi|virtio)
    
    With this flag the packager can decide to default to a particular
    qemu drive model.  The current default is 'ide', however note that
    we intend to change this in future to 'virtio' once some upstream
    regressions are fixed.  Packagers can force a particular drive
    model if they wish.

commit 51e87d3f171c2dd972f7a3bb2519785b930c250c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 16:02:32 2009 +0100

    Add the guestfish 'time' command.
    
     ><fs> time sfdisk /dev/sda 0 0 0 ,
     elapsed time: 6.12 seconds

commit 6fe59f9f9a1b0f0d7013ae0ef478907779f3eeb4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 15:11:59 2009 +0100

    Add list of function_names to the daemon.
    
    Messages which include the proc_nr can now also include the
    name of the actual function being called.

commit daeb6a5427971b0f3f2fede244ce3b8fe3e87142
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 14:11:19 2009 +0100

    In verbose mode, daemon will display the time elapsed for each command.

commit df4e21829787ca1e401c6b1f4bc5c3d6abb2097a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 14:10:55 2009 +0100

    Ignore generated file appliance/debian/debirf.conf

commit 382f2b075afec5203afbc979d7bfd6204241df3c
Author: Guido Günther <agx@sigxcpu.org>
Date:   Tue Jun 30 15:01:14 2009 +0200

    Build Debian based appliance using debirf

commit 9685480108cbdfdb4e77d7674a4630faaf83cd25
Author: Guido Günther <agx@sigxcpu.org>
Date:   Tue Jun 16 23:47:36 2009 +0200

    add debirf files

commit b2d5eb60c5d828dd2f1edcb7b81c758923fea11e
Author: Guido Günther <agx@sigxcpu.org>
Date:   Thu Jul 2 10:46:37 2009 +0200

    unconditionally load dm module
    
    needed for device mapper (LVM)

commit ac974ea7347f2921a1c85a722544082bf7ebf9f0
Author: Guido Günther <agx@sigxcpu.org>
Date:   Tue Jun 30 14:44:09 2009 +0200

    add missing module
    
    for modularized Debian kernels

commit 51917518aad9da83f0fff107f2d233af1a65416a
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Jul 2 13:36:04 2009 +0200

    avoid automake failure
    
    * daemon/configure.ac: Use AM_PROG_CC_C_O, not AC_PROG_CC_C_O.

commit 92f5d6fd5b27f62a5aaae953bbb31f7e500db09a
Author: Jim Meyering <meyering@redhat.com>
Date:   Thu Jul 2 13:30:07 2009 +0200

    arrange to build some generated sources
    
    * src/Makefile.am (BUILT_SOURCES): Define.
    ($(BUILT_SOURCES)): Depend on stamp-generator.

commit 406849ce91cfd0f16ed3528412cf4c9f3a683cd5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 13:07:07 2009 +0100

    Re-add src/MAX_PROC_NR (generated file).
    
    This file is required by configure, so we need to add it so
    it is available after the git checkout.

commit 80cfbf22aaf2ada58eacf8641f2a53bef2f4b653
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 12:23:08 2009 +0100

    Memoize the output of pod2text function in the generator.
    
    This speeds up the generator greatly.

commit a41d934501f3a0e5714a48e25b0d0496dfb5bb49
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 12:04:54 2009 +0100

    Updated PO files.

commit f0fc5630b4ca7e95de7b990470d68d6a1043b310
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 11:38:36 2009 +0100

    Remove generated code from git.
    
    Git users now require the OCaml compiler in order to regenerate
    the generated code after a checkout.
    
    Generated code will remain in the tarball, so users of the
    source tarball will not need the OCaml compiler.

commit e36a68e1f557758e905de9bc533500d7d6ac666b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Jul 2 11:29:00 2009 +0100

    Generator now runs automatically when it has changed.

commit 8c811b0e78b931ef70925315b137941137827408
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 20:56:58 2009 +0100

    Add 'readdir' call.
    
    This adds a readdir call (mostly intended for programs).  The
    return value is a list of guestfs_dirent structures.
    
    This adds the new types 'struct guestfs_dirent' and
    'struct guestfs_dirent_list', along with all the code to
    return these in the different language bindings.
    
    Also includes additional tests for OCaml and Perl bindings
    to test this.

commit c8ff70544730e60a776f13a234d5714bc6dfd522
Author: Jim Meyering <meyering@redhat.com>
Date:   Wed Jul 1 16:09:33 2009 +0200

    fish: handle some out-of-memory conditions
    
    * fish/destpaths.c (xalloc_oversized): Define.
    (complete_dest_paths_generator): Use size_t as type for a few
    variables, rather than int.
    Don't deref NULL or undef on failed heap alloc.
    Don't leak on failed realloc.
    Detect theoretical overflow when count_strings returns a very
    large number of strings.
    Handle asprintf failure.
    (APPEND_STRS_AND_FREE): Rewrite as do {...}while(0), so that each use
    can/must be followed by a semicolon.  Better for auto-formatters.

commit cc6a367f902ed2abcee2ccaad81c5a471a522826
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 17:15:24 2009 +0100

    Call 'udevadm settle' after operations which add/remove device nodes.
    
    Because udev operates asynchronously, we found errors which were
    caused by a previous command (eg. sfdisk or pvremove) creating
    or removing a device, and that change not having happened by the
    time the next command was run.
    
    This patch adds calls to '/sbin/udevadm settle' after any commands
    which can add or remove device nodes.
    
    If udev is not being used or not available, this should have no
    effect.  The command fails and this is silently ignored.

commit f6f82d43690c2494db5d4ef80f3f3419921b1c01
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 17:13:39 2009 +0100

    All instances of 'pclose' now check for return value != 0.
    
    We are generally interested that the subcommand ran without
    error, ie. had exit status of 0.  'pclose' returns the exit
    status, so we now check that pclose (fp) != 0.

commit be4db2113ad3195cdf55461b452385dc58b7ba4d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 16:36:13 2009 +0100

    Fix error handling of external sfdisk command.
    
    Should use 'pclose' instead of 'fclose' (although fclose happens
    to work because of glibc internals).
    
    The result of pclose is the exit status of the command, so we
    need to test this is != 0.

commit ebc58ca6390e0c3092a3fd8deada272940695145
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 30 14:01:40 2009 +0100

    Generated code for the virtio_blk change.

commit 28d22a6a559b342cdb4662d5447e3d935a1c9d20
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 30 13:59:29 2009 +0100

    Change to use virtio_blk (virtio block device) by default.
    
    virtio_blk is the fast, virt-native block device driver
    supported by qemu and KVM.  Note that virtio_blk device
    names are called /dev/vd*.
    
    Existing scripts should continue working because device name
    translation will silently change device names of the form
    /dev/sd* to /dev/vd* as required.
    
    See also:
    http://libguestfs.org/guestfs.3.html#block_device_naming

commit 9d8088843de9a5ebb43348271b8eda6e238d7061
Author: Jim Meyering <meyering@redhat.com>
Date:   Wed Jul 1 15:45:01 2009 +0200

    Don't dereference or free undefined "msg" upon OOM.
    
    * src/guestfs.c (guestfs_error): Handle failing vasprintf.

commit 73431514babe8569c7740d6d6454eab9ba8af4a9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 14:51:06 2009 +0100

    Add libguestfs(3) as an alias manpage for guestfs(3).

commit 0160d1005774e4d7ce743b73fbd1b777d2371018
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 14:48:35 2009 +0100

    Updated PO files.

commit 4a6a49588d7b7e244de92eb0fbd3f0fc3eba1832
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 14:45:52 2009 +0100

    Reorder the environment variables alphabetically in the documentation.

commit 1efae84f3d102e40281a752373653d229a0bb9be
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 14:43:49 2009 +0100

    Document the $PAGER environment variable.

commit 29f8f7d161656bba4c68ae89b5562eb50c1a0cfa
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jul 1 14:42:41 2009 +0100

    Document the LIBGUESTFS_MEMSIZE environment variable.

commit eee60d4e0822838e8b3a580d29a571f0a4bf0d80
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 30 15:10:31 2009 +0100

    Change statvfs test so it doesn't depend on device size.
    
    Current statvfs test depended on a lot of filesystem details
    which can change if the CHS of the underlying block device
    changes (eg. with the switch from IDE -> virtio).  These are
    not really necessary to test the call, so instead just check
    for filesystem features.

commit 5a7188e89b9323821e4c13ce7f9e424d06bf3539
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 30 15:12:48 2009 +0100

    Clean up the output of the C API test code.
    
    Set output mode to unbuffered so that we see ordinary output
    messages and errors at the same time.
    
    Align "skipped" messages.

commit 52734ba3d3c9dfabbc217073f3af65f893a1bb2e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 30 17:48:07 2009 +0100

    Todo: getfattr, setfattr.

commit f9c75d610ab439114fd2bfbaddb5cda5f9469025
Author: Guido Günther <agx@sigxcpu.org>
Date:   Tue Jun 30 12:17:40 2009 +0200

    Whitelist kernel modules for hardware emulated by QEMU
    
    (Modified from Guido's original patch to use a wildcard to
    specify all virtio modules - RWMJ).

commit c30606affce3c1b4d561e037af38c86df80c053c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 30 13:09:44 2009 +0100

    Generated code for mknod, mkfifo, mknod_b, mknod_c, umask.

commit a258122797f61e2a95d68eb88f4a459117bb6870
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 30 13:08:34 2009 +0100

    New commands: mknod, mkfifo, mknod_b, mknod_c and umask.
    
    These commands are used to create block and char device
    nodes or FIFOs (named pipes) in the filesystem.
    
    The umask command is required also because the permissions
    used by mknod are masked by the umask.
    
    Also document and guarantee that the umask starts as 022.

commit ddf64799ab0cb6a2ea3789f6296dba48894a951a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 30 13:07:07 2009 +0100

    Use octal numbers for modes in the test suite.
    
    We have to use the OCaml convention (0o...).  Note that in
    OCaml 0777 is a _decimal_ number.  It'll catch you out.

commit b74acb055a50890dd06871574b609d8dbbb59a25
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 30 11:17:06 2009 +0100

    Generated code for 'set_memsize'/'get_memsize' calls.

commit 68e62c6f7aa3bd745024b03c1cb549cbc19b5c11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 30 11:16:22 2009 +0100

    Add 'set_memsize'/'get_memsize' calls.
    
    Allow the qemu memory size to be specified either by API
    calls or by setting the LIBGUESTFS_MEMSIZE environment
    variable.

commit 843839892e0327698e9d8874942411bf76c69e04
Author: Guido Günther <agx@sigxcpu.org>
Date:   Mon Jun 29 22:56:54 2009 +0200

    Use udev if available (Guido Gunter).
    
    Added support for Fedora's udev (Richard Jones).

commit 42c7c51915599b1be3dc6fc869ef525250cb3553
Author: Guido Günther <agx@sigxcpu.org>
Date:   Mon Jun 29 18:40:00 2009 +0200

    define REDHAT and DEBIAN
    
    so we can preprocess packagelist.in

commit 2b1ae054acc11bcce75ebc3be7277bc66498f3a3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 20:39:41 2009 +0100

    Todo: Suggest an environment variable for memsize configuration.

commit 7d586d73036ab34aa03a51a633c117a3f61e1079
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 20:24:47 2009 +0100

    Generated code for the 'mkswap*' commands.

commit 1358c42b8247be94d12d48792289079b78e006b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 20:23:42 2009 +0100

    Implement 'mkswap', 'mkswap_L' and 'mkswap_U' commands.
    
    These commands are used to make Linux swap devices.  The mkswap_L
    command makes one with a label.  The mkswap_U command makes one
    with a known UUID.

commit 5d1b6229e5282be462e521fbff845b9770d08ae6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 20:24:38 2009 +0100

    Todo: Allow memsize to be configured.

commit 6a698a047334c9f4c5381b4045c5a90658d369d4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 18:52:14 2009 +0100

    Todo: Investigations into 'binarch' command.

commit 3bcfaa60b3886eb27d56480e086e58b43015e6e0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 18:40:42 2009 +0100

    Rearrange guestfish commands in the manpage.

commit 990d84c4390d397877df5fae208df02c140d1b00
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 17:48:03 2009 +0100

    Add missing documentation for new 'more' and 'less' commands in guestfish.

commit ad046ad669632b7e3d8c983a7498695a58a17b29
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 17:33:52 2009 +0100

    Version 1.0.54

commit ab06632838a71a13f1ef3c114f31a8e2de557c02
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 17:33:32 2009 +0100

    Check for XML::Writer dependency for virt-inspector.

commit 25726d39d8176ddd82facc7df253a72444a0a7ef
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 17:33:08 2009 +0100

    Remove generated files in make clean.

commit 52c0dd3d8dcdfdb0c3478442027f3bc833f178e2
Merge: cc4912145 7c8a971c7
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jun 29 16:27:05 2009 +0100

    Merge commit 'et/master'

commit 7c8a971c797cd64207874637680a6ed3c4f5cf81
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 16:22:10 2009 +0100

    Fix for 'broken pipe' error when qemu dies (RHBZ#508713).

commit f98526d64c1970c04db786593c73edb6cd5a4560
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 16:05:22 2009 +0100

    Generated code for mount-loop command.

commit 31a5e7a401fafdcdcb11c8d9610ca763316380bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 16:03:54 2009 +0100

    Add mount-loop command (RHBZ#508668).
    
    Loop device mounts don't work for the generic 'mount' commands
    because the first parameter should be a file not a device.
    
    We want to separate out files parameters from device parameters
    in the long term, so this adds a new mount-loop command for this
    purpose.

commit 09cbba1221c1da1bb92b560c0a1a229e8df1ad11
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 16:00:49 2009 +0100

    Fix memory leak in daemon/mount.c:do_mount_vfs.

commit cc49121455ea31daa427f179d257ebb8eef0a23e
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jun 29 15:34:29 2009 +0100

    Output the config filename containing a modprobe alias in XML
    
    This change affects the XML output:
    
    /operatingsystems/operatingsystem/modprobealiases/alias/text() =>
    /operatingsystems/operatingsystem/modprobealiases/alias/modulename/text()
    
    Additionally there are two new elements:
    
    /operatingsystems/operatingsystem/modprobealiases/alias/augeas
    /operatingsystems/operatingsystem/modprobealiases/alias/file
    
    These contain information about the location of the alias directive.
    /augeas is an augeas path. /file is the path of the file containing the
    directive.

commit 01d4e3b898bb1eeb66e1ad9e88cd194aa0a334bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 15:18:04 2009 +0100

    Todo list: More suggestions.

commit 92a652bcc28224968f058914e0e64020abad2193
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 15:18:17 2009 +0100

    Generated code for 'initrd-list'.

commit ad0ccc4a4ccb2b10f2272c5c4c1076544e626888
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 15:16:40 2009 +0100

    Add 'initrd-list' command to list contents of initrd images.
    
    Add 'initrd-list' command to list the files inside (new-style)
    initrd images.  Update virt-inspector to use this instead of
    the less efficient download/unpack locally method.

commit 10cf0ae7c68416235e1fa0aa15cf4231e6ae8820
Author: Matthew Booth <mbooth@redhat.com>
Date:   Mon Jun 29 14:39:27 2009 +0100

    Add a comment to device naming heuristic

commit 39e8af827eebf744f1fe209d51fda4c8a31400d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 12:47:20 2009 +0100

    Generated code for 'du' command.

commit ed1c646f77c16d3958d4a6c86a9e82b3f80465a7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 12:46:59 2009 +0100

    Added 'du' command.
    
    This command estimates file usage for files and directories.

commit 28a87bfdaecffb989b007e31bea603774f914f5e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 12:26:11 2009 +0100

    Generated code for df / df-h.

commit 1ecb8d3116cf8ebd5f0b9201fb06cc74027ebd2a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 12:25:31 2009 +0100

    Add 'df' and 'df-h' commands.
    
    df and df-h commands can be used interactively to show disk
    space usage.
    
    Use existing statvfs command from programs.

commit 94ec781306f590d54301118fe7c6ea346342daa2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 12:09:52 2009 +0100

    Todo: Removed suggestion for short form for pipes.

commit fc1b484817f4a6724cf99723e08841c3f385585e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 12:05:58 2009 +0100

    Implement "more" and "less" commands in guestfish.
    
    Use commands such as:
      more /etc/passwd
      less /etc/fstab
    
    These commands are specific to guestfish.

commit ba23109d077d3a15c2ba53ee02cdcde815b1a24f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 11:48:50 2009 +0100

    Todo list: Pipes now implemented, so remove from list.

commit 54bd502cf12caf8731d2c85ada65e236ffee79dc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 11:47:07 2009 +0100

    Generated code for head/tail commands.

commit 81912aed2cd085442a5a538a986aecb7470e4961
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 11:46:19 2009 +0100

    Implement "head", "head-n", "tail", "tail-n" commands.
    
    These commands let you view parts of a large file without
    passing the whole file over the network connection.

commit d84880e8c56a20e55933e02beb9948cdbe8a43b2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 11:18:19 2009 +0100

    Prevent 'n' being used as a parameter name.
    
    Parameters named 'n' sometimes break the Perl bindings, so
    check for this in the generator and prevent it.

commit cce1e05b5011358b346302fa987570ae2e9b151c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 10:09:13 2009 +0100

    Generated code for 'wc_*' commands.

commit 02a48c0dddd2bb34d1b292a7b799152adf1b7960
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 10:08:59 2009 +0100

    Todo: wc command done.

commit 1a98b352564270610d082af59f1b5cf93704d2b3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 10:08:25 2009 +0100

    Implementation of 'wc_c', 'wc_w' and 'wc_l' commands.
    
    These commands count characters, words and lines in a file respectively.

commit 714d1b1b2966e7fda30f8b83881498b21cfdc9c2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 09:53:51 2009 +0100

    Implement TEST_ONLY environment variable to run selected tests only.
    
    To run just selected tests, do:
      TEST_ONLY="hexdump mkfs" make -C capitests check

commit 9672eb7aa831031c69d0a30372539e5d8ef188d7
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 09:43:54 2009 +0100

    Add large test files with standard content for the C API test.
    
    Large test files with standard content for the C API test, and
    add a regression test for previous hexdump failure on large files.

commit 8ccab64121775031e31997a9cebf69ab2ebae196
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 09:43:38 2009 +0100

    Todo: RUN_ONLY_FOR

commit f2de03a030fb66b0ffaabc4a8da1ff5cca02f808
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Mon Jun 29 09:39:08 2009 +0100

    Todo: 'wc' command.

commit b40c7ef4c443d1de3a2f7e772abaf693314133ab
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 27 15:00:48 2009 +0200

    Guestfish pipes.

commit 3e59c00260005ca16dd77e3ab2d727d632503644
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 28 13:54:22 2009 +0200

    Haskell bindings: Implement bindtests.

commit ff4e3161ce6d13bfd28e70b354f6c0c2e6e75e73
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 28 13:34:11 2009 +0200

    Haskell bindings: Int and Int64 return types.

commit a54b289236ebb57b2a8ddf7bc8dc6d0197599d20
Merge: a213f5b04 cbcdcfcd9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 28 13:28:30 2009 +0200

    Merge branch 'master' of git+ssh://g-rjones@et.redhat.com/git/libguestfs

commit a213f5b04fa65d555f31ebe0dc45bd62563c7350
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 28 13:27:33 2009 +0200

    Haskell bindings: fix boolean arguments.

commit cfeef29a45149307bda30e81b713bd08dba51597
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sun Jun 28 13:17:23 2009 +0200

    Haskell bindings: Fix integer arguments.

commit cbcdcfcd93901734436b7fed433ecf6e9aad5d4c
Author: Matthew Booth <mbooth@redhat.com>
Date:   Fri Jun 26 11:29:14 2009 +0100

    Clean up XML output
    
    This change makes XML use XML::Writer, and modifies the output in the
    following 2 ways:
    
    * /operatingsystems/operatingsystem/os is renamed to
      /operatingsystems/operatingsystem/name
    
    * /operatingsystems/kernels/version becomes an attribute of
      /operatingsystems/kernel for consistency with initrds

commit 8b2935727a124913d05fc18ceb35c01478eef8bd
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jun 25 17:19:29 2009 +0100

    Make virt-inspector look in more places for module aliases
    
    Specifically:
    /etc/conf.modules
    /etc/modules.conf
    /etc/modprobe.conf
    /etc/modprobe.d/*

commit 5574a4799f79734f21f16741cbbe7974ebba31db
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jun 25 14:33:26 2009 +0100

    Add yaml output for virt-inspector

commit 7b3343d26ea666b993537e735bba5c617eaa264f
Author: Matthew Booth <mbooth@redhat.com>
Date:   Thu Jun 25 10:17:37 2009 +0100

    Make run-inspector-locally try to work out where it is installed
    
    This change means that you can run run-inspector-locally from any
    directory. You can also symlink to it and it'll do the right thing. This
    means you can put a symlink to run-inspectory-locally in your path
    called 'virt-inspector', and 'guestfish -i' will work.

commit 20969356d5c5b29718982bc1b709606d98ef9a32
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 21:18:43 2009 +0100

    More TODO items for future work.

commit ff56282e5e8d050c52262d49f6d203db4b59949b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 20:10:53 2009 +0100

    Allow guestfish -i / virt-inspector on live domains, in limited circumstances.

commit 8cb4c6f074a567d0fd5520fe3e68ae626deb8edf
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 20:04:58 2009 +0100

    Fix detection of optional libvirt support in virt-inspector.

commit f9985a9678a3b2177d5eae4049c4abbc39e785f6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 20:01:41 2009 +0100

    Document the guestfish --version option in the manual page.

commit ffc4e6d7960eae5287872deaa92641620bc34d09
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 19:57:24 2009 +0100

    Clarify documentation for mkdtemp.

commit f737aae89e554d6fa3eb3a4ebedaa953c57e20f5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 18:25:09 2009 +0100

    Generated code for 'mkdtemp' command.

commit c5c03de8ff130b490f92af96048c487ef6734804
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 18:22:37 2009 +0100

    Add mkdtemp command.

commit ba0e9c41f0d1f9dafca43e50339dc7d264346e67
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 17:16:17 2009 +0100

    Version 1.0.53.

commit 6c80eb6930c4b70336d695314a9d5bdccb7d2d39
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 15:36:58 2009 +0100

    Fix libvirt integration in virt-inspector.

commit c167b9dcc79e8bd41aafcd1eeb39e6b068988666
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 15:35:59 2009 +0100

    Fix permissions on generated scripts in the appliance/ directory.

commit 22cd935c206e7ff4c1c33303a0eda7811eb7a337
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 12:41:24 2009 +0100

    Version 1.0.52.

commit 350aae0d2db21e98eff84f196555d0f6a7cea9a1
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 12:15:57 2009 +0100

    Quote command line arguments to virt-inspector.

commit 15d54ffb21311467166eae06ac075334f253fd67
Merge: 765e6bc97 c9c2633c0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 11:55:57 2009 +0100

    Merge branch 'master' of git+ssh://g-rjones@et.redhat.com/git/libguestfs

commit 765e6bc9776cab3700db8016c6d05494702646f9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 11:54:48 2009 +0100

    Added guestfish -i option to run virt-inspector.
    
    You can invoke guestfish with:
     guestfish -i libvirt-domain
     guestfish -i disk-image(s)

commit c9c2633c0cefc4cc0c5e3344e38b3ac1ccd53ed8
Author: Matthew Booth <mbooth@redhat.com>
Date:   Wed Jun 24 11:50:08 2009 +0100

    Fix dependencies in perl so it doesn't always rebuild

commit 4858c6d3c95844370e492f43d214af8d5f466587
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 09:59:39 2009 +0100

    Implement guestfish -f option to allow guestfish scripts.
    
    New '-f' option allows scripts to be written using:
     #!/usr/bin/guestfish -f

commit 07fd6575fe02f939300ee03de018c61ab755dfbe
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 09:56:34 2009 +0100

    Incorrect assignment on glob error path.

commit 2a2cd898c976c958740d881791f127dbc71812de
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed Jun 24 09:45:14 2009 +0100

    Todo items: guestfish options -i and -f.

commit 9cfa03291b5575a6a33493b4689844ff1794700b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 22:02:10 2009 +0100

    Implement libtool library versioning.
    
    Use maximum proc_nr (MAX_PROC_NR) as a surrogate for the
    library ABI version, resulting in version numbers such as
    libguestfs.so.0.<MAX_PROC_NR>.0 for the final library.
    
    Add ABI guarantee to the documentation.

commit 50b357d2279a4c5722b8302aa22d92c7ad0d17b9
Author: Matthew Booth <mbooth@redhat.com>
Date:   Tue Jun 23 17:35:40 2009 +0100

    Make the supermin helper look for any x86 kernel
    
    If you've got a non-PAE kernel installed on an i686 machine, the kernel
    architecture is i586. This change makes sure that supermin finds the
    installed kernel.

commit 5e16fe879902c42c79f4ed0f78816d1c88b15a95
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 15:53:44 2009 +0100

    Generated code for 'scrub-*' commands.

commit 66bab05643a6cd1528c8573b6f696878b2accd3c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 15:53:21 2009 +0100

    Added 'scrub-*' commands for securely scrubbing filesystems.

commit 9d1dc238507db2abdc9adf51277c10c097c2eb68
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 15:52:45 2009 +0100

    Bump up default guest size to 500M.

commit ea37b02d88dcd0b66285ba8eb975dd575fe9377d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 10:17:59 2009 +0100

    Updated Polish translation (RHBZ#502533).

commit 77343a0a465f299877dc2e91ed5e868e879faf59
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 10:07:46 2009 +0100

    Command line argument handling.

commit c9f916353cdc9a0dc92ce8386087b9bfac11305a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Tue Jun 23 08:27:52 2009 +0100

    '-no-kqemu' option is no longer necessary to avoid a warning.

commit c59185f412c7343b93204303713f18560847e0bb
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 17:02:15 2009 +0100

    Version 1.0.51

commit 24bea697366a76e7d1efaefa4935d3c4bc9ba333
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 16:53:24 2009 +0100

    Add whitespace to the init script (no functional change).

commit 7b17ce1707795f92729ddce7329f5fbf29fe3ef4
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 16:43:42 2009 +0100

    Issue MAKEDEV commands in a loop (RHBZ#507374).

commit 3c2115837ba68c8f57ec8b7b5af2adaf484c4039
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 15:07:42 2009 +0100

    Check parameter types in Ruby bindings (RHBZ#507346).

commit f08b9fab296d92575a0a8a44b5f371339bfab7b5
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 14:24:52 2009 +0100

    Improve error message when appliance doesn't match library.

commit 0630873f054950b832ba7dfd4c385266b68fc252
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 14:14:45 2009 +0100

    Missing \n character in Ruby bindings.

commit 82124d8b728d9693cbb441ed26c87627d8ef485f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 12:40:57 2009 +0100

    Make CHROOT_IN/OUT macros should loudly if the syscall fails.

commit d759dc66d6265a4c3d0422684f0c0da30720d7d1
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 12:24:27 2009 +0100

    Include the lsof package.

commit 832a6752ea9797e3809fd82ede499ad311a5ce85
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 12:24:14 2009 +0100

    Check return value from close() call.

commit 577df23eff72f85e4a2fa12b86487ebb5bced8e6
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 12:23:56 2009 +0100

    The 'debug sh' command now uses a real shell.

commit 8912a8ead5cb41db0e8857d0562b23157876b464
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 12:23:31 2009 +0100

    test-boot-realistic rule should boot the rescue shell.

commit f4bced6e48af4902bfec30a18f8b8e976634f13a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 12:23:12 2009 +0100

    Rebuild supermin appliance when the daemon is updated.

commit 1dba155370fb54811f9cb5fbf2db90d3654ec82f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 10:02:11 2009 +0100

    Version 1.0.50.

commit fee6aa9fc14972fd3a9d652b1609b1880a05e214
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 09:35:43 2009 +0100

    Add 'glob' command for guestfish.

commit 88efda295e4b994e6c3c78f76af9927ef3de33de
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 08:20:42 2009 +0100

    Generated code for 'glob-expand'.

commit c946cefc9b00965e030e0f1a51bad470c4491add
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 08:20:32 2009 +0100

    Add 'glob-expand' command.

commit d345faf0f7071c5cc84b9f8904f28fcfa5abde33
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 07:49:50 2009 +0100

    Generated code for 'sh' and 'sh-lines' commands.

commit 0f31339f39d28f4075b25372aa0cdb73dfa57c89
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 22 07:49:37 2009 +0100

    Add 'sh' and 'sh-lines' commands.

commit 308aa2b28794cd321d09cc5a255f5bf4b5238c23
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 20 16:05:12 2009 +0100

    Check return value from waitpid call in command*() functions.

commit c90b05a19484d5bafef98f7eae8c50f338185819
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 20 15:30:39 2009 +0100

    Add strong note about deprecation of functions which take either device names or filenames.

commit 514df8c265f7dcc052bf1ea3a4c151c0f0c45a8e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Sat Jun 20 14:55:49 2009 +0100

    Check return value from pclose.

commit e91b6506d05f5063d49cce5ab0c317c5657a51c3
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 19 19:48:19 2009 +0100

    Update to-do list.

commit c02eb8db65264c0c1317d1bda79c32d2cb2c1e24
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 19 19:48:05 2009 +0100

    Generated files for 1.0.49.

commit 3ff35d54caa6328bc3e71947df9169f784a6862f
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 19 19:28:51 2009 +0100

    Prepare for version 1.0.49.

commit dbfc53eb7106377789c685596fd817840d807f3d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 19 18:25:38 2009 +0100

    Supermin: choose newest available kernel.

commit 4e226c0cd83fb0b38919f553d84fe547872f9d19
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 19 14:47:22 2009 +0100

    Move init script into a separate file.

commit 4ba377b709f3e870993dc2eb9ff2fad6f0e497f2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Jun 19 14:26:44 2009 +0100

    Move distro package list to a separate packagelist.in file.

commit 528b91c54b599b7a55714edcde01087e6bf000eb
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 18 21:06:22 2009 +0100

    Add tab-completion of guest filenames (currently disabled).

commit 8287be71f56e3f3174faca10f1195d4793aa4d5e
Author: Guido Günther <agx@sigxcpu.org>
Date:   Mon Jun 15 20:27:52 2009 +0200

    check for Debian tools

commit b430a4c07a33cfcd11588dd707c9921549232208
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 18 14:37:12 2009 +0100

    Remove unreadable binaries that give warnings in supermin appliance.

commit eb52e4b611a5825db45f5ed9c1adf89a51b085cf
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 18 14:27:20 2009 +0100

    Rename guestfs-supermin-helper -> libguestfs-supermin-helper.

commit d391937ea8a7740505624bee74d03831fe485d6f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jun 16 11:22:31 2009 +0100

    Version 1.0.48.

commit aa42bc11cbb876bae86a3f8ac0a9574e725dc5a9
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jun 16 10:55:36 2009 +0100

    Don't compress the supermin base initramfs.

commit da9e14a20b489ba0585d612f8bf8b64ecfb17bfe
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jun 16 09:56:44 2009 +0100

    Reverse sense of whitelist test.

commit 5d9fa11ed76c0c819a69c84c42af2abd3328e92b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jun 16 09:56:19 2009 +0100

    Fix build_supermin_appliance to return kernel / initrd names.

commit 4c1c10ad8e5808c5f9c011ebe6a85be24bce95b8
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 15 23:06:21 2009 +0100

    Missing files in previous release, so version 1.0.47

commit e8d4687a849c4c81f3cbc74dc00ae24af7440688
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 15 23:02:36 2009 +0100

    Missing files from previous release.

commit 04cae38b4a0baf67a4776c20f626e2bcb29140e7
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 15 22:47:09 2009 +0100

    Generated files for 1.0.46 release.

commit b0ce2c652393dd9b01072de9422599e870c27f9b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 15 22:39:57 2009 +0100

    Prepare for 1.0.46.

commit 8ed77b8234b464b3cf12719a47a218c55d0dfdab
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 15 11:50:35 2009 +0100

    Experimental implementation of the supermin appliance (passes most tests).

commit 61204db171a521dc4b43fce85f9eb94f8164659d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 15 11:37:58 2009 +0100

    Check for febootstrap-to-initramfs --files option.

commit 7d2122e153cdf3d2888fde02eb08f29d1b13e444
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Jun 13 12:58:24 2009 +0100

    Add --enable-supermin option.

commit 79f57353ee815b9ec432dfd8e56e116ada09012b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Jun 13 12:58:47 2009 +0100

    Documentation for the supermin appliance.

commit b760b7b84af9ad99ea75bb4cd9894941b44063dc
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Mon Jun 15 14:45:05 2009 +0100

    Move kernel module list to a separate whitelist file.

commit 124a03fd5cbbc4346a057b2803d831d820fc3ccc
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Jun 13 11:18:54 2009 +0100

    Update status of libguestfs in Debian.

commit c92a3475a60b433575a5fe50249ef537a3a914c5
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Jun 13 11:16:43 2009 +0100

    Remove /lib/kbd (keyboard maps) from the appliance.

commit 415ad690bbd01c2aed16d303744f5f77387362ce
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Jun 13 11:11:03 2009 +0100

    Remove firmware from the appliance.

commit c8d5030fc1e813e97b511fc74ee59f394aa022c4
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Jun 13 10:59:51 2009 +0100

    make.sh calls update.sh directly.
    
    Combine the common tail of make.sh and update.sh so that make
    just calls update at the end directly.  The effect is the same.

commit 0823d52a36ce708695767df3fb93ecdf4cb75ccc
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Sat Jun 13 10:48:16 2009 +0100

    Rename (make|update)-initramfs.sh.in -> (make|update).sh.in

commit c26310d797ea703f3f2abf22592b46e2d41902f0
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jun 12 13:39:32 2009 +0100

    Prepare for 1.0.45

commit d7d40b6ee86fe61822e9ff41587428968c5f3bd2
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 11 17:27:18 2009 +0100

    Add guestfs_rescue=1 appliance option to start a rescue shell.

commit ff210f848ab24f7c7d85aba1ef12fcae45987cb0
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 11 16:57:59 2009 +0100

    Catching hanging qemu in tests (RHBZ#505329).

commit 48234c3c2cf0846d79785b33b79b4480825aa8c2
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Jun 11 16:57:29 2009 +0100

    More TODO-list suggestions and a summary of PPC situation.

commit 6eae32d5cc484e4e227d1fa44eb09e6def973fae
Merge: deb142775 9562ce046
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed Jun 10 15:46:41 2009 +0100

    Merge branch 'master' of git://git.et.redhat.com/libguestfs

commit 5293d77912ac80d1472108e98c3606a35e22b8ec
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 15:45:00 2009 +0100

    Prepare for 1.0.44.

commit 9562ce04696c84d06e7253526e4b283e2439ff90
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 15:31:29 2009 +0100

    Remove obsolete comment from generator.

commit deb14277541d72e5547cff4e20c20a6fda57526d
Merge: 7cfe7b566 d5ddbb4e0
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed Jun 10 15:34:36 2009 +0100

    Merge branch 'master' of git+ssh://192.168.2.134/home/rjones/d/libguestfs

commit d5ddbb4e074a3fddeac84938b3b06e0c62ace670
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 15:31:29 2009 +0100

    Remove obsolete comment from generator.

commit 1a6afb104a67d343a59b8323de996a653f161d8d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 15:31:13 2009 +0100

    Specify type of squashfs filesystem.

commit 7cfe7b566d7d2c170225034ebe9df0ea9fa9e3a4
Merge: e305ad157 4934518eb
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed Jun 10 15:10:03 2009 +0100

    Merge branch 'master' of git+ssh://192.168.2.134/home/rjones/d/libguestfs

commit 4934518eb0aaa73a7a709ffd55587f32ff2918e5
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 15:06:44 2009 +0100

    Allow HFS+, UFS and XFS filesystems (add to kmod whitelist).

commit e305ad157d8d6843e9a585b8d70fba7eb679fabf
Merge: 31bdc7dce d4c4a6653
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed Jun 10 14:32:59 2009 +0100

    Merge branch 'master' of git+ssh://192.168.2.134/home/rjones/d/libguestfs

commit d4c4a665325d96e2b0663924836b6278b12b6214
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 14:29:41 2009 +0100

    CentOS fix: Skip checksum test if no squashfs module.

commit 31bdc7dcee5475452ab414853ecdf535b5e54f3c
Merge: e6cac111d 74e1e6f4b
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed Jun 10 14:23:15 2009 +0100

    Merge branch 'master' of git://git.et.redhat.com/libguestfs

commit b60e4dc837e62edf7b165878a29c4542dbcb0aed
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 14:23:05 2009 +0100

    CentOS fix: skip ntfs-3g.probe tests if no binary.

commit 74e1e6f4bbbf0522fcd0b1f4e4de7e13b7d44f73
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 14:13:34 2009 +0100

    Done: Device independent naming feature.

commit 49811e110859909b90de844473463f6ea7e59f40
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 12:48:26 2009 +0100

    Implement device name translation.  Remove device name hacks in tests.

commit 707f904a1ce5265b1bcd31b8aa518989df4a6e26
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 11:49:42 2009 +0100

    In the daemon, change all const char * parameters to char *.

commit e6cac111d0cf88ab14098eaf8b98357e6a1b8f01
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 13:27:13 2009 +0100

    Fix #2

commit 2719cd61a4e54bfa8f8ad578b5e0a9ff42b297f8
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 13:22:45 2009 +0100

    Fix device tests.

commit 77842f507d2020f3dcc8209cf001669392ac245c
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 12:48:26 2009 +0100

    Implement device name translation.  Remove device name hacks in tests.

commit 9ac94654ef1121fa64a45e6e4d56149747742fd9
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 12:48:02 2009 +0100

    Fix small sfdisk bug.

commit 7e42aba5ab9c8b9d65c40442c8086ff232211a36
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 11:49:42 2009 +0100

    In the daemon, change all const char * parameters to char *.

commit 4552b6a90ccaff23ed083b3dee370a017f9ec4a6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Jun 10 11:11:14 2009 +0100

    Add IS_DEVICE checks for all calls which take a device parameter.

commit e39497fa370c421763ebd74ea58ec379d97af733
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 9 22:01:00 2009 +0100

    Describe the standard naming scheme and translation algorithm.

commit 45ef08414d31b00a3e9ccb133bf40716e0467ac1
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 9 15:21:33 2009 +0100

    Added more to-do items to the list.

commit 5a28ecc961e2b8c2e8ff70301dd9cc5e68e94af9
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 9 11:20:05 2009 +0100

    New website, change et.redhat.com references to libguestfs.org

commit 8441cfcb4c10a834a27adecdb107063a7380a2a2
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 9 10:51:02 2009 +0100

    Prepare for 1.0.43.

commit ec0679064b8e33f09ddc4a9bdf498ddbe7f4e921
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Jun 9 10:33:34 2009 +0100

    Add support for decoding the Windows registry.

commit 9c117272e7239f240a2ff15871d3be1902579481
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jun 8 17:44:18 2009 +0100

    Generated code for ntfs_3g_probe command.

commit ac1b0dae9bba499e3c8e4b4cf13cda9932aba244
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jun 8 17:44:14 2009 +0100

    Add 'ntfs_3g_probe' command so we can probe the "mountability" of an NTFS partition.

commit fe5256af0a8a1a71021d13d31bbb5e53734e12e4
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jun 8 15:54:26 2009 +0100

    Todo: qemu options.

commit 60853a92610ffc08afbe14e1ae73458fa47996ed
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jun 8 15:48:39 2009 +0100

    Add missing documentation for guestfish 'lcd' command.

commit d49e83a612db700c05e8e4e9e6254d24d5d66811
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jun 8 15:46:23 2009 +0100

    More TODO items.

commit 4db6dd4310443af0e813c8c47ef7e4913cfd23b0
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Jun 8 10:01:42 2009 +0100

    Added 'lcd' command to guestfish.

commit da4c82e538d2ea21cb0053aec269d002ebbb2f94
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Jun 6 17:44:01 2009 +0100

    Prepare for 1.0.42

commit be7023428e7806120935fbc8658979010cb1bcf0
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Jun 6 17:34:42 2009 +0100

    Parse /etc/modprobe.conf and initrd to give us a closer understanding
    of what the guest will actually boot on.

commit d885884675d3864e6bf0bd316b6cf99a897a2faf
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Jun 6 13:19:44 2009 +0100

    Added query mode to virt-inspector.

commit 1e5d442c655416dcfee5181ce0ab00ba2cec3478
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Jun 5 15:51:14 2009 +0100

    Modules are *.o in Linux 2.4 kernels.

commit 9e2c5a73f21f37375cbebc677c5713352cc3849f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 4 15:09:16 2009 +0100

    Version 1.0.41.

commit bc6d0ccd6dbd7a463f32f4871b934f9e5f1ebea3
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 4 15:05:23 2009 +0100

    Fix RHBZ#503169 comment 13 (regression) and add a regression test.

commit dff0bea7ba2697dfcccf59a5fa1d61a2a503923a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 4 15:04:05 2009 +0100

    Added regression test for RHBZ503169#c10

commit 954805f2af26aab99dc2ef56885d21f2e3dc4864
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 4 14:09:00 2009 +0100

    Move pure regression tests to their own subdirectory.

commit c6d9dc57df9cc7fdddbb66885136513eacf92053
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 4 14:59:16 2009 +0100

    Generated code for the 'sleep' command.

commit 632ad3f797c934dacca1aa65a8314b8f9e2c3711
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 4 14:58:14 2009 +0100

    Added 'sleep' command.

commit e5b3a5aa5b99ae6135e47f329fb7d3def799690a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 4 11:00:03 2009 +0100

    Prepare for version 1.0.40.

commit 2e9fd510cfa0e4011d1d8809a453eb21166ed8ac
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 4 10:58:28 2009 +0100

    Add missing /dev devices (bug 503169 comment 10).

commit 74651e87b470496715cb2411237f7012bdbbbb18
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 4 09:14:47 2009 +0100

    Generated PO files for 1.0.39.

commit b53fb28e6e9bc935e59973268e5956f70807e1f7
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Thu Jun 4 09:09:25 2009 +0100

    Prepare for version 1.0.39.

commit 9304497cc664edcdc889ff07363606a5d77dda03
Author: Charles Duffy <cduffy@messageone.com>
Date:   Thu Jun 4 08:45:04 2009 +0100

    Use --rbind rather than --bind for bind mounting /dev (to get /dev/pts).

commit d2865cf3689e692c6b6cc0803e0bacc0031553aa
Author: Charles Duffy <cduffy@messageone.com>
Date:   Thu Jun 4 08:44:00 2009 +0100

    mount /dev via tmpfs before MAKEDEV invocation.
    This ensures that /dev can be bind-mounted when running commands,
    as initramfs cannot be bind-mounted.

commit f5b5fa193abc201c52963fc964587730a91ebbad
Author: Charles Duffy <cduffy@messageone.com>
Date:   Tue Jun 2 11:30:26 2009 -0500

    use add_drive_ro for --mount parameters from guestfish when called with --ro
    
    To prevent writes (such as ext3 journal replay) from occuring even when --ro is
    passed, guestfish should use add_drive_ro() for any drives specified on the
    command line with --add if --ro is also passed.
    
    As we need to look through the entire command line for --ro before adding any
    drives, we move the add process out of the argument-parsing loop and into its
    own function, patterned off mount_mps().
    
    Signed-off-by: Charles Duffy <charles_duffy@dell.com>

commit d085cf85fbe650341033dcd0a404101c96b27e30
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jun 2 15:50:50 2009 +0100

    No parallel make in ocaml/ directory (RHBZ#502309).

commit 1d44e50579d7e797b45a8151dcfe4c851202d1cc
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jun 2 14:51:45 2009 +0100

    Version 1.0.38

commit ab4ce2071e663f01c1ea1f2095e1ca5d9792e69c
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jun 2 14:25:25 2009 +0100

    Generated code for 'add_drive_ro' call.

commit 471bff594821ae4977e6acf0c8edc7cb3007661e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue Jun 2 14:24:16 2009 +0100

    Add 'add_drive_ro' call. Fix up documentation. Plus a couple of minor code improvements in the tests.

commit c2d5a9df6465459b0e03f5ad0b7f12c4656c3674
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 29 16:12:51 2009 +0100

    Squashfs recipe.

commit 158a08a2319c8553b9ecc2c8c171f41f53b1f692
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 29 15:30:57 2009 +0100

    Correctly handle malloc/realloc(0)
     - malloc and realloc(0) are valid requests.  Some implementations
       may return NULL for these, which would not indicate an error.

commit 2d803fa820062395b74fdf1c6b3839931980ab13
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 29 13:40:29 2009 +0100

    Prepare for version 1.0.37

commit e04618bc4b1e3e0e4b306229726471091b872357
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 29 12:59:32 2009 +0100

    Use a squashfs attached as /dev/sdd during the C API tests.

commit 88653d4742e0ec90b121b00ef219d202ebfc0ced
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 29 12:15:37 2009 +0100

    Add cramfs and squashfs kernel modules (RHBZ#503135).

commit ab07159dd527179683f0187a4aa52e5108116ae2
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 29 12:14:35 2009 +0100

    Fix the rule which rebuilds make-initramfs.sh.

commit 073665ee176635290abb3dead382c6e708401a89
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 29 11:20:29 2009 +0100

    Fix mkdir-p if directory exists (RHBZ#503133).

commit e9e0c7da473b1df1f124db9d572ceaf53afdd7f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 23:14:47 2009 +0100

    Rerun generator to update tests.

commit 5d46c524907efd0a232c419b2d207d3c41ff5a6a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 22:49:39 2009 +0100

    Version 1.0.36

commit 7cddd8fe7561452419e705dab10df4bf3ef1f6f4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 22:03:18 2009 +0100

    Fix path to COPYING.LIB

commit 097c07cafdcf302e2a9a3dd2b25807f0d8b7bf88
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 21:06:40 2009 +0100

    To-do: Note that we need to finish the bindings tests.

commit 2a0d62d1cef5821da80eaec2a4a44261790e383e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 20:41:12 2009 +0100

    Distribute bindtests.rb in the tarball.

commit 7ac0c95f973f6c8670a47a4b38fd0d33709f7088
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 20:38:50 2009 +0100

    Distribute bindtests.pl with the tarball.

commit 57c3c00da3f9600fa832e953edf689d2144ad04c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 20:28:04 2009 +0100

    Distribute bindtests file.

commit 6e5fe45c20727048e36b7992a4f7313baa565d0d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 20:27:11 2009 +0100

    Fix path to guestfish in test-bootbootboot script.

commit 8e151fc36117beaa1bbeadf0e813eb03fb529c2d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 20:26:50 2009 +0100

    Fix permissions on ocaml/run-bindtests

commit fbf316f2dafb8ea5aa7e3707d7c0911b848f74b0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 20:15:51 2009 +0100

    Add tests for bindings parameters, fix several broken bindings.

commit 3dd6f841eb53f9b16c8dc893a4f91fb1ac83818a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 16:23:04 2009 +0100

    Add the test0* functions, used to test language bindings.

commit a54c0bccee30bcd3a9f6ae638aeb67eb394708c5
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 13:15:34 2009 +0100

    Move C API tests out of root build dir into 'capitests' subdir.

commit 6ca64e68f6484c72686331a5e08595b188bb52ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 28 13:00:31 2009 +0100

    Move the appliance and build scripts into new appliance/ subdirectory.

commit 6de44db9319c5f2de6fd89edb1fba587a5ed7387
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 17:12:50 2009 +0100

    Updated PO files.

commit 6ea18f846631fd0cca019b56bae578c7a8184e9a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 17:11:57 2009 +0100

    Removed contrib/*.spec files.

commit d51ea1432afb8b50afb18cec440f24d97ae3fde2
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 17:04:48 2009 +0100

    Version 1.0.34.

commit 72c02cb2b9490f2de9b6fa6bcf886dc83b9ea160
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed May 27 16:17:13 2009 +0100

    Back to GNU gettext 0.14 for RHEL 5.

commit a4bdd6f6649ff2d2bd1a4244cb15b443a2f4a3a2
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed May 27 16:12:52 2009 +0100

    abs_top_builddir doesn't exist in old RHEL 5 automake, use top_builddir instead.

commit 7fa350fdb062966bab605c01b1209cad260385f2
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Wed May 27 16:11:24 2009 +0100

    Removed these old/obsolete specfiles.  For replacements see contrib/README.  (for Charles Duffy).

commit 100ca93867dc119a990814e37ad838d7868a748a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 13:00:23 2009 +0100

    Version 1.0.33

commit 1644a82c4e58f8c4f80096d89dd1ac0927f74a9b
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 12:46:04 2009 +0100

    Improve javadoc (RHBZ#501883).

commit 8797b0c92e0a64108d21e80767b0d2a360e81b9a
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 12:29:35 2009 +0100

    Guestfish built-in commands auto-complete (RHBZ#501878).

commit a21b59d778b7af2d1265306c13a1cbe348d377b6
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 12:22:00 2009 +0100

    Fix Java configure tests (RHBZ#501885).

commit 08ca9137fa9b589b13dbe4cb4fc8a40606d87618
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 11:48:01 2009 +0100

    To-do item.

commit d85c33522b0f11b037585ff28d4eb2c967e2b079
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 11:40:59 2009 +0100

    README, TODO and HACKING files are now shown on the website.

commit 75ae0310c6b2b89161c3da6ce41456426219c8a6
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 11:33:02 2009 +0100

    Allow more ext filesystem kmods (Charles Duffy).

commit 0372fb3271457829c2f44587a6ff7ee72ccf0902
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 27 11:31:39 2009 +0100

    Improve documentation in README file.

commit fdb0f40d47db727371c8813d742e8f30c8095b14
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 26 10:04:20 2009 +0100

    Fix bug links.

commit c84441cd8bcfac7370e9aa4e81bc5d0c9c9321ea
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 26 09:55:25 2009 +0100

    Version 1.0.32

commit 75b8c5da9ca498db98a8dc66a4fca173eb49fc8c
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 26 09:47:41 2009 +0100

    Added Polish translation (Piotr Drąg) (fixes RHBZ#502533).

commit ea03cbcbc1e186f255098d6bdc97ce8e9aa0ed70
Author: Richard Jones <rjones@debian5x64.home.annexia.org>
Date:   Sun May 24 16:01:45 2009 +0100

    (Commented out) Overwrite /sbin/init

commit 33e914eaa0635fd771604fc7cecbcff7ae9176c4
Author: Richard Jones <rjones@debian5x64.home.annexia.org>
Date:   Sun May 24 16:01:27 2009 +0100

    Print a message when /init starts.

commit 1458c3f7d4632e575689e84f524caa7c49405d52
Author: Richard Jones <rjones@debian5x64.home.annexia.org>
Date:   Sun May 24 13:53:23 2009 +0100

    Small documentation bug in configure script.

commit 3656fa5fa13129f04c0f726bcca6bfe9446cd33f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri May 22 10:52:43 2009 +0100

    In daemon, set PATH, SHELL and LANG environment variables.

commit aaa9fbd95daf612a8dacbff798ee166e2528bc4e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Fri May 22 10:52:28 2009 +0100

    Add 'debug env' command to print environment.

commit f29675128699e12297ff57447ab57ef488a5266f
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 20:32:05 2009 +0100

    Updated POT file.

commit 52e4c912a3d2331cd613dbaeaaa66e414ef0312b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 20:22:32 2009 +0100

    Prepare for 1.0.31.

commit c02830012302a2323448a82239697505f362d029
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 20:21:43 2009 +0100

    Individual tests can be skipped by setting SKIP_TEST_<CMD>[_<N>]=1

commit 76f9592e63dbea8bb745913468ad6e2e2e8f1331
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 19:48:57 2009 +0100

    Updated POT file.

commit 25fc45274635652b52f0ce7fbe78cfbd7bfe4ea0
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 19:36:33 2009 +0100

    Prepare for version 1.0.30.  Reduce boot loop script to 10 boots.

commit 8736502b235c7462059af84c74b01f043f039afd
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 17:16:00 2009 +0100

    Add test-bootbootboot.sh script to EXTRA_DIST.

commit 810abc3a78b77ae57b96d2b547fef0f28efdc423
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 16:31:34 2009 +0100

    Version 1.0.29

commit 042a72791c2486150c11653e8893668b91dce2b1
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 16:18:16 2009 +0100

    Generated code for e2fsck-f command.

commit 2c91eea3869fb9b4adddff8c1f605882f22f703c
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 16:17:38 2009 +0100

    Add e2fsck_f command, and modify lvresize test to use it (RHBZ 502018).

commit 0d2a9ecbb36dcb3a5deb69e518712eb681f4fd13
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 16:03:31 2009 +0100

    Fix pvremove, vgremove, lvremove tests (RHBZ 502007).

commit d07aa0e43ec30031ef14303dea5c46df18693245
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 15:59:11 2009 +0100

    Ignore generated file.

commit c2f9f7358dbbc50ba377949c5ac0e7fc87196893
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 12:45:26 2009 +0100

    Version 1.0.28

commit ad90a23e343282ba8cfcd2e401cd25ef9e914880
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 12:01:36 2009 +0100

    Gettextize the source, make library strings translatable.

commit c79eed04991541a1eb4f049dee62ac1ad684c054
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 10:54:32 2009 +0100

    Intltoolize the source.

commit c49d5968b0910a875816a111a44e8d4b220b2a1d
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 21 10:00:00 2009 +0100

    Bugs have been moved to Red Hat Bugzilla.

commit defb64625f01a53116c6d0aaa665fdb85fbb31d0
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Wed May 20 17:29:06 2009 +0100

    Bug about Fedora specfile.

commit b14e0b0188f369f32119125dd9bc55888ee4879f
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 19 15:25:45 2009 +0100

    To-do list for virt-inspector.

commit 5d46f82d93d2eda05a224a3201b675a893cf6482
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 19 12:34:44 2009 +0100

    Prepare for 1.0.27

commit 7b09bff4ca04c74e95097899b9b355723927462e
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 19 12:29:27 2009 +0100

    test-bootbootboot.sh is a test, not a source file.

commit 50f5a6c4d35531132a8cc7f102819bed519dd029
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 19 12:29:04 2009 +0100

    Skip 'zerofree' test if the command doesn't exist in the appliance.

commit 8eac5b6c2eeefe809dd6ea7f281b16ad5d56c889
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 19 12:21:32 2009 +0100

    virt-inspector now lists installed modules.

commit 1c93b9cda4adfe7d178b1fc1a8c02902ef8500b2
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 19 12:05:43 2009 +0100

    Generated code for 'find' command.

commit d5f82cd07f239d06e42525a064121df04852beed
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 19 12:05:33 2009 +0100

    Added 'find' command.

commit bf6978ec4e30fc500fb99dea41031e1f0ca69684
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 19 12:05:06 2009 +0100

    Fix a memory leak in handling of tar files.

commit 691f6a3630f97619ba839fa1bafe093ba0b77a07
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 19 10:57:55 2009 +0100

    Inspect kernels for Linux OSes.

commit 620007d3212985b8f9074cb1a6c3ad9b6eef005d
Author: Richard Jones <rjones@trick.home.annexia.org>
Date:   Tue May 19 10:57:32 2009 +0100

    Base appliance on Fedora 11 (by default - may be overriden by configure).

commit c8e83e169de1f5f016065a3c3172ab913daa8c70
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 18 20:22:53 2009 +0100

    Generated code for lvresize, resize2fs.

commit 872031a282cbabeeae9baead7b83eafad07109cf
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 18 20:22:36 2009 +0100

    Add: lvresize, resize2fs commands.

commit df2845a0f70567a16a9f960023672a787d9274ff
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 18 17:23:49 2009 +0100

    Version 1.0.26.

commit eff3d08302c0f099f13e849a94615c3f1d5eee5b
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 18 17:16:24 2009 +0100

    Add vg-activate{,-all} commands, and resize recipe.

commit 630c1ceb3bd78ff7f7e1e27fb389e763bddf6c65
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 18 13:59:57 2009 +0100

    Ignore old make-initramfs file.

commit d67b5716137deb48dbea31f034ba3a6391da986d
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 16 08:45:14 2009 +0100

    To-do: Explain the situation with resizing block devices.

commit e6cdff6367e0b1a22ce38abe21752ad1255d3766
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 14:01:28 2009 +0100

    Add: pvresize, sfdisk-N, sfdisk-l, sfdisk-kernel-geomtry, sfdisk-disk-geometry commands.  Pass --no-reread flag to sfdisk.

commit 7bc2be206d3e9773ce4b80b06e3c5a183be6935c
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 15 14:00:41 2009 +0100

    To-do: zerofree done, Haskell bindings need to be completed.

commit 1c6d65c4f85fc64007211d530c80d0e2bc8791a0
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 23:47:17 2009 +0100

    Add support for zerofree command.

commit f8f42b05e6700dddcd8186e971a71e1f903d133d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 21:44:17 2009 +0100

    To-do: zerofree

commit 5c4034fa7437e3c3b560d791ad63c91ca72cb747
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 14:43:53 2009 +0100

    Enable run-time conditional test prerequisites.

commit f0ca140b4b80e4e9965266e2de7895ed059cfdea
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 13:00:12 2009 +0100

    Add test prerequisites.

commit 7eb1ac58ceead560a72d11da87b46ea2bda06cf4
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu May 14 11:20:00 2009 +0100

    Added a couple of bugs related to test code.

commit 0d25fcdc228db4affb7e711c03ec66f25881167b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 13 22:13:49 2009 +0100

    Bugs related to OptString handling.

commit 96378d0f772b85b084a31b79397cdb62615133bd
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 13 18:03:41 2009 +0100

    Don't stash strings in the handle.
     - makes it impossible to write bindings for set_{path,qemu,append}
       functions

commit a4260fd5db2ed390c9d790a80d5a8eb8fa39839e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Wed May 13 17:51:14 2009 +0100

    Add 'append', LIBGUESTFS_APPEND to set additional kernel options.

commit cbbe07b0cdf788300d13fe300d43c0739e12be6b
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 13 15:55:26 2009 +0100

    Allow number of loops to be set on command line.

commit dcc3c318fb531996d80ea362c665d492b4211cf7
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 13 12:56:32 2009 +0100

    Tidy-up of test script.

commit 074d84e42c6a5f99440b79cb5b705cf6160f9cbc
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 13 11:44:11 2009 +0100

    Exit early from script on error.

commit db74c71adc4ab85955b4cd43b43eb607a96cff7a
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 13 11:43:21 2009 +0100

    Increase the wait time for vmchannel socket to appear (fix for slow / heavily-loaded) machines.

commit 9e9914552657877d0ad4b029949bbb18b3e51ee6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 13 11:16:24 2009 +0100

    Test booting repeatedly to track down qemu boot hangs.

commit 15ed1d8beec47a5fe09e20c98272ab0de1806281
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 12 17:56:36 2009 +0100

    Version 1.0.25

commit 0d2a8c83c7f9bd5d712dc69f3efaf9fff479f72e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 12 17:55:33 2009 +0100

    test-command is not an actual test program.

commit aeef3ec94c1d14dd0b716de95b6a4c73d96649a7
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 12 17:24:45 2009 +0100

    Prepare for version 1.0.24

commit 571095cf3bacaedc6860fd6fcaad23ce48074603
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 12 17:17:19 2009 +0100

    Refactor line splitting code in the daemon, and fix it so it works.

commit 8917d17fff8c6e3e789e579ebdaac146d0c3b056
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 12 17:16:59 2009 +0100

    Test the 'command' and 'command_lines' functions thoroughly.

commit dbd6a40d7e40d8757143780ead60a8894a32d9ca
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 12 15:04:43 2009 +0100

    Remove Perl from appliance - fixes large appliance problem on Rawhide builds.

commit 2e6cba995ff3c85c82a299760cae6e11e43f895e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue May 12 12:58:45 2009 +0100

    Remove the specfile from the tarball.  Include contrib/ dir.

commit 396c3e069749dc2842b2ac1c4b1e63f47a9e8936
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 11 16:44:07 2009 +0100

    Version 1.0.23

commit a276a1643835821b19214563d46234e48677e345
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 11 15:43:00 2009 +0100

    Depend on new febootstrap 2.0, and use febootstrap-install.

commit 0bf5c5ff7f842af31629989eb47e6310dc4cf807
Author: Richard Jones <rjones@redhat.com>
Date:   Mon May 11 10:51:21 2009 +0100

    Perl bindings fix: Not enough memory was allocated for array params.

commit 71b306ff16c76566a7b71d779b29065409a2b216
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 9 17:19:24 2009 +0100

    Partial Haskell bindings.

commit d3368f6bc060dea25b8f02f9b47145507c65b901
Author: Richard Jones <rjones@redhat.com>
Date:   Sun May 10 13:51:51 2009 +0100

    Handle EINTR, EAGAIN in select main loop.

commit d0edb75f979af6b3aebae0010a802a3fc9bbed4c
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 9 15:37:40 2009 +0100

    Note about using FUSE / mountlo code.

commit d7acc3a1ceefa59689c473120abcf9c20357b6aa
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 9 13:52:24 2009 +0100

    Version 1.0.22

commit a272853fa2c2a72c8d83611515b8547bd20b4141
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 9 13:43:15 2009 +0100

    Valgrind now implemented - remove from TODO list

commit c45959f56096db94971a74d6fa7be41eaefac6a2
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 9 13:40:31 2009 +0100

    Add 'make valgrind' target to run tests under valgrind.

commit 54a716eeb6c79a681870b2cdddd7d054ac74cd40
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 9 13:31:08 2009 +0100

    Fix four memory leaks in guestfs.c revealed by valgrind.

commit 54898d2d4f6f1dd81ccbfb52eb58163f8ddc9f5c
Author: Richard Jones <rjones@redhat.com>
Date:   Sat May 9 13:30:40 2009 +0100

    Fix memory leak in error return path.

commit cee54b4c7bfa7488f6692bb7946815c24ca43a9b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 20:16:03 2009 +0100

    Experimental febootstrap install script.

commit 469fcd9804c375071676a7bef86872b2e09c819e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 15:49:42 2009 +0100

    To-do: Use valgrind.

commit 12bbcda70dd0b737e4ff9f2338557fc8850050cf
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 15:49:34 2009 +0100

    Bug: Segfault in Perl bindings.

commit 577afc9e98e87711e06ebe9e5e1eb9d0affd47f7
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 15:48:02 2009 +0100

    List installed applications (NOT WORKING).

commit ca0137dd63466a18663f5c7543b58c12cefd0c2f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 15:20:36 2009 +0100

    Generated code to support last 3 commits.

commit 3927e2cdcea76e02ab71684d551a1308ff033f64
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 15:20:20 2009 +0100

    Add test script to test recovery from qemu failure.

commit 6e0848998901a12565ac092fe1611aec775eda45
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 15:19:51 2009 +0100

    Implement -command (to ignore errors) in guestfish, and allow recovery from qemu process failure.

commit 09960633340aa006d1e6ed6923f431e9517586d8
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 15:19:03 2009 +0100

    Allow recovery from guest failure.

commit f8d6cd5805512a41d60d8630290e97f7051966da
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 14:28:03 2009 +0100

    Generated code to support previous 2 commits.

commit d9baeeed23f00ab356247b93e836e3ecc5179f64
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 14:27:47 2009 +0100

    Implement 'strings' and 'hexdump' commands.

commit 7a7b7286435f4219077b6b61b23d64bac72d77bf
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 14:27:02 2009 +0100

    Bug: write_file doesn't work with strings containing ASCII NUL.

commit decb9277c802c25f62a5e6424072dedf93658fbb
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 11:37:42 2009 +0100

    Note another bug found when testing on Koji.

commit 7924870487fc94e07403e74f23bcde1d58d7e878
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 09:29:20 2009 +0100

    Missing BRs in spec file.

commit deb2122f594c3b12d39a72b02b41b6ea7f66bbe4
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 08:50:27 2009 +0100

    Version 1.0.21

commit 163f165be81a6e0c2f6f9dc667286f6a73740301
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 08:44:34 2009 +0100

    Change memory calculation to choose a generous amount of memory.

commit 74499f0811d6299685469884556d0e497966b978
Merge: 770de7020 dd805bac7
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 08:40:49 2009 +0100

    Merge branch 'master' of git+ssh://192.168.122.141/home/rjones/d/libguestfs

commit dd805bac773f82567ca10682fd0afbed0ddaa502
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Fri May 8 08:39:05 2009 +0100

    Added RHEL/CentOS example spec file.

commit 770de7020206fe5cfa123bd992f4057d39b3e642
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 8 08:32:26 2009 +0100

    Force qemu quit when kernel panics (Charles Duffy).

commit 8638a60575eb74ff7046c9c35bcb441540869536
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 7 21:39:37 2009 +0100

    Update date in changelog line.

commit 432fb39eb7a6dd7e801cbcfa35e3a1cfef6f0ad0
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 7 21:34:08 2009 +0100

    Update %changelog in the specfile.

commit d6129f17ae4c36344056ebf7c05ba12af7a82f8f
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 7 21:29:08 2009 +0100

    Prepare for version 1.0.20.

commit 57cc1b5c9c8ad908981640b87c228cc4d4ee3c7c
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 7 21:21:32 2009 +0100

    Fix leak in realloc failure (Jim Meyering).

commit 64eb3cf9af82c484f30de8fd48a78749446f4463
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 7 21:10:01 2009 +0100

    Use unsigned type for lengths.

commit 9929310827358c8aefa56e8e15b321d822a21ff9
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 7 21:01:02 2009 +0100

    Handle EINTR and EAGAIN in reads.

commit 9c8ebfa410ea1b2859f7bfb8b055f472bcb982c6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 7 20:52:33 2009 +0100

    Specify prototyping behaviour for Perl XSUBs.

commit c4c889f71f2c72e9664146441803a9ebfe931305
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 7 19:28:21 2009 +0100

    Create daemon/m4 subdirectory if it doesn't exist already.

commit 7d5de73639d8e5f96629f1a42573fd209b9e6ecb
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Thu May 7 19:19:49 2009 +0100

    Set mandir (as in RHEL 5).

commit 773a17f67fb1e8dc374a6002bcb70429c3cff950
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Thu May 7 18:51:34 2009 +0100

    Version 1.0.19

commit 3ec317632c7eb704648c216e50680586db044b58
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Thu May 7 17:24:02 2009 +0100

    Misc changes to make tests pass in RHEL 5.

commit 45f27e502426d15396686ba09d85bee4c3b763d3
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Thu May 7 16:58:49 2009 +0100

    Include /usr/sbin on the $PATH (for RHEL 5).

commit dbe3d3a46bf341ad11e697faf47f03c959fc584a
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Thu May 7 16:58:31 2009 +0100

    Need to keep and modprobe dm_mod module for device-mapper support on RHEL 5.

commit 0aba1970c036aad593aaacb652b203d2d606a189
Author: Richard Jones <rjones@centos5x32.home.annexia.org>
Date:   Thu May 7 16:57:55 2009 +0100

    /dev/hd* is also a block device on RHEL 5.

commit 6af1c66c12aa5f1450806474fb58f099b8f91ed6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 7 16:05:50 2009 +0100

    Add BR on ncurses-devel (needed for RHEL 5).

commit 561820d4fce2a283ec6aa6061042739542aa8268
Author: Richard Jones <rjones@redhat.com>
Date:   Thu May 7 15:51:02 2009 +0100

    Augeas is now completely optional.

commit 57e9e922dbad3795e63e8eb88b2a8aa55c4b026a
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 6 20:46:17 2009 +0100

    Added TODO item.

commit 2d8be4024295540e355a528528519ede916e62b9
Merge: 96285c03a 04acc218e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 6 17:55:46 2009 +0100

    Merge branch 'master' of git+ssh://rich@hakodate/home/rich/d/libguestfs

commit 04acc218e987f6ce89c1205a0ec8f23143f74cd9
Author: Richard Jones <rich@hakodate.home.annexia.org>
Date:   Wed May 6 17:55:18 2009 +0100

    Note bug about chroot not found.

commit 96285c03ac563f867491bb027c74b997352932d9
Author: Richard Jones <rjones@redhat.com>
Date:   Wed May 6 16:33:26 2009 +0100

    Note Augeas support should be optional (TODO).

commit d03dbc4b335044d56a18851d185a65b1f28aa4e2
Author: Richard Jones <rich@hakodate.home.annexia.org>
Date:   Wed May 6 15:29:01 2009 +0100

    Fix missing futimens bug.

commit 678528cfa3cbe1e7727b64bfbbc0bf60f467ace1
Author: Richard Jones <rich@hakodate.home.annexia.org>
Date:   Wed May 6 15:21:46 2009 +0100

    AC_CHECK_FUNCS for multiple functions.

commit de0258ebfd7991163b85f523b889a875a728bff6
Author: Richard Jones <rich@hakodate.home.annexia.org>
Date:   Wed May 6 15:20:15 2009 +0100

    RARRAY_LEN macro for Ruby < 1.9.  Small strictness fix for OCaml < 3.10.

commit e621c284c0f6df4d0eedae5229c8d05fea3ded7a
Author: Richard Jones <rich@hakodate.home.annexia.org>
Date:   Wed May 6 15:11:40 2009 +0100

    Backport CAMLreturnT for OCaml <= 3.10

commit bcbfbaaf3796a741a165837d0f7cd1f3f3e2149c
Author: Richard Jones <rich@hakodate.home.annexia.org>
Date:   Wed May 6 15:08:13 2009 +0100

    Missing include <ctype.h>

commit 74b45c51690a87d6d580589b27e628d5f59d3667
Author: Richard Jones <rich@hakodate.home.annexia.org>
Date:   Wed May 6 14:52:15 2009 +0100

    virt-inspector configure bug.

commit 6c62ba5e272c0d06a2a02bf76aef68ede3587547
Author: Richard Jones <rich@hakodate.home.annexia.org>
Date:   Wed May 6 13:07:58 2009 +0100

    Added bugs noted by Charles Duffy.

commit 22a7b24a98ec22df16297f349563b4bdd159c200
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 19:00:22 2009 +0100

    Another TODO item.

commit 07107a01034f12a227060f7d3f51ca6439408224
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 18:51:15 2009 +0100

    Typo in documentation.

commit 9f173ff42955ef68031c86234615f609d0e1bd2b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 17:41:28 2009 +0100

    Implement !local in guestfish.

commit 113d657bdb6c0ea52f548bc4be39239f2bdd61c1
Author: Richard Jones <rjones@redhat.com>
Date:   Fri May 1 13:10:47 2009 +0100

    Version 1.0.18

commit 3ff76ed0a4e058e1ac593443f4663f0a62be4b43
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 12:16:08 2009 +0100

    Generated code for 'equal' command.

commit 58f814e0948983128e30c4aed2ddb2860051148a
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 12:15:58 2009 +0100

    Added 'equal' command to compare files.

commit e7426e66d4c4e08a9ad5c4fe955a49dce3347675
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 11:47:31 2009 +0100

    Generated code for ping-daemon command.

commit 35079e236e44e23385828710aac266b0b1dee314
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 11:47:23 2009 +0100

    Added ping-daemon command.

commit 63215bc59e499c78381745cfe82d406c5e9e998b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 11:27:52 2009 +0100

    Generated code for dmesg command.

commit 555d4400f5b01b7a3ce6d1dd98cdee43bb2eb998
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 11:27:32 2009 +0100

    Added dmesg command.

commit b19419a2b9dbe442d5dd8d87afed97b028d39582
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 11:18:53 2009 +0100

    Generated code for drop-caches command.

commit 20efd8c7a77ba5be79effd5a3423b169d148c5a6
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 11:18:44 2009 +0100

    Added drop-caches command.

commit ab604f4a7d2b91c5cf4edec213a2b6140a0a233e
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 11:00:46 2009 +0100

    Generated code for cp, cp-a and mv commands.

commit 68cf1b2b07e56416ca029960d16c7e19a0ab912b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 11:00:34 2009 +0100

    Add cp, cp-a and mv commands.

commit eaa3937e614df34f3e4cde2c107a82f4a6f22487
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 10:59:51 2009 +0100

    Always look for qemu-kvm, even on non-x86_64 platform.

commit ac05980e4614010a5d8503a1114e49ab86877c2d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri May 1 10:11:12 2009 +0100

    Check fakechroot >= 2.9

commit f526690e1ec115203e8ddbbdfed5ca681fe84a82
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 23:39:31 2009 +0100

    Version 1.0.17

commit 0625791912f5195f0c45e84ba35f5aca0732117a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 23:10:22 2009 +0100

    Generated code for grub-install command.

commit 428caf0c21fdb1b801452733fb4deabb67623fe3
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 23:10:15 2009 +0100

    Add grub-install command.

commit f0ceb4b0acf77eeae45e3db9ffea87a5f7998c90
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 22:39:36 2009 +0100

    Replace rtl8139 network card with virtio-net.

commit 6aeb11a00d2471e0507bbea2136da0accdda8cdb
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 21:29:40 2009 +0100

    Add documentation for the 'edit' and 'echo' commands.

commit 0b9c91cf7f5d1a55c8db599fd9cf33aa214a2825
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 20:11:04 2009 +0100

    Added guestfish 'echo' command.

commit 3b985158fb61c32b105863d9e196b469f471982d
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 19:53:52 2009 +0100

    Added a comment syntax to guestfish (# ...).

commit 61a3e8cfe4064d792ad5de7bac86a8a3fd4e3470
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 19:44:28 2009 +0100

    Prepare for version 1.0.16.

commit 7a0f3e4a8c70f8adbcc0dff6c72f83407c719f48
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 19:32:58 2009 +0100

    Added notes to the 'fsck' command documentation.

commit b08e569b10897fdaa4a2e5efed210f5093df303e
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 19:28:54 2009 +0100

    Added 'zero' command to wipe partition tables and superblocks.

commit 226ce9e00df2bc3b2644f6bd14216b8c1c4ec75e
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 19:28:08 2009 +0100

    Correct the path to /sbin/fsck.

commit ac3d5807f28181c0dab56c4f5c76d164d5f52678
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 18:59:02 2009 +0100

    Enable parallel builds (Jim Meyering).

commit 87e907244c3f7048c6bf00c29a9cdba9b535c432
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 18:57:07 2009 +0100

    Add generated code for 'fsck' command.

commit ee7ee7ff0b02d81baf6414bd79359bca265d43a8
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 18:56:55 2009 +0100

    Added 'fsck' command.

commit 514b293be7c28f0d20d3beea85c3c882ab199bc0
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 18:05:13 2009 +0100

    Bind-mount /dev, /proc and /sys into chroot when running commands.

commit 137efd9708c1db5c58ef2d984671a37af965d27f
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 17:34:23 2009 +0100

    Autosync now runs umount-all; sync

commit f15e78ce22ffd68949189ae34ebf56eff390face
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 17:23:57 2009 +0100

    Fix umount_all command so it unmounts filesystems in the correct order.

commit df30660b52e13be46d8478881c64a1b36551a117
Author: Jim Meyering <jim@meyering.net>
Date:   Thu Apr 30 15:55:58 2009 +0200

    build: don't tell "make clean" to remove my '~' backup files
    
    Hi Rich,
    
    automake's policy on what to remove via "make clean" is reasonable:
    if running build rules creates it, then "make clean" can and should remove it.
    However, even if build rules happen
    to create backup files, please remove only the specific ones
    they can create, not all of the ones in a directory.  Just in case
    someone relies on those and expect them to hang around...
    
    >From 1e8be391ac17b4ddcf9671e8413d2660844e6993 Mon Sep 17 00:00:00 2001
    From: Jim Meyering <meyering@redhat.com>
    Date: Thu, 30 Apr 2009 15:47:52 +0200
    Subject: [PATCH] build: don't tell "make clean" to remove my '~' backup files
    
    * Makefile.am (CLEANFILES): Don't remove '~' backup files.
    * daemon/Makefile.am: Ditto.
    * examples/Makefile.am: Ditto.
    * fish/Makefile.am: Ditto.
    * images/Makefile.am: Ditto.
    * inspector/Makefile.am: Ditto.
    * java/Makefile.am: Ditto.
    * ocaml/Makefile.am: Ditto.
    * ocaml/examples/Makefile.am: Ditto.
    * perl/Makefile.am: Ditto.
    * python/Makefile.am: Ditto.
    * ruby/Makefile.am: Ditto.
    * src/Makefile.am: Ditto.

commit 1511c425cd8c23c86c216248f7cd488825fb8a15
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 16:09:50 2009 +0100

    Safer way to copy RPMs in no-net builds (Jim Meyering).

commit 31a2feee794c49e95cf0d930b8c7c4a05474179a
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 15:43:11 2009 +0100

    Updated the generator so it only overwrites files if they've changed.

commit a34706ffd5fc3e97c2af07a2f8a025715ef155c1
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 14:20:07 2009 +0100

    Correction to 366a86fb6097ab0f704443f0a6ae2addbc3745d5:
      The code in fish/completion.c is generated, so update the generator instead.

commit 04f46cccac2ad6a7de58761483ca0e734c3e3612
Author: Jim Meyering <jim@meyering.net>
Date:   Thu Apr 30 14:34:02 2009 +0200

    * fish/completion.c (commands): Declare with a 2nd "const".
    
    It's a const array of const strings.
    
    >From 70c53d3169ae53fc4874e00975893d33387c51e6 Mon Sep 17 00:00:00 2001
    From: Jim Meyering <meyering@redhat.com>
    Date: Thu, 30 Apr 2009 14:33:01 +0200
    Subject: [PATCH] * fish/completion.c (commands): Declare with a 2nd "const".

commit c809aeb05d875a90f0c8b5a24f0b7afce94724e7
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 14:15:00 2009 +0100

    Use AC_PROG_CC_STDC because we really need an ISO C compiler (Jim Meyering).

commit 36514a9968b8e33b287c3d7fa41faa71aec9b6d3
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 14:01:53 2009 +0100

    Use safe_malloc and/or check returns from malloc (Jim Meyering).

commit a151e257c4562e308aa74b8c58a379abd942b199
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 13:36:26 2009 +0100

    Fix unchecked malloc (Jim Meyering).

commit 7ec045b6611cf7bcc6cbabf29603227b67905589
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 13:36:06 2009 +0100

    Fix unchecked malloc & realloc in 'commandv' func (Jim Meyering).

commit 6adc02458e1caa3d4a4066655d3eb4239d1cd7f1
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 13:35:36 2009 +0100

    Check return value from realloc call (Jim Meyering).

commit bf2bed7e19c3d8a1c5409a1eda657d7b59536a08
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 30 13:02:29 2009 +0100

    Rename tune2fs.c -> ext2.c

commit e87c76972edcc1e05b4a4dcc01ab33bc8d866e3f
Merge: d146b3662 bed171e52
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 22:44:59 2009 +0100

    Merge branch 'master' of git+ssh://g-rjones@et.redhat.com/git/libguestfs

commit bed171e52fb3abccf572260d616e1ed121516eb1
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 22:06:27 2009 +0100

    [PATCH] add dependency to ensure make-initramfs.sh is rebuilt when (Jim Meyering)

commit d146b36626db9ef88733ed468f51d636d0008438
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 17:44:10 2009 +0100

    Resync with proposed Fedora specfile.

commit 6efbd8b30b5595bfe1290f2337d04f78a5f3386b
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 17:37:59 2009 +0100

    Build virt-inspector HTML for the website.

commit 85905974261909ae21d898104c2a1533fa48db04
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 16:06:02 2009 +0100

    Prepare for 1.0.15.

commit 030b5823ae7127ec854182924668d4f61c404d7f
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 16:04:12 2009 +0100

    XML output.

commit 915b2baf476cd3e643a2207a3b617cf19cdbd701
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 15:15:56 2009 +0100

    Perl output.

commit 6e7b0ea7499c16328ef862264c84efda5dd3ce90
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 15:08:26 2009 +0100

    --fish and --ro-fish options working.

commit 6ceed4c5811bce4f91c7c476c362d7fa9499ef22
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 10:04:27 2009 +0100

    Added virt-inspector program from virt-v2v.

commit d4def9921467aa422e2eb116c5e046b3942df8a3
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 11:39:27 2009 +0100

    s/builddir/top_builddir/ (Luciano Miguel Ferreira Rocha).

commit c70e8a9e05011228d21b85a219532affa800c922
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 28 09:59:35 2009 +0100

    Fix perl hanging during configure (thanks to Luciano Miguel Ferreira Rocha).

commit 4a32f39cb4a9d7dcf79fe2dd10d8789cad3d34c5
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 27 13:41:59 2009 +0100

    Generated code for ext2 UUID and label functions.

commit a50da89e7315b606c2b730fe3d1efac0d92d4888
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 27 13:41:30 2009 +0100

    Functions for getting and setting the ext2 UUID and label.

commit af2d70ab096cd9ea1f9ad7d969f2901aeea95fd5
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 17:59:35 2009 +0100

    Version 1.0.14

commit f5a4bf09b9955b09c078cb124da1b5ba0137e92b
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 12:11:23 2009 +0100

    Add --version option (show version) to guestfish.

commit 1a7e2fddf963294ad75dbebc0ad348b9f756d00e
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 12:09:06 2009 +0100

    Added the --ro option (readonly) to guestfish.

commit a6ee4179f18c7545fd17b2f229e31452c18c3b44
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 11:15:57 2009 +0100

    Update BUGS with latest status.

commit d7474fff18dcc7586c7e8774cbab136163a691f2
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 11:11:48 2009 +0100

    Get ready for version 1.0.13.

commit c67bf8daad5c2f8199fc8441c3dcea2e3efbcc30
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 11:06:47 2009 +0100

    Multiple callbacks during file transfers could cause data corruption - FIXED.

commit aed42ed6316a03f0179c0e0a542938c36a4e2af0
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 10:43:07 2009 +0100

    Check for multiple callback in RPC code.

commit d070f1ef3b5a77de1c8610ddea36b188c70577c5
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 09:52:42 2009 +0100

    More checks.

commit eec6a7e90c157999853918b32322984b7d689f50
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 09:52:13 2009 +0100

    Include UTF-8 NLS.

commit 7ccc06e5c86493444ec43e761bc43583e02ddca4
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 09:51:48 2009 +0100

    Use ferror to check for error conditions in pipe.

commit 709a4c261c7eb4ffc6092766fef644c168fc562a
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 09:51:30 2009 +0100

    Carefully check return values from xwrite.

commit ebc55842e2753c732e4ee8c2189489906c0ac33f
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 07:05:12 2009 +0100

    Don't echo output in scripts.

commit 01c11306e616ee7425c11ae45b640aa9246bbd73
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 06:48:31 2009 +0100

    Added rpmqa example.

commit a12041163ff2ad158967fa8912cb21bf2da7fc55
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 26 06:34:54 2009 +0100

    Document qemu wrappers.

commit f618005f2451a1a4ef1a75fb45bb4e95d5520da5
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 22:59:19 2009 +0100

    Documentation fix.

commit 8471dcc06cd9856057b3417fcc56ee517428093d
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 22:56:57 2009 +0100

    Note about bugs.

commit 33cb85be1d01f69c5fe17953bad8a85b324ab3b8
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 22:56:42 2009 +0100

    Clean up *~ files in recipes/

commit 862748a98957954ba5bb58585d40266e078243f6
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 22:56:34 2009 +0100

    New recipe: iso2tar.

commit e8d5648018f7063ce5e21be5a0e6cf3a4ed6179f
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 22:43:24 2009 +0100

    Include UDF driver (for CD/DVDs).

commit b1459ce8f76d4ada97321e10d84fc2f880323101
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 22:06:04 2009 +0100

    Include the right RPMs and kernel modules for NTFS & VFAT mkfs and mounts.

commit 247c302b636eb42e5ae0401f44ad0fa55d100bdd
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 21:41:09 2009 +0100

    Generated code for lvremove, vgremove, pvremove.

commit e9cfb1af46b44b43bbc01f64e7cbf966f592f10e
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 21:40:50 2009 +0100

    Implement lvremove, vgremove, pvremove.

commit 7f1771f531260616425c519fcb6931a1fee7fce1
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 18:28:24 2009 +0100

    Better generation of recipes page.

commit 7bcecff629001d3581fae6bd7f0a21350b991d35
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 12:36:45 2009 +0100

    export2tar recipe

commit 4eaa2913d4f37b7fc71ca67dcfe29c2085b9f67f
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 12:20:15 2009 +0100

    Improve CSS on recipes page.

commit 132df226d50bdf046ed4e01113183a0a7e5784c2
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 11:34:18 2009 +0100

    Added guestfish recipes.

commit 7d5d5be5b75565b6c4ee207af8adaeed05c43142
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 10:38:39 2009 +0100

    If LIBGUESTFS_PATH is set, guestfish shouldn't modify the path.

commit 698950dcad39abad6004249e3b3186a1b46fb4c6
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 25 08:36:52 2009 +0100

    Added configure test for qemu vmchannel support.

commit 652acbc54df0e0e96c5f634539e1259160c04973
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 24 23:17:07 2009 +0100

    Experimental recovery process should help with not cleaning up qemu.

commit 9073cb0ad5c7b2ddfb743155e8ebee81bf5408bd
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 24 22:26:50 2009 +0100

    Remove the debug mode from make-initramfs.sh.

commit b7a5a938fc656da0622a654ea208e35a22aceccb
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 24 19:03:18 2009 +0100

    Add support for ext4 to examples/to-xml.c

commit 1c7c55d7ff627a80a8357cc4cb6dbde61f8d0bdc
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 24 18:33:06 2009 +0100

    chmod /sysroot (also makes it known to fakeroot)

commit 11a910112eef17d2f1900fae480c53789ec094b3
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 24 14:52:49 2009 +0100

    Resync specfile with proposed specfile in Fedora RR.

commit 883d3b458a813f11ee422ade43fcbeccfec4e70b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 24 14:31:38 2009 +0100

    Ruby bindings didn't NULL-terminate an array, resulting in segfault.

commit a4fa5b7a5ff18ceeaf1dbdfb240610c136c09b8c
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 24 14:29:58 2009 +0100

    Added bug about qemu not being cleaned up after segfault.

commit 7bddee09354cbf4ca8f421839b40f71065639bf0
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 24 13:19:21 2009 +0100

    Get ready for version 1.0.12.

commit 5a9c400e90a2a21e5c90a795ad3934641360729b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 24 13:15:49 2009 +0100

    Don't allocate file chunks on the stack.

commit a7f5d5a86053a7a734deb9023ba9cbcb9cf4df87
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Fri Apr 24 13:00:49 2009 +0100

    Don't use large message buffer on the stack (fixes Java/i386 segfault).

commit ef23042dd438a9f231c852ce8e745641d15d8822
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 23 20:08:29 2009 +0100

    Fix 64 bit memsize overhead.

commit 9f79e8590bb9abb72bedc7c114f759c3da659b66
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 19:33:00 2009 +0100

    catsprintf leaks, use open_memstream instead.

commit 1c09e390a4868fd5b9728219848c41efb4ba5591
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 19:23:52 2009 +0100

    Remove the 'debug mem' command, it's never going to work.

commit c7e0951fdd7b2c9e79b8b33e4935e523008da874
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 19:23:33 2009 +0100

    Reduce the amount of memory allocated to guests based on some testing.

commit 9cbe1b2f9996e1bbd4f87a624ed84629d87fb024
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 18:52:34 2009 +0100

    Implement 'debug sh' and 'debug fds' commands.

commit 2b9ae46dbb5854676b9aa6b7cdc9885833ce9b34
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 18:52:06 2009 +0100

    Implement extensible strings with catprintf.

commit f88cd89f526fbd28721b9dbb255e0eb421d13e92
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 18:51:12 2009 +0100

    Use AC_GNU_SOURCE in daemon.  Don't need _GNU_SOURCE in C files any more.

commit 9e1765b89d74522f32087c7007f1c9cc6af42386
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 14:47:06 2009 +0100

    Fix buffer overrun in guestfish command-line parsing.

commit 2488df3f0ae545a0de2e8198b4aa25f6bfdb7443
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 14:39:31 2009 +0100

    Generated code for debug command.

commit 9c3852e0445917dc07cdeec3ad58f0bbc92f743d
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 14:39:18 2009 +0100

    Add outline of 'debug' command.

commit 694a4fabe7721ee14c3fd661e6e14e1484273213
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 11:47:06 2009 +0100

    Automatically generate ChangeLog file from the git log (thanks: Jim Meyering).

commit 9ec35b1d6a72064ec7795a9ae8fb3ac62a3ab8d9
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 11:32:53 2009 +0100

    Substitute '-' in command names in guestfish documentation.

commit 8b68cd8f4ce3393bb9410ba7a7e12a645a4b869b
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 11:11:35 2009 +0100

    Fix Java tests by passing correct library path to JVM.

commit 75c6df4a02cdfdd66598c79e77dd50f87ca27a75
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 10:54:27 2009 +0100

    Configure script tests for Perl modules.

commit 4f3c6243c3ee8a096c1f7f8b9e6f92906908bb4b
Merge: 04e51e286 97a48b2bc
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 10:32:31 2009 +0100

    Merge branch 'master' of git+ssh://g-rjones@et.redhat.com/git/libguestfs

commit 97a48b2bc6c82a35b84c8675eceb5eee2573c968
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 23 10:28:28 2009 +0100

    Avoid a cast warning on 32 bit.

commit 04e51e286ce72d0a3a0877e72df3932c149205ec
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 23 10:19:33 2009 +0100

    Instructions on running KVM as non-root (Robert P. J. Day).

commit 4218ff02847a65705cd6b27b7fd72b9e5e87a119
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 22:01:08 2009 +0100

    Version 1.0.10

commit 3dfed15a31e908ad0bc48bd3a59f27596b0f9b9e
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 21:02:49 2009 +0100

    Generated code for new mount_* commands.

commit 2862dad156dae8fc6685701615ec060a90aa9a24
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 21:02:15 2009 +0100

    Add mount_ro, mount_options, mount_vfs.  Fix small bug in OCaml generator.

commit c24e59bbf121f43e550f88e63724ab3c6113517c
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 19:17:29 2009 +0100

    Get ready for 1.0.9.

commit 6f4344e28dc8c2b084c497f119475483c1eff99a
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 19:15:11 2009 +0100

    Force a specific network NIC model (allows to work with latest qemu from SVN).

commit 534b1aec76e89468c6b2feb84ddef0f67bf42630
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 15:27:42 2009 +0100

    Fix infinite loop encountered when reading Windows disk in example program.

commit 3c67fbb9b4604f6b8491fea00bf2ad7258b014aa
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 11:47:07 2009 +0100

    Added pkgconfig file (libguestfs.pc).

commit cf430251db239116253af1255445cd01e3595e85
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 11:30:58 2009 +0100

    Version 1.0.7

commit e6cb06997c3829af3b0e9c1c84c2ce7ca5bd38ea
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 11:03:05 2009 +0100

    Fix quoting of list args in guestfish manpage.

commit 3ffc0807edf00c3ee7e8aabd82bfdb701905f1e0
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 11:02:00 2009 +0100

    Resync specfile to Fedora RR.

commit 5114f2e2b498b42b7e89e5f96b6df738614b91e9
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 10:20:48 2009 +0100

    Create /tmp directory in the initramfs.

commit 2ad4249177f5b615f2dde49e7c25178f3f47cdd7
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 10:06:40 2009 +0100

    Include fuse.ko module in image.

commit 9efb9e617a709b664d505d657bf8de803894d667
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 09:18:02 2009 +0100

    Version 1.0.6.

commit 07beda7af843ad0761c834ee7a51e941565c17a9
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 09:04:04 2009 +0100

    Note, but don't fix, javadoc bug.

commit 295054e915d7d97d1a46dae5d79748ce72bfabb9
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 09:03:27 2009 +0100

    qemu runtime done - remove from TODO list.

commit d461fc4be0a7ed6a1146c71c2d6cbd7c1e12aeb9
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 09:00:39 2009 +0100

    Allow qemu binary to be overridden at runtime.

commit abdd0df6a2cac9400a8f1cc7dbae338e0021a29b
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 08:46:35 2009 +0100

    Allow selection of qemu using --with-qemu

commit aaa9cf67f2326b5e756c1d5a7613dc9b036342d2
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 22 08:14:49 2009 +0100

    Error message about using --with-java-home=no to disable Java support.

commit b061c623ea2f95bcd1650c83bc9ef535a7607917
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 21 23:15:25 2009 +0100

    Fixes for Java.

commit 118e745cd0b4ab89d90a45bd8327413aea1b0227
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 21 22:38:28 2009 +0100

    Add extra kernel modules required for ext4 support.

commit c78ebd36d4cfbdac46088e348dafd1481943b4ef
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 21 22:27:22 2009 +0100

    Updated documentation, prepare for 1.0.5 release.

commit 08b4420427bc65766d4b00b3c30d073f7190fbf7
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 21 22:24:25 2009 +0100

    Another Java test.

commit b510871853640a406611767a71eeebc4b3f7799a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 21 22:05:44 2009 +0100

    Testing the Java bindings.

commit 172c1e495666d58c80949e499cf1b04e4de8edc1
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 21 21:14:55 2009 +0100

    Java bindings compile, not tested.

commit 3ca0740beedfd7c0222098a52503c8c094663080
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 21 14:38:12 2009 +0100

    Add summary message, fix libruby detection.

commit 0334ce1ae0b40fb8cecfcd47c9cf8c66f66311e8
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 21 14:25:31 2009 +0100

    More notes in the TODO list.

commit e924f89afa579d6211e07ef3594e9aeb5785cdf4
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 21 14:25:16 2009 +0100

    Basic Java build environment.

commit 83c4152e26f66c4cb3ea917519aa91596bd3b157
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 23:40:50 2009 +0100

    Various fixes to build and test in Koji.

commit 58dbebbb7acbeed5354acbe3b2c34b157b232632
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 21:16:25 2009 +0100

    Fixes for CDPATH being set.

commit e80a4bece7b7dd1554486ce2f92cd2b047c7cdbe
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 19:30:11 2009 +0100

    Use standard names for the OCaml/Perl/Python/Ruby subpackages.

commit f3078405a73cd444cbb13c5dd4e9e340d669bb56
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 18:20:34 2009 +0100

    Ruby also supported

commit 5a930d904d3daaaa77b8347d08ad4d34c14451de
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 16:52:13 2009 +0100

    Include the __cplusplus header magic so API really callable from C++.

commit 7d88b0f7efd981d7adcc64b6926d722c50f927e3
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 16:28:02 2009 +0100

    Version 1.0.3.

commit 898abc0dcafdb470430fa41202bd6df90cb8c462
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 15:59:08 2009 +0100

    Removed TODO item, now implemented.

commit 2abfcfd11bf74718af4763eed252e3658eeab994
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 15:54:22 2009 +0100

    Added tar-in, tar-out, tgz-in, tgz-out commands.

commit d03f6ee01af7051ac4dbcf8a2254cbefb32bfdb7
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 15:13:34 2009 +0100

    Various fixes to the daemon:
     - make sure SIGPIPE doesn't kill us
     - warn not to use macros in FileIn functions
     - add shell_quote function

commit fcfc3acbd5f651a50b8694e3a027a2e7a392cd21
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 14:58:36 2009 +0100

    Some fixes to daemon upload command:
     - don't leak the file descriptor along error paths
     - can't use those macros in FileIn functions

commit c8f38e00e2df1d551c342e40e3974ab9e98ce8d8
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 14:58:04 2009 +0100

    Make daemon cancellation really work.

commit 18c248d8f98fdd551b34a1cdad8e12b99760ab1a
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 13:14:07 2009 +0100

    Add tests for the upload and download commands.

commit 1523dfcd54c3fac27c55985883d9c4eeb7c534ee
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 11:45:29 2009 +0100

    Prepare for version 1.0.2.

commit 5ff166a4e71dbf3b70f03ad587693f02d81573a5
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 11:45:11 2009 +0100

    Avoid warning: Don't generate read_reply label unless needed.

commit 28dd610233c340842401fe18e95c2206e20e0382
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 11:35:57 2009 +0100

    Fix file descriptor leak in daemon.

commit 611e2c5315d8d2ca8fcfaef43359935baa0e0d2f
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 10:19:45 2009 +0100

    Generated code for 'checksum' command.

commit 310a29f57bd6338e9b54fcd264a62b4c797a8db6
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 10:19:29 2009 +0100

    Add 'checksum' command.

commit 2c95908e6ccd8e120c858a5149fa7b1c6c88ae13
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 20 00:22:02 2009 +0100

    Implement upload and download commands.

commit 79f59b7e3b1ef5332be6e23fcf282beda42404f5
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 19 14:51:50 2009 +0100

    Use GUESTFS_LAUNCH_FLAG in the daemon, and use correct uint32_t.

commit 426b489e366d58641e802ec93fba7b9a76ea1fb3
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 19 14:39:19 2009 +0100

    Document initial message.

commit 26352e94e3249ff662df8839a95273dbfeef2f00
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 19 14:33:46 2009 +0100

    Document the internal protocol.

commit 1a31bb238db9809a28a56fdf96aec1ced392bf42
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 19 12:41:35 2009 +0100

    Implement NEED_ROOT_OR_IS_DEVICE macro.

commit ced0f3e83f964173b4f877ab38fa0e3384d0f6bf
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 19 12:29:25 2009 +0100

    Implement _send_sync, _send_file_sync and _receive_file_sync.

commit e82f6ca1095a63e1c2c2162028d8aba83ccc3210
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 18 22:33:15 2009 +0100

    Begin to add the upload and download commands.

commit e8f7146ff9401f4ae67d17c36344722d4c895de4
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 18 21:21:44 2009 +0100

    Add ruby/ directory, add more warnings.

commit 942ae9f275c1201b826f2739e2321fcaba8ef1c3
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 18 16:29:00 2009 +0100

    Split out send and reply operations into separate callbacks.

commit f270b9bc13a55eda67baae84c4ef5733a7ee3c31
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 18 15:41:22 2009 +0100

    guestfs_send -> guestfs__send, in case we want a future command called "send".

commit f350959cfb24187a61a4c830a50f86a5352c0337
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 18 15:31:53 2009 +0100

    Separate out the high-level API actions.
     - Split out the high-level API actions so that they are in a
       separate file, and use the defined guestfs C API, instead of
       fiddling around with internal structures.

commit 9eba0125b0daee56dbd6fd313630180351763e4e
Merge: 900303021 78ffd4c90
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 18 13:27:06 2009 +0100

    Merge branch 'master' of git+ssh://g-rjones@et.redhat.com/git/libguestfs

commit 9003030210cffe962ec3173795397ea6577a4416
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 18 13:17:12 2009 +0100

    Rewrite of main loop impl, start of FileIn/FileOut support.

commit 78ffd4c90cb97b91211ea08e1fe5ce36ea20a72c
Merge: e50a1bbef bf6ee4df9
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 18 10:16:34 2009 +0100

    Merge branch 'master' of git+ssh://g-rjones@et.redhat.com/git/libguestfs

commit e50a1bbef8e8517661134bd9d5f6b9138fcc1afb
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 18 10:16:03 2009 +0100

    Version 1.0.1

commit bf6ee4df99f748d0cc772eacbdd4fff2621c43cb
Author: Richard W.M. Jones <rjones@redhat.com>
Date:   Thu Apr 16 23:55:56 2009 +0100

    Allow Ruby bindings to build correctly even if libguestfs not installed.

commit 017444d084dbfcac92e9e336837d731856703e4f
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 16 22:25:36 2009 +0100

    Fix spec file.

commit 098afb85bc966a80fd30caa3bc4c299245fa5ba6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 16 22:13:20 2009 +0100

    Ruby bindings.

commit dd16b7acc9b16bbd497b4e05904f91f4db94d63b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 16 17:44:47 2009 +0100

    Resync with proposed Fedora specfile.

commit b0f07e551cdd6f88896aec08218a2ebdbe39bd50
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 16 17:38:27 2009 +0100

    Missing free() on return path (thanks: Steve Grubb).

commit 94119775c2f77bf9a498505005f3672d7b3eaaac
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 16 17:35:59 2009 +0100

    TODO list updated.

commit c0fa8d88c3fe4625744409cff61080728245903b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 16 16:34:23 2009 +0100

    Note slow kernel boot times for F11/12.

commit 15324738ed1226c8a056951e2dfb901457683153
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 16 12:38:06 2009 +0100

    Updated TODO, BUGS.

commit dfd1a4bb0427cd18ccffde2a9f869f8f99743df2
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 16 11:39:22 2009 +0100

    Added Python documentation.

commit c332cfe3541b923a54e0dbaeaf54abf4cbe892a5
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 16 01:31:19 2009 +0100

    Really needs qemu 0.10 for vmchannel support.

commit a693240c625f14cc6cb951d8e60481c005121096
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 23:58:11 2009 +0100

    0.9.9 for final cleanups before 1.0 release.

commit 8671355799eacb47a3477d1cc77b31ab57de55a6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 23:54:51 2009 +0100

    'guestfish edit' commands and several bugfixes.

commit 66f9c67610b930ec7d3c251dde9c081114cdb3c6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 20:38:01 2009 +0100

    Started BUGS list.

commit fd60237c34da3dc7cef0642406bca97314c5b816
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 20:27:30 2009 +0100

    Move guestfish 'alloc' command to a separate file.

commit a341e30b6aa3f79a8c13e565f2af0bc4d6b72b42
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 17:59:43 2009 +0100

    Version 0.9.3.

commit 7c4c776ebc2d03115e4498f6196e19a66a6163b9
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 17:58:35 2009 +0100

    Show byte sizes in example.

commit 4aa3054235d4f74ba571f1b73939026d0d4d8005
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 17:48:54 2009 +0100

    Generated code for blockdev_* calls, RInt64, enhanced tests.

commit a9effe1d4f98a34ad73f968d66eb9b5ea6127b9d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 17:47:34 2009 +0100

    Added blockdev_* calls.  RInt64 type.  Enhanced tests.

commit 2d9471b4fbe379510c704f3f42ad6bd6a378ffb6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 16:04:27 2009 +0100

    Be strict about commands which don't test themselves, warn about missing tests.

commit 46d364029bcc2a379f3a71dbd701112466b3d5b3
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 16:00:10 2009 +0100

    Version 0.9.2.

commit ec9e86d077b434010418535915f2571ecfb8c04f
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 14:19:03 2009 +0100

    Display ext2/3 details, and some bug fixes.

commit 9b801bf00557956f7ffaa198781cd31c5dc5f14b
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 14:09:01 2009 +0100

    Correctly free memory in RHashtable binding for OCaml & Python.

commit 5856e746f3372f1346540756bba1b3a4ae1c8196
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 13:59:07 2009 +0100

    Generated code for tune2fs-l command and RHashtable return type.

commit 9ca9fd5d7a1d8bbd4e7c26618104508eada5e88c
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 13:58:44 2009 +0100

    Added tune2fs-l command and RHashtable return type.

commit 80b4539ea6e4cda66d4d67648203a92ade4ed140
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 12:34:18 2009 +0100

    Added to-xml program.

commit 3c27ee67c93d15638b9b90e531a48eda889cacb7
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 10:52:37 2009 +0100

    Remove 'df' program from examples - didn't ever work.

commit fad67152b8944b4f30c055295fbc9e57ffb62607
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 10:45:01 2009 +0100

    Generated code for stat/lstat/statvfs changes.

commit 594c11045eb41fc84892f90210a3eda5fed98519
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 15 10:44:27 2009 +0100

    Added stat, lstat, statvfs and associated stat structures.

commit ff9dc6ccc27b485a9b0c41f3bdfeca84dab105ac
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 14 20:47:51 2009 +0100

    Quoting in guestfish.

commit bd60b0d5394a333ee70b6c280684f38976a42de0
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 14 16:16:34 2009 +0100

    Version 0.9.1

commit d5258f0ed28094ca7f8efe8b7752579b4fcccd4c
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 14 15:52:04 2009 +0100

    Added bindings for GNU readline.

commit 946468dec9fa16727546a899e432fb83a8878bd2
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 14 14:38:31 2009 +0100

    Better handling of trailing \n problem.

commit 2d3b86f53dafc58f758d2eb9a9e593220b48bd67
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 14 14:20:47 2009 +0100

    Typos and documentation updates.

commit 0f01a16d91120b1bfd4d311a7341e2825fbb409a
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 14 14:20:07 2009 +0100

    Generated changes to perl XS bindings.

commit 11d78b422e11b1501ea063311aa01ed7112c5d95
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 14 13:51:12 2009 +0100

    Add 'command' and 'command-lines'. Fix args freeing in Perl bindings.

commit 87f1a2aa233dd55e56da1a46b44293c8cacd1022
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 14 13:09:06 2009 +0100

    Fix 'file(1)' command to work on /dev devices.

commit e35acb9143d1e2b27cffca13226a29d7c8ef498f
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 23:58:33 2009 +0100

    Generated files for file(1) command.

commit 399c4845ad23dc0836fdf0389a8e0c6ebbf1cbcc
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 23:58:02 2009 +0100

    Added file(1) command.

commit 3d6f834abd3d935e3a1384100b67d306e2fced2e
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 23:57:26 2009 +0100

    Note a bug.

commit 70fb6ea2dcf5c6e77ed2a362b9fb9734bb2b4693
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 20:13:06 2009 +0100

    guestfs -> GuestFS

commit 48ae9c7848c36dbe56ff6f9dd7f412c30081d347
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 20:07:03 2009 +0100

    Python files.  Add $QUICK_RPMBUILD flag to avoid running tests.

commit d2b277f9b6ef2aaa93e142211ce0ecc15667e9d5
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 20:06:46 2009 +0100

    Install guestfs.py

commit 72ddc92d58c32d2c583caee9af145df151b547bd
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 19:40:50 2009 +0100

    Missing dependency.

commit 2b75a47042b6be2b371c3dd04039e514e9bb36e9
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 19:39:39 2009 +0100

    Describe all available bindings.

commit 8e4279d440e7375f7d63f130cd765d05d3a58e8e
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 19:39:20 2009 +0100

    Need to package generator.ml -- oops.

commit 420d32aa71e31833f82a49bb176e5b5a359bffa9
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 19:15:22 2009 +0100

    Prepare for 0.9 release.

commit 3eb4410319d4f63b41af138b19d541e1d8ddefaf
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 19:15:12 2009 +0100

    Extra CLEANFILES.

commit 3d652986685025d6baf1a0e76a9c4e7ddda65e9a
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 19:10:10 2009 +0100

    Additional test programs for Perl, Python, OCaml bindings.

commit 13ef028c558741125186b266ff06800b485bc1cc
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 18:32:03 2009 +0100

    Lots, mainly Python bindings.

commit 66bed42fe87632f8265c4cda6c34abbfeed91f2f
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 10:33:44 2009 +0100

    Stricter checks on short descriptions.

commit 1d6f272a3cff40f3a0d2b8bf30e60e684f008a78
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 10:27:20 2009 +0100

    OCaml bindings build using the installed, not built, library.

commit d93259c8db7e21915d1f0456507ec072ac41bfd2
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 00:51:56 2009 +0100

    Old versions of augeas lack aug_load, aug_defvar, aug_node.  Check for those calls.

commit fc4e4e6e9139bc44f96729bad2ccd54e975ac755
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 13 00:29:00 2009 +0100

    Version 0.8.1

commit 8a8798fc1ee0e13cc4b111132db2f7d0f08186e2
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 12 23:54:49 2009 +0100

    Distribute TODO file.

commit ce1fc40f4a6677f0a74f9dac7264fafa0165d276
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 12 22:27:04 2009 +0100

    Fix looping bug in parse_string_list, and remove debug message.

commit 944f01fe53f845b637f7db0844279809c46585c6
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 12 19:01:07 2009 +0100

    More BuildRequires.

commit 38a73a813c2d798876c30c115638aae22bf16d08
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 12 11:57:53 2009 +0100

    More TODO items.

commit e0f429b8a55b9283a4a49df7425e9375b249df8a
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 12 09:42:32 2009 +0100

    Add BR qemu (required to run the tests).

commit 36329f2d83df2ea09cbfb558468796b26ef2c492
Author: Richard Jones <rjones@redhat.com>
Date:   Sun Apr 12 09:42:19 2009 +0100

    Added some ideas in TODO file.

commit 2bd1bdafade7a609d4857e7989d547fdea39b620
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 11 18:04:49 2009 +0100

    Minor adjustments for 0.8 release.

commit 83b29241a53266f3a8939138a1f988048ee46d2e
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 11 17:30:57 2009 +0100

    Don't delete examples/Makefile.

commit 3a37a48c8089cacdfcea48ab0ce4180dc1917ba8
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 18:25:07 2009 +0100

    Added test suite.

commit 8c39f3bd5417f64001eddb11cb6aea3b2ac01877
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 15:10:29 2009 +0100

    Added test framework, no tests implemented yet.

commit b09f590c24606fab614b5f994084322ca81e62cd
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 15:06:29 2009 +0100

    Need to set LD_LIBRARY_PATH so we pick up the right C library.

commit 3014eb42a0a29ea248be915f59833f07c1ee4601
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 12:53:28 2009 +0100

    Generated files for previous commands.

commit c3fbe5d255ed0a58f2cf810ed6384b8a1728c43c
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 12:52:49 2009 +0100

    New commands: rm rmdir rm-rf mkdir mkdir-p chmod chown

commit 197dd0db5448ebea500c4bf3a6212ec92279dbfe
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 12:47:34 2009 +0100

    CHROOT_OUT must preserve errno.

commit 12b695c83499f903532db2b6a4a9d44858d2e486
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 12:47:04 2009 +0100

    Fix off-by-one error in Augeas wrapper code.

commit 173f9e73079d174b6e75539311eabf2fa74f758b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 11:49:51 2009 +0100

    Change Err -> RErr for consistency with other return types.

commit c54b62b37867130169de640b917dd01e3d42fc86
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 10:55:28 2009 +0100

    Documentation fix.

commit 4145d34b3e5873a2042ed2af68d286d396948a06
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 10:52:38 2009 +0100

    Code cleanup.

commit d18e6b177700c3dada01df96baff159ec25eac3d
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 10:46:50 2009 +0100

    Add more function checking.

commit 6d230da8b99530e261cb5c3196654ed329156ef8
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 10:26:10 2009 +0100

    Just use plain lists for argument representation.

commit ab34e1874c9d64e0a4e433fb5bdb596c7cffec6e
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 10:19:00 2009 +0100

    Documentation fixes.

commit 82c94ce4cfa2ca1464aa5fa45cea3470696c6eaf
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 10 10:13:59 2009 +0100

    Correction in the aug-ls documentation.

commit 7c736202662f1b5620434889aec4e53871898229
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 9 19:47:22 2009 +0100

    Remove *~ files when doing 'make clean'.

commit 02f7622415f453637f5b064d939bc65e73f020c9
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 9 19:42:22 2009 +0100

    Documentation update.

commit 65bdcbf0d70a20d6183e302eae2e9f6a12e378c5
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 9 19:36:49 2009 +0100

    Bumped version number.

commit 8c7e62d3bf802570bc69e5a525cd14d824bd2501
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 9 19:36:07 2009 +0100

    Added aug-ls (generated code).

commit ab53f13cac7004908d7c1949830d71907b48cc49
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 9 19:35:16 2009 +0100

    Add aug-ls command (non-generated code).

commit 2c6aad6d52e31603cc6fb7ffb3d888bb8b445a93
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 9 17:42:15 2009 +0100

    No need for mirror, add HTML docs to subpackages.

commit 0d9fb9c6706e4b47305d88bca1c2a4e0bfa49e42
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 9 17:42:01 2009 +0100

    Distribute the pod.css file.

commit c027c779b39509d7f8873ccf5099310efdea88c6
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 9 16:48:46 2009 +0100

    Generate webpages.

commit 7dca3daf300b369025c50a03e7b8e767ed82d457
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 9 13:19:38 2009 +0100

    Added Augeas support.

commit ed853a1e182be8710df874663b3e59c18bb40933
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 9 13:19:12 2009 +0100

    Updated HACKING notes about debugging.

commit 769c3c92c801bb74349ead46bf1f3bfb7e30d13b
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 23:47:31 2009 +0100

    Generated code for new guestfs_read_lines API call.

commit 0f6ce7aab4cc8f540a40322539c34e49cc679ee7
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 23:47:28 2009 +0100

    Definition and implementation of new guestfs_read_lines API call.

commit 5535e42c789336277cb060b0eb922156d9bcd131
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 23:13:31 2009 +0100

    Version 0.6

commit 0dcd36fe6e441738adea075e010e625838df80d9
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 23:06:51 2009 +0100

    Added OCaml examples.

commit ebfbf6fc0650a9ab77e6befa929677ffae18d92c
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 22:52:11 2009 +0100

    OCaml bindings compile.

commit dc58b991f4665cf96a0088c7ce539c73dd2bddbb
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 20:26:35 2009 +0100

    Many non-daemon functions are now auto-generated.

commit 240674954841c2f7c227c49ab75572fbf35759c6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 17:19:09 2009 +0100

    Version 0.5: Numerous small fixes to make rpmbuild work again.

commit e5a3f95b107709b5c5ac084cd364ba66d64a07a5
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 15:22:29 2009 +0100

    Added more Perl bindings tests.

commit a4943253da0a894f2e12559979adf752f0ab9418
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 15:08:10 2009 +0100

    Bug fix: Trailing whitespace from 'pvs' command.

commit bcb464977a1b30ec15503b8be8b179166cfe8177
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 15:02:39 2009 +0100

    Fixed Perl bindings, they now work properly.

commit 3309b05eb354839d75a23372eeee7c0849c1ee4d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 13:54:19 2009 +0100

    Ignore perl/Guestfs.bs file.

commit 1bbf8480c8eb90675bbf3a2e4d39896c1bcc6ea1
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 13:46:21 2009 +0100

    Updated generated files.

commit 45bf1cd76f513ffa7a57dbd15b7010141d857eca
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 13:46:05 2009 +0100

    Mention OCaml & Perl bindings in introduction.  Error handlers must copy 'msg' if they want to stash it.

commit b9f4e5b263135d6ebb81b0ac2a8df063b544f04d
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 13:45:14 2009 +0100

    File was removed, updated dependencies.

commit d6270d0054a16ed722384207153eac9a09a82261
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 13:44:46 2009 +0100

    Need to distribute OCaml bits even if OCaml not found.

commit 1538dbf898d3be6310e5c3db8ee10e6a04ce6c69
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 13:44:13 2009 +0100

    First version of Perl bindings, compiled but not tested.

commit 1b1d3890c52e08c36eab489dc92134bf3eab0155
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 8 13:42:26 2009 +0100

    Added a note that I'm not going to do Python bindings for now.

commit 0f2e90ffc531e6970f455932edf28acecf888ed3
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 7 16:52:25 2009 +0100

    Outline OCaml bindings.

commit 23b1740443dd992e871a45e736c69275874eb0fc
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 7 14:55:25 2009 +0100

    Added guestfish(1) manpage.

commit 243282dd05df5f37218f92a6f88651ff8a9ed887
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 7 13:51:12 2009 +0100

    Fix: "aclocal: couldn't open directory `m4': No such file or directory"

commit 2655b5414245988494e540e209b371fb59240fd9
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 7 13:08:50 2009 +0100

    Added framework for the language bindings.

commit 7baceabe5431bb9cec1953596395d2d14fe3b7ab
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 7 11:06:28 2009 +0100

    New header file.

commit da2820aabc83c66ef7487c7bb5e26b4997be182b
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 7 11:06:23 2009 +0100

    Remove unnecessary kernel drivers.  Big reduction in image size.

commit 92008655214e83b597c78a8f55754bb17a70e2ea
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 7 10:42:15 2009 +0100

    Fix incorrect realloc size which was causing 'ls' command to fail on large directories.

commit ccfd5448cc34b4beacbb99aba80d615e87539ea7
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 7 10:25:46 2009 +0100

    Implement simple lvs/vgs/pvs commands.

commit c2aa95c3c0b10a2ee99a2dd3247db8ded1f7678e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 7 09:52:46 2009 +0100

    Rename pvs -> pvs-full (etc), so we can add simple pvs (etc) commands.

commit 0a0b8cca0ea496aff32c6b3a83028e8a0a1ca57e
Author: Richard Jones <rjones@redhat.com>
Date:   Tue Apr 7 06:50:31 2009 +0100

    pvs/vgs/lvs commands working now.

commit 64e77649bc2393e220f1fe53298d30956395dc2c
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 6 12:55:26 2009 +0100

    Implement list-devices and list-partitions.

commit a320f1809dacd429c6b1aaa25fc25de231c49913
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 6 11:44:48 2009 +0100

    Implementations of 'cat', 'ls', and some cleanups.

commit 4b4a105fe45b8f394ff5ba00c844e34876116dd9
Author: Richard Jones <rjones@redhat.com>
Date:   Mon Apr 6 11:43:14 2009 +0100

    Debugging tips.

commit 5cc06c4acfca940758d16d4f8b8d3425cd8bc045
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 16:52:52 2009 +0100

    Fix incorrect short description of 'cat' command

commit 218e610839e7af8cc49f52e47453d6e3a5de89cd
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 16:38:28 2009 +0100

    Implement RString and RStringList return types.
     - implement 'll' command.
     - outlines for 'ls' and 'cat' commands.

commit c325118576ffc6228b8f7c996bccc7405df6c59f
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 14:51:48 2009 +0100

    Implement the alloc shell command.

commit dc8716445e828d2a277ca4a8c7f0f19a062abad2
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 14:51:31 2009 +0100

    guest_add_{drive,cdrom} now test if the files exist.

commit 38d64a5bd133834e303fdb446805fc783a39624e
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 13:17:46 2009 +0100

    Add %post and %postun.

commit c7c59ba4a5edaf2f3a7c9cee6234ee9b64c9aa0c
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 13:17:32 2009 +0100

    Fix parsing of paths with more than one element.

commit bd8a13a78bf29301edda3c1646f9c6258c5e948f
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 12:54:47 2009 +0100

    LIBGUESTFS_PATH implementation.

commit 2a13dd3275f01078d5aeafc883169b52dc615374
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 11:29:44 2009 +0100

    Document --add and --mount options.

commit cf2e45348fd51bfe6fd18c4dc50d5caabeeb59e8
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 11:27:26 2009 +0100

    Mostly working spec file.

commit 84d443218d214277f2971bd1ea6b2ac413957e01
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 10:41:34 2009 +0100

    Implemented autosync, make it the default for guestfish.

commit 2532f1528b417fc42d145937ddf8626b8dcabe14
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 10:29:25 2009 +0100

    Generate actions section in guestfs.3 man page.

commit 0697929cb3b4f2616b848fd213b73f28761587ca
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 09:40:44 2009 +0100

    Implemented running actions in guestfish.

commit 9a6c5f7745292611ae2bc39bbe7bc8aef1203cb1
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 01:49:36 2009 +0100

    More tidy up of messages.

commit 7d1608c5611bd9c2c767c19e760cf43255ad3bef
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 01:40:43 2009 +0100

    Command line, help.

commit 36dd017713170b7837ef83283202de62700e0899
Author: Richard Jones <rjones@redhat.com>
Date:   Sat Apr 4 00:58:40 2009 +0100

    Command line and interactive shell parsing, prompts etc.

commit a3efe5b7002f99b142cb7cd87f2a207cff899257
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 23:47:47 2009 +0100

    Added outline of shell command, added generator support.

commit c7a0f1ef0a3d3ca34ffaf4ee2b7ed3bf5f1b610b
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 22:45:42 2009 +0100

    Small updates to the generator.

commit 0befc1ea40ac16fe6924c78a5c54f51e66254ea6
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 22:25:34 2009 +0100

    Implemented 'mount' and 'touch' commands.

commit 6bc622d02c026009bc7ef5bb7e1cd8d74eae1769
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 22:24:32 2009 +0100

    Added a HACKING file.

commit d2877420f9589c8c0bbf87bb431da8b981b64d92
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 20:30:42 2009 +0100

    Added images/ directory for test images, and one image.

commit 64e781acb87c9fcb9756dea66cc4976f5f628201
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 19:51:02 2009 +0100

    Parses return values and returned errors properly.

commit fa9c8314648cf8808ad606d809b007c3219e74ac
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 19:16:27 2009 +0100

    Make the partition configurable.

commit b1559c26326ec029bcf45fb0f17fb4292d957f84
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 19:13:48 2009 +0100

    Added README file for examples directory.

commit 27ecb8fc56b875de80f50640c992b169fba374dc
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 19:11:44 2009 +0100

    No verbose.  User can enable by setting LIBGUESTFS_DEBUG=1 if they want.

commit 8aede52e79fbf50ec34079a213b7a2641e2f465d
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 19:11:29 2009 +0100

    Pass -no-kqemu parameter to avoid warning about kqemu.

commit 927b6f409dbe69e8df829eca0f5452445dd9e9b9
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 19:08:19 2009 +0100

    Makes a series of non-trivial calls.

commit 52a0d72629e618c38e4f1666f7a8b7319679fd64
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 17:24:35 2009 +0100

    Daemon and library are mostly talking to each other now.

commit 82aa56b517350230f73f34c0612ea39bd4b8ab7f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 17:23:33 2009 +0100

    Remove initramfs/fakelog.root if make-initramfs fails.

commit 8a9d0c0dbd36cf21198fbb4dcb639eaea312e667
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 17:23:03 2009 +0100

    Remove NFS support - we will probably use FTP instead.

commit a631a1c6fa71546af1bc9187adc33749ad950485
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 11:29:55 2009 +0100

    Lots more auto-generation.

commit b7a7fbef83bed66a1f611132e8c0605368fcaf60
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 11:27:52 2009 +0100

    Set up ethernet interface.

commit 7ed0780d8004525fe61ee637a664b81d58955912
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 01:15:17 2009 +0100

    Start the generated code and code generator.

commit 1b5405a10b9dcc2e508f2a415f4832f30f8a5ba4
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 01:14:44 2009 +0100

    Add the first version of the guestfsd daemon.

commit 1351773562b6312d214e597038175b0c111c8552
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 01:13:42 2009 +0100

    Add update-initramfs.sh.in so we don't need to rebuild initramfs for
    small changes in the daemon.

commit 52623e73e6bc7524e7b98d6e53729f5199cfdd5f
Author: Richard Jones <rjones@redhat.com>
Date:   Fri Apr 3 01:12:21 2009 +0100

    Updated to newer GPLv2 document.

commit f6b6b39b86c17be75d6c295ae653abfce75b3575
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 2 20:55:41 2009 +0100

    Correctly handle the case when select runs out of filehandles.

commit 04c7c37fb3f2e3456b9ce5e2ef11ae6c79393b43
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 2 20:46:55 2009 +0100

    Code to handle the daemon communications socket.

commit 97b1da1b0c869867563a314226c6efd366bd401b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 2 20:07:21 2009 +0100

    Guest boots, and basic select/callbacks work.

commit d72bd00e4073082c7fb1af3a546d7a65aff7bd16
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 2 17:00:13 2009 +0100

    Ignore generated manual page.

commit f046d59645b8959e2e521410d61702b94c4f782b
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 2 15:15:55 2009 +0100

    More documentation updates.

commit d900d04e95ebabf51903287794a6c47ad50cf99f
Author: Richard Jones <rjones@redhat.com>
Date:   Thu Apr 2 12:10:59 2009 +0100

    More documentation.

commit 7a36eadbefa220a28f942e6aaea8ad59a2d9d9c6
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 1 20:29:03 2009 +0100

    Documentation of low-level API.

commit 722aa1026237f0ca9edfcd8eda2d6dbde38d54de
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 1 16:08:23 2009 +0100

    Add test-boot-realistic target.

commit 05461e4f03ae92442342734ba4e22c1e191f3415
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 1 16:08:01 2009 +0100

    Correct permissions problem in root filesystem by using febootstrap-run
    properly.

commit 87fa480b896849a7693348b171dbfaa82dbd4608
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 1 12:57:45 2009 +0100

    Various fixes to the build system, add 'make test-boot-image' target.

commit fe44086b867ffa8cdb0613e12282157ed8931ba2
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 1 12:57:25 2009 +0100

    Run autoreconf with -i parameter.

commit 10659c0d659e17829940707f51312ec4ff7760a8
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 1 12:57:10 2009 +0100

    More files to ignore.

commit 98cf3ced1f37eb5458f7550e5d3560e3e5ed8e89
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 1 12:56:49 2009 +0100

    Print size of kernel, don't need to delete gnome/help any more.

commit 22f62884f1b218a9e1d537866833455b223be9b0
Author: Richard Jones <rjones@redhat.com>
Date:   Wed Apr 1 12:53:40 2009 +0100

    Moved .cvsignore -> .gitignore.

commit 7de03f363ba050711edb144f1d13188f43b91be8
Author: rjones <rjones>
Date:   Tue Mar 24 14:15:13 2009 +0000

    Build the initramfs.

commit 2afe8af7cbee9f4fb69613f44981eebf5932e9bd
Author: rjones <rjones>
Date:   Tue Mar 24 09:38:31 2009 +0000

    Now using febootstrap.

commit 2ff66501e5f34535ca04fbe90f3bb6ed3c9fb45d
Author: rjones <rjones>
Date:   Wed Mar 4 13:18:48 2009 +0000

    Starts up QEMU now

commit 10841c1150b44b2585c2e101b4a1678da409a456
Author: rjones <rjones>
Date:   Tue Mar 3 15:35:50 2009 +0000

    Running qemu as a subprocess.

commit 48d25ab7b31b8a0b89a1a050e1e844bc6514c942
Author: rjones <rjones>
Date:   Tue Mar 3 09:08:12 2009 +0000

    Final fixes to build environment, and added autogen.sh.

commit 992041b511b1622c59111c4a3f898cd6e2fbea57
Author: rjones <rjones>
Date:   Tue Mar 3 08:58:37 2009 +0000

    Build environment set up for libguestfs.
