Richard W.M. Jones [Tue, 28 Jun 2011 08:58:44 +0000 (09:58 +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.
Richard W.M. Jones [Tue, 28 Jun 2011 09:36:09 +0000 (10:36 +0100)]
guestfs.h: Tidy up *_argv structs and other #defines.
Richard W.M. Jones [Mon, 27 Jun 2011 17:14:15 +0000 (18:14 +0100)]
Revert "Lib.pm: unknown filesystem label SWAP-sda2 (RHBZ#666578)"
This reverts commit
5cab0d6c807d8a3bf9690375c663d11a10e21656.
Richard W.M. Jones [Wed, 22 Jun 2011 12:55:14 +0000 (13:55 +0100)]
New API: mount-9p lets you mount 9p filesystems (RHBZ#714981).
The updated patch makes 'options' into an optional parameter.
Richard W.M. Jones [Wed, 22 Jun 2011 09:13:23 +0000 (10:13 +0100)]
New API: list-9p lists 9p filesystem mount tags (RHBZ#714981).
Richard W.M. Jones [Wed, 22 Jun 2011 09:36:44 +0000 (10:36 +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.
Richard W.M. Jones [Tue, 21 Jun 2011 12:22:16 +0000 (13:22 +0100)]
Version 1.11.11.
Richard W.M. Jones [Mon, 20 Jun 2011 09:35:02 +0000 (10:35 +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
Richard W.M. Jones [Sat, 18 Jun 2011 12:04:18 +0000 (13:04 +0100)]
perl: Ignore MYMETA.yml.
This file is created by one of the build tools used by Perl 5.14.
Richard W.M. Jones [Sat, 18 Jun 2011 12:01:12 +0000 (13:01 +0100)]
todo: Idea for interactive disk creator program.
Richard W.M. Jones [Sat, 18 Jun 2011 12:00:00 +0000 (13:00 +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.
Richard W.M. Jones [Mon, 13 Jun 2011 17:58:53 +0000 (18:58 +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
Richard W.M. Jones [Fri, 10 Jun 2011 15:03:55 +0000 (16:03 +0100)]
Version 1.11.10.
Jim Meyering [Fri, 10 Jun 2011 09:57:20 +0000 (11:57 +0200)]
build: include <string.h> for src/match.c's use of strlen
Jim Meyering [Thu, 9 Jun 2011 20:15:52 +0000 (22:15 +0200)]
bootstrap: use --libtool
Jim Meyering [Tue, 7 Jun 2011 17:48:16 +0000 (19:48 +0200)]
build: update to latest gnulib
* .gnulib: Update submodule to latest.
* daemon/m4/gnulib-cache.m4: Regenerate.
Richard W.M. Jones [Thu, 9 Jun 2011 09:10:50 +0000 (10:10 +0100)]
daemon: Keep Coverity happy by ignoring some return values.
Richard W.M. Jones [Thu, 9 Jun 2011 08:39:54 +0000 (09:39 +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.
Richard W.M. Jones [Wed, 8 Jun 2011 21:38:53 +0000 (22:38 +0100)]
Coverity: Missing return on error path.
Richard W.M. Jones [Wed, 8 Jun 2011 21:30:24 +0000 (22:30 +0100)]
Coverity: Ensure fp is closed along all error paths.
Richard W.M. Jones [Wed, 8 Jun 2011 21:27:01 +0000 (22:27 +0100)]
Coverity: Close directory handle along error paths.
Richard W.M. Jones [Wed, 8 Jun 2011 21:25:21 +0000 (22:25 +0100)]
Coverity: Don't leak argv arrays.
Richard W.M. Jones [Wed, 8 Jun 2011 21:16:59 +0000 (22:16 +0100)]
Coverity: Don't leak error strings.
Richard W.M. Jones [Wed, 8 Jun 2011 21:14:21 +0000 (22:14 +0100)]
Coverity: Check return value of sysroot_path.
For some reason we were checking the parameter!
Richard W.M. Jones [Wed, 8 Jun 2011 21:07:36 +0000 (22:07 +0100)]
Coverity: Check return value of malloc.
Richard W.M. Jones [Wed, 8 Jun 2011 21:04:25 +0000 (22:04 +0100)]
Coverity: Don't close fd_cwd if fd_cwd == -1.
Richard W.M. Jones [Wed, 8 Jun 2011 21:01:41 +0000 (22:01 +0100)]
Coverity: Avoid calling sort_strings (NULL, 0) on empty list.
Richard W.M. Jones [Wed, 8 Jun 2011 20:56:56 +0000 (21:56 +0100)]
Coverity: Don't call free_strings (NULL).
Richard W.M. Jones [Wed, 8 Jun 2011 20:53:07 +0000 (21:53 +0100)]
Coverity: Remove unreachable code.
Richard W.M. Jones [Wed, 8 Jun 2011 12:12:01 +0000 (13:12 +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.
Richard W.M. Jones [Tue, 7 Jun 2011 11:36:02 +0000 (12:36 +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.
Richard W.M. Jones [Sat, 4 Jun 2011 21:22:44 +0000 (22:22 +0100)]
Version 1.11.9.
Richard W.M. Jones [Sat, 4 Jun 2011 21:47:52 +0000 (22:47 +0100)]
Only include date, not time, in BUGS file.
This is so the file does not change so often when using 'make dist'.
Richard W.M. Jones [Sat, 4 Jun 2011 21:22:04 +0000 (22:22 +0100)]
Remove dependency diagram, since it is very out of date.
Richard W.M. Jones [Fri, 3 Jun 2011 16:00:07 +0000 (17:00 +0100)]
virt-ls: Add virt-ls -lR option for complex file iteration.
Richard W.M. Jones [Fri, 3 Jun 2011 14:19:05 +0000 (15:19 +0100)]
virt-ls: Refactor mode selection code.
This is just code motion.
Richard W.M. Jones [Fri, 3 Jun 2011 13:49:19 +0000 (14:49 +0100)]
virt-ls: Small fix for output of --help option.
Richard W.M. Jones [Sat, 4 Jun 2011 12:13:11 +0000 (13:13 +0100)]
Ubuntu: Fix compilation of virt-resize if old libguestfs already installed.
Richard W.M. Jones [Fri, 3 Jun 2011 08:41:20 +0000 (09:41 +0100)]
recipes: in tr command \000 should be \0
Nikita A Menkovich [Fri, 20 May 2011 10:26:09 +0000 (11:26 +0100)]
daemon: Fix error message.
Richard W.M. Jones [Fri, 20 May 2011 09:54:55 +0000 (10:54 +0100)]
todo: Document thoughts on visiting files.
Nikita A Menkovich [Fri, 20 May 2011 09:35:06 +0000 (10:35 +0100)]
debian: Add build dependencies: dpkg-dev, devscripts, gperf.
Richard W.M. Jones [Thu, 19 May 2011 13:44:02 +0000 (14:44 +0100)]
daemon: Make sysroot_len be size_t instead of int.
Richard W.M. Jones [Wed, 18 May 2011 21:23:05 +0000 (22:23 +0100)]
todo: Remove event log parsing - done.
Richard W.M. Jones [Wed, 18 May 2011 20:11:47 +0000 (21:11 +0100)]
build: Install guestfs-recipes.1.html on website.
This updates commit
f2c7df589c7e161f33b46d05a943b5489dc2cffe.
Richard W.M. Jones [Wed, 18 May 2011 14:45:36 +0000 (15:45 +0100)]
Add new guestfs-rescue(1) man page with recipes.
Richard W.M. Jones [Wed, 18 May 2011 14:27:20 +0000 (15:27 +0100)]
Remove guestfish recipes.
These were out of date. We will replace them with more up to date
information.
Richard W.M. Jones [Wed, 18 May 2011 14:32:59 +0000 (15:32 +0100)]
guestfs-examples(3): Remove link to OCaml homepage.
Richard W.M. Jones [Wed, 18 May 2011 09:04:37 +0000 (10:04 +0100)]
Version 1.11.8.
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
Richard W.M. Jones [Tue, 17 May 2011 21:54:20 +0000 (22:54 +0100)]
virt-win-reg: Win XP paths can contain %systemdrive%.
Richard W.M. Jones [Tue, 17 May 2011 21:53:53 +0000 (22:53 +0100)]
virt-win-reg: systemroot macro should be replaced case insensitive.
Richard W.M. Jones [Tue, 17 May 2011 21:06:00 +0000 (22:06 +0100)]
New APIs: is-zero and is-zero-device, to test if file or device is all zeroes.
Richard W.M. Jones [Tue, 17 May 2011 19:57:56 +0000 (20:57 +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.
Richard W.M. Jones [Tue, 17 May 2011 18:51:37 +0000 (19:51 +0100)]
fuse: Add note about allowing other users to see filesystem (RHBZ#705200).
Richard W.M. Jones [Tue, 17 May 2011 16:48:48 +0000 (17:48 +0100)]
Version 1.11.7.
Richard W.M. Jones [Tue, 17 May 2011 14:52:28 +0000 (15:52 +0100)]
generator: Mark sfdisk functions as deprecated.
Point to the part-* API calls as replacements.
Richard W.M. Jones [Tue, 17 May 2011 14:52:16 +0000 (15:52 +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
Richard W.M. Jones [Tue, 17 May 2011 14:51:25 +0000 (15:51 +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.
Richard W.M. Jones [Tue, 17 May 2011 14:50:16 +0000 (15:50 +0100)]
generator: Check the flags fields.
Richard W.M. Jones [Tue, 17 May 2011 14:04:56 +0000 (15:04 +0100)]
Enable deprecation warnings on all C programs.
Richard W.M. Jones [Tue, 17 May 2011 13:46:16 +0000 (14:46 +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.
Richard W.M. Jones [Tue, 17 May 2011 13:41:54 +0000 (14:41 +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.
Richard W.M. Jones [Tue, 17 May 2011 13:41:34 +0000 (14:41 +0100)]
lib: Add GCC version macro to the header file.
This will be used to internally enable various GCC enhancements.
Richard W.M. Jones [Tue, 17 May 2011 13:43:48 +0000 (14:43 +0100)]
lib: Add vertical space between each function in <guestfs.h>.
Richard W.M. Jones [Tue, 17 May 2011 12:58:20 +0000 (13:58 +0100)]
appliance: Use qemu -machine option where available (RHBZ#700369).
Richard W.M. Jones [Tue, 17 May 2011 12:16:17 +0000 (13:16 +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.
Richard W.M. Jones [Tue, 17 May 2011 12:15:25 +0000 (13:15 +0100)]
virt-win-reg: Don't use implicit $_ in map_path_to_hive function.
Richard W.M. Jones [Tue, 17 May 2011 08:00:30 +0000 (09:00 +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.
Richard W.M. Jones [Tue, 17 May 2011 10:28:00 +0000 (11:28 +0100)]
virt-win-reg: Add --unsafe-printable-strings option.
This also requires hivex >= 1.2.7.
Richard W.M. Jones [Mon, 16 May 2011 11:08:00 +0000 (12:08 +0100)]
todo: See if qemu -machine option can be used to select KVM, TCG acceleration.
Richard W.M. Jones [Thu, 12 May 2011 15:31:29 +0000 (16:31 +0100)]
Version 1.11.6.
Richard W.M. Jones [Thu, 12 May 2011 15:04:16 +0000 (16:04 +0100)]
debian: Note that libconfig-dev ought to be required.
However it doesn't appear to be in Debian at the moment.
Richard W.M. Jones [Thu, 12 May 2011 12:52:27 +0000 (13:52 +0100)]
debian: Include debian/ directory in tarball.
This makes it simpler to build Debian and Ubuntu packages from the
tarballs.
Richard W.M. Jones [Thu, 12 May 2011 12:50:38 +0000 (13:50 +0100)]
build: Sort EXTRA_DIST into lexicographic order.
Richard W.M. Jones [Mon, 9 May 2011 15:30:30 +0000 (16:30 +0100)]
configure: Use Python platform-dependent site-packages.
This updates commit
c446e6e26e317e105870b0ab25fb082887e23bf6.
Richard W.M. Jones [Mon, 9 May 2011 14:22:32 +0000 (15:22 +0100)]
Version 1.11.5.
Richard W.M. Jones [Mon, 9 May 2011 13:59:33 +0000 (14:59 +0100)]
edit: Reorganize options alphabetically.
Richard W.M. Jones [Mon, 9 May 2011 13:40:12 +0000 (14:40 +0100)]
edit: Fix reference to virt-cat in the documentation.
This updates commit
2b5fbc882a0a79646b668c7b95442f0b3673d63a.
Richard W.M. Jones [Mon, 9 May 2011 13:34:31 +0000 (14:34 +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
Richard W.M. Jones [Fri, 6 May 2011 21:42:07 +0000 (17:42 -0400)]
Rewrite virt-edit in C.
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.
Richard W.M. Jones [Sun, 8 May 2011 15:53:03 +0000 (16:53 +0100)]
Version 1.11.4.
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.
Richard W.M. Jones [Fri, 6 May 2011 21:33:44 +0000 (17:33 -0400)]
configure: Sort output files in AC_CONFIG_FILES section.
Richard W.M. Jones [Fri, 6 May 2011 16:23:00 +0000 (12:23 -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
Richard W.M. Jones [Fri, 6 May 2011 16:21:01 +0000 (12:21 -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.
Richard W.M. Jones [Fri, 6 May 2011 16:32:59 +0000 (12:32 -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.
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.
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.
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.
Richard W.M. Jones [Sat, 30 Apr 2011 23:38:20 +0000 (19:38 -0400)]
guestfs(3): Refresh documentation for private data area keys.
Richard W.M. Jones [Sat, 30 Apr 2011 23:26:08 +0000 (19:26 -0400)]
guestfs(3): Document that old callback functions still work.
Richard W.M. Jones [Sat, 30 Apr 2011 23:10:52 +0000 (19:10 -0400)]
guestfs(3): Referenced section is above, not below.
Richard W.M. Jones [Sat, 30 Apr 2011 23:10:25 +0000 (19:10 -0400)]
guestfs(3): Refresh autosync gotcha documentation.
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.
Richard W.M. Jones [Sat, 30 Apr 2011 22:31:06 +0000 (18:31 -0400)]
guestfs(3): Refresh documentation for guestfs_create, guestfs_close.
Richard W.M. Jones [Sat, 30 Apr 2011 09:55:27 +0000 (05:55 -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
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.
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.