libguestfs.git
13 years agoVersion 1.10.3. 1.10.3
Richard W.M. Jones [Wed, 18 May 2011 10:40:08 +0000 (11:40 +0100)]
Version 1.10.3.

13 years agobuild: Sort EXTRA_DIST into lexicographic order.
Richard W.M. Jones [Thu, 12 May 2011 12:50:38 +0000 (13:50 +0100)]
build: Sort EXTRA_DIST into lexicographic order.
(cherry picked from commit 48c91ac03cb0a6ac351822fe70200abb8ac7f761)

13 years agodaemon: Remove some less useful debugging messages.
Richard W.M. Jones [Sun, 8 May 2011 20:59:50 +0000 (21:59 +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.
(cherry picked from commit 5ce759bfdc70c97121ef34ab4d5c918d568f2474)

13 years agoFix guestfs___rollback_cmdline when pos == 0.
Richard W.M. Jones [Sun, 8 May 2011 14:13:23 +0000 (15:13 +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.
(cherry picked from commit 607aa95de927b5b8e4b212655c71bf21acbba372)

13 years agoconfigure: Sort output files in AC_CONFIG_FILES section.
Richard W.M. Jones [Fri, 6 May 2011 21:33:44 +0000 (17:33 -0400)]
configure: Sort output files in AC_CONFIG_FILES section.
(cherry picked from commit 8ee0ad0caf2f90f4883909cd9b61c4dd6f9cffbf)

13 years agodoc: Use I<-...> for cross-references to command line options.
Richard W.M. Jones [Sun, 1 May 2011 21:41:20 +0000 (17:41 -0400)]
doc: Use I<-...> for cross-references to command line options.

This is now used consistently across all the documentation.
(cherry picked from commit c49fc3831d12788c27b90d12f06a1cd69a88e3be)

13 years agodf: Refresh virt-df(1) man page.
Richard W.M. Jones [Sun, 1 May 2011 18:53:23 +0000 (14:53 -0400)]
df: Refresh virt-df(1) man page.

Add examples.

Refresh description.

Use I<...> to refer to command line options.
(cherry picked from commit 988a8784647a66adbece3c9fb470c06a4cce3cdd)

13 years agoguestfs(3): Note that host file size limits affect guest disk limits.
Richard W.M. Jones [Sun, 1 May 2011 00:11:21 +0000 (20:11 -0400)]
guestfs(3): Note that host file size limits affect guest disk limits.
(cherry picked from commit 805e6dbc15eae5a4f85eea3c37e295aefaefeb69)

13 years agoguestfs(3): Refresh documentation for private data area keys.
Richard W.M. Jones [Sat, 30 Apr 2011 23:38:20 +0000 (19:38 -0400)]
guestfs(3): Refresh documentation for private data area keys.
(cherry picked from commit 40f2b698ac765128bfcda5f0db893c95d09ae89a)

13 years agoguestfs(3): Referenced section is above, not below.
Richard W.M. Jones [Sat, 30 Apr 2011 23:10:52 +0000 (19:10 -0400)]
guestfs(3): Referenced section is above, not below.
(cherry picked from commit 108d7a134c5d26b967fa7162d9b80b40112c2869)

13 years agoguestfs(3): Refresh autosync gotcha documentation.
Richard W.M. Jones [Sat, 30 Apr 2011 23:10:25 +0000 (19:10 -0400)]
guestfs(3): Refresh autosync gotcha documentation.
(cherry picked from commit a5e421570cc840f70f2931e24b3df40c9a14cd2d)

13 years agoguestfs(3): Writing to a file descriptor, not just a pipe.
Richard W.M. Jones [Sat, 30 Apr 2011 22:45:56 +0000 (18:45 -0400)]
guestfs(3): Writing to a file descriptor, not just a pipe.
(cherry picked from commit 470e373eea218c8d46b0c63dda93ee9ece48940f)

13 years agoguestfs(3): Refresh documentation for guestfs_create, guestfs_close.
Richard W.M. Jones [Sat, 30 Apr 2011 22:31:06 +0000 (18:31 -0400)]
guestfs(3): Refresh documentation for guestfs_create, guestfs_close.
(cherry picked from commit dd86183f3f6d4d5ad28e1f12c56ba920934e7ad0)

13 years agointernal: Use size_t instead of int for command line size.
Richard W.M. Jones [Sat, 30 Apr 2011 09:49:06 +0000 (05:49 -0400)]
internal: Use size_t instead of int for command line size.
(cherry picked from commit 10167cea98f93a74abe63f0a54d3a662997e7489)

13 years agoguestfs_close: Move local variables close to code that uses them.
Richard W.M. Jones [Sat, 30 Apr 2011 09:45:26 +0000 (05:45 -0400)]
guestfs_close: Move local variables close to code that uses them.

This is just code motion.
(cherry picked from commit 478b2d80ed1d613f621e89a97a0b140004ebac29)

13 years agoguestfs_close: Remove unused local variable.
Richard W.M. Jones [Sat, 30 Apr 2011 09:42:43 +0000 (05:42 -0400)]
guestfs_close: Remove unused local variable.
(cherry picked from commit b2f8627ab59daeb03f036dde6c66fb9da736950c)

13 years agoguestfs(3): Document limits.
Richard W.M. Jones [Wed, 27 Apr 2011 19:10:24 +0000 (20:10 +0100)]
guestfs(3): Document limits.
(cherry picked from commit c0f96e9c6eda77e5e99de862dd4366010e4a1ab8)

13 years agozero: Disable file test because of bug in file command.
Richard W.M. Jones [Wed, 18 May 2011 09:04:05 +0000 (10:04 +0100)]
zero: Disable file test because of bug in file command.

See: https://bugzilla.redhat.com/show_bug.cgi?id=705499
(cherry picked from commit f55b32b2db83495fc0987f0fe0e979818704dff1)

13 years agoVersion 1.10.2. 1.10.2
Richard W.M. Jones [Sun, 24 Apr 2011 08:54:55 +0000 (09:54 +0100)]
Version 1.10.2.

13 years agopython: Rearrange C files for bindings.
Richard W.M. Jones [Fri, 22 Apr 2011 18:58:29 +0000 (19:58 +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.
(cherry picked from commit 16da7589e91b0030fb5564553447f80b97c0b18c)

13 years agoperl: Decrement refcount in $g->delete_event_callback.
Richard W.M. Jones [Fri, 22 Apr 2011 20:34:08 +0000 (21:34 +0100)]
perl: Decrement refcount in $g->delete_event_callback.

This updates commit bc468c87d04b34faacd208c49cca4a5096e5103c.
(cherry picked from commit 3acf732c2f23d8508f692efb2b222169914bfcdc)

13 years agoinspect: Look for %systemroot%/system32 for Windows heuristic.
Richard W.M. Jones [Thu, 21 Apr 2011 16:33:48 +0000 (17:33 +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.
(cherry picked from commit 0da6f55a6745686ca056c6bc8ebf647f111cb8e8)

13 years agolist-applications: If software hive is missing, this is an error.
Richard W.M. Jones [Thu, 21 Apr 2011 16:29:44 +0000 (17:29 +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.
(cherry picked from commit 782f3a36469ca396dbf998ea82af2699153be3ed)

13 years agoinspect: "centos" and "scientificlinux" are now separate distros.
Richard W.M. Jones [Thu, 21 Apr 2011 14:09:11 +0000 (15:09 +0100)]
inspect: "centos" and "scientificlinux" are now separate distros.

Previously we returned "rhel" for these, which was not accurate.
(cherry picked from commit 2b0ca7e7b8d369a42a51b1feec72ae8f17257c78)

13 years agoVersion 1.10.1 1.10.1
Richard W.M. Jones [Mon, 18 Apr 2011 21:40:04 +0000 (22:40 +0100)]
Version 1.10.1

13 years agopython: Release Python GIL while running libguestfs calls.
Richard W.M. Jones [Mon, 18 Apr 2011 15:56:08 +0000 (16:56 +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.
(cherry picked from commit 08dc4a87b92435678780e9c49fe3bc1e7465d99f)

13 years agofish: --rw option will be mandatory in 1.12 not 1.10.
Richard W.M. Jones [Sat, 16 Apr 2011 20:35:11 +0000 (21:35 +0100)]
fish: --rw option will be mandatory in 1.12 not 1.10.
(cherry picked from commit a3cce465570bf192e993a67feedfbab7e662c75a)

13 years agofish: Fix typo in guestfish man page (--format option).
Richard W.M. Jones [Sat, 16 Apr 2011 20:26:15 +0000 (21:26 +0100)]
fish: Fix typo in guestfish man page (--format option).
(cherry picked from commit 4c2bb8b301970e8853a8feaa95e3698224640fba)

13 years agoinspector: Refresh the virt-inspector(1) manpage.
Richard W.M. Jones [Sat, 16 Apr 2011 20:12:53 +0000 (21:12 +0100)]
inspector: Refresh the virt-inspector(1) manpage.
(cherry picked from commit 34d9fed24ad6a2d2e13bb817820e31373f6756e1)

13 years agorun script: Don't depend on libtool being installed.
Richard W.M. Jones [Sat, 16 Apr 2011 14:29:58 +0000 (15:29 +0100)]
run script: Don't depend on libtool being installed.

Also use 'exec' to run the program.
(cherry picked from commit 5d139fa8a4a7f9ff65e7b936fd7376f661c72f48)

13 years agoRemove local LIBGUESTFS_PATH detection from guestfish and guestmount.
Richard W.M. Jones [Sat, 16 Apr 2011 06:28:47 +0000 (07:28 +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.
(cherry picked from commit 33a2c184e12c0bdbf061a9f36c87d76c28444712)

13 years agoRemove ad-hoc run*locally scripts, replace with './run'
Richard W.M. Jones [Fri, 15 Apr 2011 20:43:20 +0000 (21:43 +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.
(cherry picked from commit 5790f5bfafb12cc2ed9365461bf66e0fdfde7150)

13 years agoinspector: Handle write failures when creating example-*.xml.
Richard W.M. Jones [Thu, 14 Apr 2011 17:19:04 +0000 (18:19 +0100)]
inspector: Handle write failures when creating example-*.xml.
(cherry picked from commit 0108d7861d4cc9a1f0d87d89080d1be7750e54b5)

13 years agoDelete file so db_load doesn't run incrementally.
Richard W.M. Jones [Thu, 14 Apr 2011 17:17:43 +0000 (18:17 +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.

Cherry picked from commit 67493bfca44d436143d825b155bf2bc38990ea82
and backported to stable-1.10 branch.

13 years agoinspector: Include <hostname> in output.
Richard W.M. Jones [Thu, 14 Apr 2011 16:58:51 +0000 (17:58 +0100)]
inspector: Include <hostname> in output.
(cherry picked from commit 36d3a4ce53317b104d48b60c9fe1ed679065d1d4)

13 years agoinspect: Abstract out db_dump code for listing RPM applications.
Richard W.M. Jones [Thu, 14 Apr 2011 12:28:02 +0000 (13:28 +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.
(cherry picked from commit a986e8dadb0c70634f6d1d89dd3e7bb5d9af3078)

13 years agoinspect: Split code into separate files.
Richard W.M. Jones [Wed, 13 Apr 2011 22:27:05 +0000 (23:27 +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
(cherry picked from commit 3336b5448f12c9eb25bf7a0cecda1315c4cf07ea)

13 years agoinspect: Move shared PCRE match functions to separate file.
Richard W.M. Jones [Wed, 13 Apr 2011 22:02:45 +0000 (23:02 +0100)]
inspect: Move shared PCRE match functions to separate file.

This is just moving code around.
(cherry picked from commit 439a42efdb052748c8457f866b2c68a581034826)

13 years agoinspect: Cache downloaded files in the handle g->tmpdir.
Richard W.M. Jones [Wed, 13 Apr 2011 21:35:35 +0000 (22:35 +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.
(cherry picked from commit 3c1f762abed92f7a358f3bc93e3396d0606b18ad)

13 years agoRemove temporary directory containing arbitrary files.
Richard W.M. Jones [Wed, 13 Apr 2011 21:02:08 +0000 (22:02 +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.
(cherry picked from commit 70975981bed8e0c01b5966c10b507bb82086e5f8)

13 years agoInclude string.h and libintl.h, as needed.
Jim Meyering [Wed, 13 Apr 2011 13:17:32 +0000 (15:17 +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.
(cherry picked from commit 6740028b333840eec5e8e46e8512f8155728b037)

13 years agoAdd more missing include directives.
Jim Meyering [Wed, 13 Apr 2011 11:15:39 +0000 (13:15 +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.
(cherry picked from commit ace1795d1045be96f92a68e6b61ffdee60431fef)

13 years agodebian: Add dependency on libpcre-ocaml-dev.
Nikita A Menkovich [Wed, 13 Apr 2011 11:41:27 +0000 (12:41 +0100)]
debian: Add dependency on libpcre-ocaml-dev.
(cherry picked from commit 173c374bd01e84deafdaf1f9aa65b0f623e86470)

13 years agoAdd missing include directives.
Jim Meyering [Wed, 13 Apr 2011 11:00:06 +0000 (13:00 +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.
(cherry picked from commit 0db662eae54b21fccadabe817afbc0fa89d980b2)

13 years agoAvoid warning about implicit declaration of strlen.
Jim Meyering [Wed, 13 Apr 2011 09:11:42 +0000 (11:11 +0200)]
Avoid warning about implicit declaration of strlen.

* src/events.c: Include <string.h>, for use of strlen.
(cherry picked from commit a53833fdd21cd573fe8fd02d7a11a3a5e9764ce0)

13 years agodebian: libguestfs-test-tool-helper no longer exists.
Richard W.M. Jones [Tue, 12 Apr 2011 21:45:39 +0000 (22:45 +0100)]
debian: libguestfs-test-tool-helper no longer exists.
(cherry picked from commit 6ec2ed20cbbad871a8b48389cbe5785bb929c99f)

13 years agoresize: Include stamp file for manpage in CLEANFILES.
Richard W.M. Jones [Tue, 12 Apr 2011 21:45:18 +0000 (22:45 +0100)]
resize: Include stamp file for manpage in CLEANFILES.
(cherry picked from commit 0d9f2c7311b005b2cfe2ecb3ff9fb57d4576ef7b)

13 years agoVersion 1.10.0. 1.10.0
Richard W.M. Jones [Tue, 12 Apr 2011 19:15:01 +0000 (20:15 +0100)]
Version 1.10.0.

13 years agoUpdate RELEASE-NOTES for 1.10 release.
Richard W.M. Jones [Tue, 12 Apr 2011 18:36:25 +0000 (19:36 +0100)]
Update RELEASE-NOTES for 1.10 release.

13 years agoUpdate ROADMAP for 1.12 and beyond.
Richard W.M. Jones [Tue, 12 Apr 2011 18:36:00 +0000 (19:36 +0100)]
Update ROADMAP for 1.12 and beyond.

13 years agoREADME: virtio-serial is required.
Richard W.M. Jones [Tue, 12 Apr 2011 18:35:27 +0000 (19:35 +0100)]
README: virtio-serial is required.

13 years agoguestfs(3): Fix documentation for drive letters.
Richard W.M. Jones [Tue, 12 Apr 2011 17:49:31 +0000 (18:49 +0100)]
guestfs(3): Fix documentation for drive letters.

We can now get drive letter mappings through the inspection API.

13 years agoinspect: Fix some small memory leaks in Windows inspection.
Richard W.M. Jones [Tue, 12 Apr 2011 17:05:35 +0000 (18:05 +0100)]
inspect: Fix some small memory leaks in Windows inspection.

Found using valgrind.

13 years agofish: Allows win:... paths to work with drives mounted anywhere.
Richard W.M. Jones [Tue, 12 Apr 2011 16:03:14 +0000 (17:03 +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.

13 years agotodo: guestfish drive letters.
Richard W.M. Jones [Mon, 11 Apr 2011 11:33:21 +0000 (12:33 +0100)]
todo: guestfish drive letters.

13 years agoresize: Update dependencies.
Richard W.M. Jones [Sun, 10 Apr 2011 20:10:19 +0000 (21:10 +0100)]
resize: Update dependencies.

13 years agoresize: Don't build this directory in parallel.
Richard W.M. Jones [Sun, 10 Apr 2011 19:42:42 +0000 (20:42 +0100)]
resize: Don't build this directory in parallel.

13 years agoresize: Consistent use of 'part' in help output.
Richard W.M. Jones [Sun, 10 Apr 2011 10:12:03 +0000 (11:12 +0100)]
resize: Consistent use of 'part' in help output.

13 years agoresize: Missing \n after version.
Richard W.M. Jones [Sun, 10 Apr 2011 10:06:58 +0000 (11:06 +0100)]
resize: Missing \n after version.

13 years agoresize: Link with local copy of guestfs.
Richard W.M. Jones [Sat, 9 Apr 2011 21:50:15 +0000 (22:50 +0100)]
resize: Link with local copy of guestfs.

13 years agoVersion 1.9.18. 1.9.18
Richard W.M. Jones [Sat, 9 Apr 2011 16:11:57 +0000 (17:11 +0100)]
Version 1.9.18.

13 years agoUpdate POT file.
Richard W.M. Jones [Sat, 9 Apr 2011 18:55:05 +0000 (19:55 +0100)]
Update POT file.

13 years agoInclude po/Makefile.in.in in git, to avoid needing to rerun gettextize.
Richard W.M. Jones [Sat, 9 Apr 2011 17:01:11 +0000 (18:01 +0100)]
Include po/Makefile.in.in in git, to avoid needing to rerun gettextize.

13 years agobuild: virt-resize manpage.
Richard W.M. Jones [Sat, 9 Apr 2011 20:11:47 +0000 (21:11 +0100)]
build: virt-resize manpage.

13 years agoRewrite virt-resize in OCaml.
Richard W.M. Jones [Fri, 8 Apr 2011 13:07:26 +0000 (14:07 +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.

13 years agoCompile rpcgen-generated files with -fno-strict-aliasing
Matthew Booth [Thu, 7 Apr 2011 14:30:54 +0000 (15:30 +0100)]
Compile rpcgen-generated files with -fno-strict-aliasing

rpcgen generates source which can't be safely compiled with strict-aliasing
enabled.

13 years agotest-tool: Don't use static binary helper program, nor ISO.
Richard W.M. Jones [Wed, 6 Apr 2011 18:45:46 +0000 (19:45 +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.

13 years agoUpdate RELEASE-NOTES file.
Richard W.M. Jones [Wed, 6 Apr 2011 10:52:20 +0000 (11:52 +0100)]
Update RELEASE-NOTES file.

13 years agoVersion 1.9.17. 1.9.17
Richard W.M. Jones [Tue, 5 Apr 2011 20:24:51 +0000 (21:24 +0100)]
Version 1.9.17.

13 years agofish: copy-in, copy-out, edit, more commands can use win:... prefix.
Richard W.M. Jones [Tue, 5 Apr 2011 18:44:16 +0000 (19:44 +0100)]
fish: copy-in, copy-out, edit, more commands can use win:... prefix.

13 years agofish: Enhance guestfish win:... parsing to understand drive letters.
Richard W.M. Jones [Tue, 5 Apr 2011 18:43:30 +0000 (19:43 +0100)]
fish: Enhance guestfish win:... parsing to understand drive letters.

13 years agoedit: Allow Windows-style drive letters and paths to be used.
Richard W.M. Jones [Tue, 5 Apr 2011 17:23:39 +0000 (18:23 +0100)]
edit: Allow Windows-style drive letters and paths to be used.

13 years agoNew API: inspect-get-drive-mappings
Richard W.M. Jones [Tue, 5 Apr 2011 13:03:08 +0000 (14:03 +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>

13 years agoNew API: inspect-get-windows-current-control-set
Richard W.M. Jones [Tue, 5 Apr 2011 11:44:34 +0000 (12:44 +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.

13 years agodaemon: Reimplement 'mounts' and 'mountpoints' commands.
Richard W.M. Jones [Tue, 5 Apr 2011 18:42:00 +0000 (19:42 +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.

13 years agoRename resolve_windows_path_silently to case_sensitive_path_silently.
Richard W.M. Jones [Tue, 5 Apr 2011 17:44:55 +0000 (18:44 +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.

13 years agoedit: Move 'exit 0' to end of file.
Richard W.M. Jones [Tue, 5 Apr 2011 16:46:23 +0000 (17:46 +0100)]
edit: Move 'exit 0' to end of file.

This is just code motion.

13 years agoedit: Let $root == $roots[0].
Richard W.M. Jones [Tue, 5 Apr 2011 16:45:41 +0000 (17:45 +0100)]
edit: Let $root == $roots[0].

This is just code motion.

13 years agocat, edit: Reference guestfish equivalent commands in the manual pages.
Richard W.M. Jones [Tue, 5 Apr 2011 16:44:41 +0000 (17:44 +0100)]
cat, edit: Reference guestfish equivalent commands in the manual pages.

13 years agopython: Convert any iterable argument to a list (RHBZ#693324).
Richard W.M. Jones [Mon, 4 Apr 2011 11:48:02 +0000 (12:48 +0100)]
python: Convert any iterable argument to a list (RHBZ#693324).

Thanks to Erez Shinan.

13 years agofish: Add 'pulse mode' to the progress bar.
Richard W.M. Jones [Sat, 2 Apr 2011 21:32:36 +0000 (22:32 +0100)]
fish: Add 'pulse mode' to the progress bar.

13 years agofish: Move variable decls to top of function.
Richard W.M. Jones [Sat, 2 Apr 2011 21:31:41 +0000 (22:31 +0100)]
fish: Move variable decls to top of function.

This is just code motion.

13 years agodebian: Add missing deps: ocaml-findlib, libstring-shellquote-perl.
Nikita A Menkovich [Sat, 2 Apr 2011 10:05:19 +0000 (11:05 +0100)]
debian: Add missing deps: ocaml-findlib, libstring-shellquote-perl.

13 years agomkisofs is obsolete. Require genisoimage everywhere instead.
Nikita A Menkovich [Sat, 2 Apr 2011 10:04:47 +0000 (11:04 +0100)]
mkisofs is obsolete.  Require genisoimage everywhere instead.

13 years agoPull translations from Transifex.
Richard W.M. Jones [Sat, 2 Apr 2011 08:14:41 +0000 (09:14 +0100)]
Pull translations from Transifex.

New Ukrainian po-docs translation added.

13 years agoVersion 1.9.16. 1.9.16
Richard W.M. Jones [Fri, 1 Apr 2011 19:37:01 +0000 (20:37 +0100)]
Version 1.9.16.

13 years agodu: Add pulse mode progress messages.
Richard W.M. Jones [Fri, 1 Apr 2011 15:03:14 +0000 (16:03 +0100)]
du: Add pulse mode progress messages.

13 years agocpmv: Add pulse mode progress messages.
Richard W.M. Jones [Fri, 1 Apr 2011 17:37:29 +0000 (18:37 +0100)]
cpmv: Add pulse mode progress messages.

13 years agochecksum: Add pulse mode progress messages.
Richard W.M. Jones [Fri, 1 Apr 2011 17:37:39 +0000 (18:37 +0100)]
checksum: Add pulse mode progress messages.

13 years agodaemon: Introduce "pulse mode" progress events.
Richard W.M. Jones [Fri, 1 Apr 2011 14:50:33 +0000 (15:50 +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.

13 years agodaemon: When running commands, restart select if we receive a signal.
Richard W.M. Jones [Fri, 1 Apr 2011 14:27:46 +0000 (15:27 +0100)]
daemon: When running commands, restart select if we receive a signal.

13 years agodaemon: Reset SIGPIPE to default before running subprocesses.
Richard W.M. Jones [Fri, 1 Apr 2011 14:26:46 +0000 (15:26 +0100)]
daemon: Reset SIGPIPE to default before running subprocesses.

13 years agoGenerate progress messages during launch.
Richard W.M. Jones [Fri, 1 Apr 2011 12:30:48 +0000 (13:30 +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).

13 years agoprotocol: Sleep for 1ms before reading log messages.
Richard W.M. Jones [Fri, 1 Apr 2011 12:29:06 +0000 (13:29 +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
   */

13 years agoShared function to send progress messages.
Richard W.M. Jones [Fri, 1 Apr 2011 11:17:22 +0000 (12:17 +0100)]
Shared function to send progress messages.

This is just code motion.

13 years agoAdd prototype for timeval_diff.
Richard W.M. Jones [Fri, 1 Apr 2011 12:30:24 +0000 (13:30 +0100)]
Add prototype for timeval_diff.

This is just code motion.

13 years agodocs: Progress messages don't necessarily reach 100% in the error case.
Richard W.M. Jones [Fri, 1 Apr 2011 12:54:18 +0000 (13:54 +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.

13 years agodocs: Fix link to progress messages in guestfs(3).
Richard W.M. Jones [Fri, 1 Apr 2011 12:48:14 +0000 (13:48 +0100)]
docs: Fix link to progress messages in guestfs(3).

This updates commit 4e0cf4dbf8a8a96288f70114fdc3939da0aa7ad1.

13 years agoUpdate copyright date on main guestfs(3) man page.
Richard W.M. Jones [Fri, 1 Apr 2011 14:28:42 +0000 (15:28 +0100)]
Update copyright date on main guestfs(3) man page.

13 years agoVersion 1.9.15. 1.9.15
Richard W.M. Jones [Fri, 1 Apr 2011 08:53:53 +0000 (09:53 +0100)]
Version 1.9.15.