libguestfs.git
8 years agoregressions: Enable both tests for bug 576879 (not fixed).
Richard W.M. Jones [Fri, 18 Mar 2011 11:22:25 +0000 (11:22 +0000)]
regressions: Enable both tests for bug 576879 (not fixed).

8 years agodaemon: Print error for invalid chunk.cancel field.
Richard W.M. Jones [Fri, 18 Mar 2011 11:21:55 +0000 (11:21 +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.

8 years agoproto: Improve debug messages.
Richard W.M. Jones [Fri, 18 Mar 2011 11:20:26 +0000 (11:20 +0000)]
proto: Improve debug messages.

8 years agohaskell: Small fixes for ghc 7.
Richard W.M. Jones [Fri, 18 Mar 2011 11:19:31 +0000 (11:19 +0000)]
haskell: Small fixes for ghc 7.

8 years agoregressions: Rename the file we are uploading too.
Richard W.M. Jones [Thu, 17 Mar 2011 12:46:57 +0000 (12:46 +0000)]
regressions: Rename the file we are uploading too.

This updates commit cbd8da6d4dd2e4cbc3b87fbc7cb7d6129eb69172.

8 years agoregressions: Split the test rhbz576879.sh into two halves.
Richard W.M. Jones [Thu, 17 Mar 2011 11:57:40 +0000 (11:57 +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.

8 years agotests: Ignore return value from fwrite.
Richard W.M. Jones [Wed, 16 Mar 2011 11:50:16 +0000 (11:50 +0000)]
tests: Ignore return value from fwrite.

8 years agoVersion 1.9.11. 1.9.11
Richard W.M. Jones [Tue, 15 Mar 2011 21:49:53 +0000 (21:49 +0000)]
Version 1.9.11.

8 years agoruby: Missing files from EXTRA_DIST.
Richard W.M. Jones [Tue, 15 Mar 2011 22:00:54 +0000 (22:00 +0000)]
ruby: Missing files from EXTRA_DIST.

8 years agoperl: Binding and test for guestfs_last_errno (RHBZ#672491).
Richard W.M. Jones [Tue, 15 Mar 2011 16:46:00 +0000 (16:46 +0000)]
perl: Binding and test for guestfs_last_errno (RHBZ#672491).

8 years agoruby: Use ALLOC_N to avoid potential memory leak (RHBZ#667610).
Richard W.M. Jones [Tue, 15 Mar 2011 15:00:58 +0000 (15:00 +0000)]
ruby: Use ALLOC_N to avoid potential memory leak (RHBZ#667610).

8 years agoruby: Remove unnecessary checking around StringValueCStr (RHBZ#667610).
Richard W.M. Jones [Tue, 15 Mar 2011 14:52:03 +0000 (14:52 +0000)]
ruby: Remove unnecessary checking around StringValueCStr (RHBZ#667610).

8 years agoruby: Add rdoc documentation (RHBZ#667610).
Richard W.M. Jones [Tue, 15 Mar 2011 14:48:12 +0000 (14:48 +0000)]
ruby: Add rdoc documentation (RHBZ#667610).

8 years agoNew event API - Ruby bindings (RHBZ#664558).
Richard W.M. Jones [Mon, 14 Mar 2011 22:37:21 +0000 (22:37 +0000)]
New event API - Ruby bindings (RHBZ#664558).

8 years agoNew event API - Perl bindings (RHBZ#664558).
Richard W.M. Jones [Mon, 14 Mar 2011 19:42:47 +0000 (19:42 +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.

8 years agoNew event API - OCaml bindings (RHBZ#664558).
Richard W.M. Jones [Mon, 14 Mar 2011 16:44:17 +0000 (16:44 +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.

8 years agoNew event API (RHBZ#664558).
Richard W.M. Jones [Thu, 10 Mar 2011 12:32:22 +0000 (12:32 +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.

8 years agoNew APIs: guestfs_first_private, guestfs_next_private to walk over
Richard W.M. Jones [Mon, 14 Mar 2011 13:19:47 +0000 (13:19 +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).

8 years agocheck the pid is > 0 before calling waitpid()
Angus Salkeld [Tue, 15 Mar 2011 11:43:02 +0000 (22:43 +1100)]
check the pid is > 0 before calling waitpid()

Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
8 years agocheck the pid is > 0 before calling waitpid()
Angus Salkeld [Mon, 14 Mar 2011 11:40:12 +0000 (22:40 +1100)]
check the pid is > 0 before calling waitpid()

Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
8 years agoRHEL5: Old pod2man didn't have --stderr or -u options.
Richard W.M. Jones [Fri, 11 Mar 2011 10:47:05 +0000 (10:47 +0000)]
RHEL5: Old pod2man didn't have --stderr or -u options.

8 years agoconfigure: Remove unnecessary variable assignment.
Richard W.M. Jones [Fri, 11 Mar 2011 10:23:58 +0000 (10:23 +0000)]
configure: Remove unnecessary variable assignment.

Left over from pre-virtio-serial days.

8 years agoRHEL5: Make use of 'futimens' function optional.
Richard W.M. Jones [Fri, 11 Mar 2011 10:22:58 +0000 (10:22 +0000)]
RHEL5: Make use of 'futimens' function optional.

8 years agoVersion 1.9.10. 1.9.10
Richard W.M. Jones [Tue, 8 Mar 2011 16:22:10 +0000 (16:22 +0000)]
Version 1.9.10.

8 years agoDetect Red Hat Desktop as 'rhel' distro (RHBZ#682979).
Richard W.M. Jones [Tue, 8 Mar 2011 08:10:19 +0000 (08:10 +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.

8 years agoInclude <locale.h> in compilation units that use setlocale function.
Richard W.M. Jones [Mon, 7 Mar 2011 19:30:31 +0000 (19:30 +0000)]
Include <locale.h> in compilation units that use setlocale function.

Fix required by gcc 4.6.0.

8 years agogenerator: Introduce error code (errcode) concept.
Richard W.M. Jones [Mon, 7 Mar 2011 19:28:30 +0000 (19:28 +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.

8 years agoFix trace segfault for non-daemon functions (RHBZ#682756).
Richard W.M. Jones [Mon, 7 Mar 2011 15:55:56 +0000 (15:55 +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.

8 years agoFix URL of transifex instance to be the canonical one.
Richard W.M. Jones [Mon, 7 Mar 2011 10:53:22 +0000 (10:53 +0000)]
Fix URL of transifex instance to be the canonical one.

This updates commit 182a2ceae6d6f50448159e24d8b5c0c92f44407f.

8 years agoImport project into transifex.
Richard W.M. Jones [Mon, 7 Mar 2011 10:45:27 +0000 (10:45 +0000)]
Import project into transifex.

http://www.transifex.net/projects/p/libguestfs/

8 years agodebian: Rename nilfs2-tools to nilfs-tools.
Richard W.M. Jones [Sat, 5 Mar 2011 09:17:41 +0000 (09:17 +0000)]
debian: Rename nilfs2-tools to nilfs-tools.

8 years agovirt-make-fs: Round disk size to integer, fix for qemu-img 0.14.
Richard W.M. Jones [Fri, 4 Mar 2011 12:13:32 +0000 (12:13 +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.

8 years agovirt-make-fs: In debug mode, print qemu-img command line.
Richard W.M. Jones [Fri, 4 Mar 2011 12:13:12 +0000 (12:13 +0000)]
virt-make-fs: In debug mode, print qemu-img command line.

8 years agoVersion 1.9.9. 1.9.9
Richard W.M. Jones [Fri, 4 Mar 2011 09:59:15 +0000 (09:59 +0000)]
Version 1.9.9.

8 years agoFix inspection code when PCRE or hivex is missing.
Richard W.M. Jones [Thu, 3 Mar 2011 13:23:23 +0000 (13:23 +0000)]
Fix inspection code when PCRE or hivex is missing.

8 years agojava: Add a test of g.list_filesystems (a function that returns a Map).
Richard W.M. Jones [Wed, 2 Mar 2011 05:11:10 +0000 (05:11 +0000)]
java: Add a test of g.list_filesystems (a function that returns a Map).

8 years agojava: Fix generated functions that return RHashtable.
Richard W.M. Jones [Wed, 2 Mar 2011 04:49:12 +0000 (04:49 +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>.

8 years agojava: Return Map<String,String> for RHashtable functions.
Richard W.M. Jones [Wed, 2 Mar 2011 04:33:39 +0000 (04:33 +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.

8 years agojava: Fix a minor whitespace error in generated code.
Richard W.M. Jones [Wed, 2 Mar 2011 04:30:30 +0000 (04:30 +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.

8 years agojava: Remove old test file if one was left around.
Richard W.M. Jones [Wed, 2 Mar 2011 05:10:31 +0000 (05:10 +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.

8 years agojava: Enable assertions when doing 'make check'.
Richard W.M. Jones [Wed, 2 Mar 2011 05:08:20 +0000 (05:08 +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.

8 years agoVersion 1.9.8. 1.9.8
Richard W.M. Jones [Sun, 6 Feb 2011 17:18:24 +0000 (17:18 +0000)]
Version 1.9.8.

8 years agodaemon: Ignore return value from chdir.
Richard W.M. Jones [Thu, 3 Feb 2011 19:33:30 +0000 (19:33 +0000)]
daemon: Ignore return value from chdir.

This updates commit 7eb012f3710bb554d5fc2c4229036901b0b5ad90.

8 years agofish: Add guestfish --live, guestmount --live options.
Richard W.M. Jones [Fri, 28 Jan 2011 19:25:02 +0000 (19:25 +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.

8 years agoAdd documentation for attach method.
Richard W.M. Jones [Thu, 27 Jan 2011 22:45:50 +0000 (22:45 +0000)]
Add documentation for attach method.

8 years agoAdd guestfs_add_domain 'live' flag.
Richard W.M. Jones [Fri, 28 Jan 2011 13:19:52 +0000 (13:19 +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.

8 years agolib: Implement attach-method unix:<path>
Richard W.M. Jones [Thu, 27 Jan 2011 15:54:33 +0000 (15:54 +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).

8 years agodaemon: Remove -f (don't fork) option.
Richard W.M. Jones [Fri, 28 Jan 2011 15:44:40 +0000 (15:44 +0000)]
daemon: Remove -f (don't fork) option.

This option was not being used.

8 years agodaemon: Allow -r option to run daemon standalone.
Richard W.M. Jones [Thu, 27 Jan 2011 16:54:48 +0000 (16:54 +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

8 years agodaemon: change to root directory
Richard W.M. Jones [Thu, 3 Feb 2011 18:49:35 +0000 (18:49 +0000)]
daemon: change to root directory

Ensure the daemon always starts with current directory == root.

8 years agoNew APIs: set-attach-method, get-attach-method.
Richard W.M. Jones [Thu, 27 Jan 2011 11:20:43 +0000 (11:20 +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.

8 years agolib: Move appliance launching to separate function.
Richard W.M. Jones [Thu, 27 Jan 2011 10:12:34 +0000 (10:12 +0000)]
lib: Move appliance launching to separate function.

This is just code motion.

8 years agophp: Ignore another generated file in php/extension directory.
Richard W.M. Jones [Thu, 3 Feb 2011 10:56:01 +0000 (10:56 +0000)]
php: Ignore another generated file in php/extension directory.

8 years agodaemon: Parse /proc/mounts instead of /etc/mtab
Richard W.M. Jones [Thu, 3 Feb 2011 09:39:49 +0000 (09:39 +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

8 years agoregressions: Fix rhbz557655.sh so it works with tracing enabled.
Richard W.M. Jones [Wed, 2 Feb 2011 20:26:19 +0000 (20:26 +0000)]
regressions: Fix rhbz557655.sh so it works with tracing enabled.

8 years agoguestfs-perl: Fix missing \n
Richard W.M. Jones [Mon, 31 Jan 2011 09:34:47 +0000 (09:34 +0000)]
guestfs-perl: Fix missing \n

This updates commit 477eebc83dcd33d00d34398692692dae6af04f22.

8 years agoVersion 1.9.7. 1.9.7
Richard W.M. Jones [Sun, 30 Jan 2011 23:53:15 +0000 (23:53 +0000)]
Version 1.9.7.

8 years agovirt-make-fs: Fix typo in man page.
Richard W.M. Jones [Sun, 30 Jan 2011 23:53:04 +0000 (23:53 +0000)]
virt-make-fs: Fix typo in man page.

8 years agoperl: Translate C examples into Perl and include a manual page.
Richard W.M. Jones [Sun, 30 Jan 2011 23:41:05 +0000 (23:41 +0000)]
perl: Translate C examples into Perl and include a manual page.

8 years agoperl: Ignore internal_* functions in POD coverage test.
Richard W.M. Jones [Sat, 29 Jan 2011 07:01:06 +0000 (07:01 +0000)]
perl: Ignore internal_* functions in POD coverage test.

This updates commit 1d999540bddd7aea7c2d0fef8b15223d4acc645f.

8 years agoFix test-guestfish-a.sh regression test for new trace format.
Richard W.M. Jones [Fri, 28 Jan 2011 22:51:36 +0000 (22:51 +0000)]
Fix test-guestfish-a.sh regression test for new trace format.

This fixes commit 1d999540bddd7aea7c2d0fef8b15223d4acc645f.

8 years agoautobuild: Add a 'make clean' step.
Richard W.M. Jones [Fri, 28 Jan 2011 21:41:06 +0000 (21:41 +0000)]
autobuild: Add a 'make clean' step.

8 years agolib: Fix use-after-free bug in XPath parsing code.
Richard W.M. Jones [Fri, 28 Jan 2011 17:11:40 +0000 (17:11 +0000)]
lib: Fix use-after-free bug in XPath parsing code.

8 years agoAdd a new internal-autosync API to perform autosync.
Richard W.M. Jones [Fri, 28 Jan 2011 15:28:25 +0000 (15:28 +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.

8 years agoAdd a prefix to output when tracing (RHBZ#673479).
Richard W.M. Jones [Fri, 28 Jan 2011 11:14:42 +0000 (11:14 +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.

8 years agodaemon: Replace root_mounted global with intelligence.
Richard W.M. Jones [Thu, 27 Jan 2011 17:27:41 +0000 (17:27 +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.

8 years agodaemon: Add perror to two exit paths to make errors clearer.
Richard W.M. Jones [Thu, 27 Jan 2011 15:54:00 +0000 (15:54 +0000)]
daemon: Add perror to two exit paths to make errors clearer.

8 years agodebian: Include actual shared libraries in python-guestfs package.
Richard W.M. Jones [Thu, 27 Jan 2011 09:23:01 +0000 (09:23 +0000)]
debian: Include actual shared libraries in python-guestfs package.

8 years agomkfs-opts: Add optional "features" parameter.
Nikita A Menkovich [Wed, 26 Jan 2011 15:34:01 +0000 (15:34 +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.

8 years agomkfs-opts: Add a note about blocksize param and UFS filesystems.
Nikita A Menkovich [Wed, 26 Jan 2011 15:32:18 +0000 (15:32 +0000)]
mkfs-opts: Add a note about blocksize param and UFS filesystems.

8 years agogenerator: Fix generation of library-side stubs with optional String arguments.
Richard W.M. Jones [Wed, 26 Jan 2011 14:15:23 +0000 (14:15 +0000)]
generator: Fix generation of library-side stubs with optional String arguments.

8 years agopackagelist: Add ufsutils for Debian and Ubuntu.
Richard W.M. Jones [Wed, 26 Jan 2011 10:00:44 +0000 (10:00 +0000)]
packagelist: Add ufsutils for Debian and Ubuntu.

Note there is no mkfs.ufs available for Fedora (see RHBZ#541618
for details).

8 years agoVersion 1.9.6. 1.9.6
Richard W.M. Jones [Sat, 22 Jan 2011 18:05:35 +0000 (18:05 +0000)]
Version 1.9.6.

8 years agofish: Fix typo in error message (copy-in should be copy-out).
Richard W.M. Jones [Sat, 22 Jan 2011 14:46:37 +0000 (14:46 +0000)]
fish: Fix typo in error message (copy-in should be copy-out).

8 years agoUse /var/tmp for the cached appliance (for FHS compliance).
Richard W.M. Jones [Wed, 19 Jan 2011 21:47:23 +0000 (21:47 +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

8 years agofish: Initialize pcmd structure.
Richard W.M. Jones [Tue, 18 Jan 2011 22:38:05 +0000 (22:38 +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]

8 years agoVersion 1.9.5 1.9.5
Richard W.M. Jones [Tue, 18 Jan 2011 13:21:30 +0000 (13:21 +0000)]
Version 1.9.5

8 years agofish: <! cmd executes a shell command and inlines the resulting commands.
Richard W.M. Jones [Tue, 18 Jan 2011 11:46:03 +0000 (11:46 +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.

8 years agofish: Factor out command line parsing.
Richard W.M. Jones [Tue, 18 Jan 2011 11:24:38 +0000 (11:24 +0000)]
fish: Factor out command line parsing.

Factor out the code which splits a string into a command line.

8 years agofish: Make exit_on_error into a completely local variable.
Richard W.M. Jones [Tue, 18 Jan 2011 10:33:01 +0000 (10:33 +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.

8 years agofish: exit_on_error is a local variable.
Richard W.M. Jones [Tue, 18 Jan 2011 10:21:49 +0000 (10:21 +0000)]
fish: exit_on_error is a local variable.

8 years agotodo: Live CD inspection works, but not for Windows 7.
Richard W.M. Jones [Sat, 15 Jan 2011 16:40:49 +0000 (16:40 +0000)]
todo: Live CD inspection works, but not for Windows 7.

8 years agoVersion 1.9.4. 1.9.4
Richard W.M. Jones [Sat, 15 Jan 2011 14:56:36 +0000 (14:56 +0000)]
Version 1.9.4.

8 years agoREADME: Note that po4a is mandatory if compiling from git.
Richard W.M. Jones [Sat, 15 Jan 2011 14:56:25 +0000 (14:56 +0000)]
README: Note that po4a is mandatory if compiling from git.

8 years agoAdd ability to inspect install disks and live CDs.
Richard W.M. Jones [Fri, 14 Jan 2011 22:20:51 +0000 (22:20 +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.

8 years agoinspect: Add macros for file size limits.
Richard W.M. Jones [Sat, 15 Jan 2011 13:18:36 +0000 (13:18 +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.

8 years agoNew API: resize2fs-M to resize ext2/3/4 to minimum size.
Nikita A Menkovich [Fri, 14 Jan 2011 13:39:38 +0000 (13:39 +0000)]
New API: resize2fs-M to resize ext2/3/4 to minimum size.

8 years agoVersion 1.9.3. 1.9.3
Richard W.M. Jones [Tue, 11 Jan 2011 21:54:57 +0000 (21:54 +0000)]
Version 1.9.3.

8 years agodf: Skip final '/' character when calculating basename.
Richard W.M. Jones [Tue, 11 Jan 2011 13:55:23 +0000 (13:55 +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.

8 years agofish: Don't fail if some mountpoints in /etc/fstab are bogus (RHBZ#668574).
Richard W.M. Jones [Tue, 11 Jan 2011 10:43:51 +0000 (10:43 +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

8 years agoAdd logo used on the website.
Richard W.M. Jones [Tue, 11 Jan 2011 10:47:11 +0000 (10:47 +0000)]
Add logo used on the website.

8 years agoAdd cartoon fish logo (not completed).
Richard W.M. Jones [Mon, 10 Jan 2011 10:41:20 +0000 (10:41 +0000)]
Add cartoon fish logo (not completed).

8 years agotodo: /proc/self/mountinfo
Richard W.M. Jones [Sun, 9 Jan 2011 13:13:02 +0000 (13:13 +0000)]
todo: /proc/self/mountinfo

8 years agotodo: Add notes on inspecting ISO images.
Richard W.M. Jones [Sat, 8 Jan 2011 20:51:58 +0000 (20:51 +0000)]
todo: Add notes on inspecting ISO images.

8 years agovirt-filesystems: Ignore errors when getting label and UUID (RHBZ#668112).
Richard W.M. Jones [Sat, 8 Jan 2011 10:15:39 +0000 (10:15 +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.

8 years agoresize: Fix typo in man page (thanks avesh@IRC).
Richard W.M. Jones [Fri, 7 Jan 2011 20:38:55 +0000 (20:38 +0000)]
resize: Fix typo in man page (thanks avesh@IRC).

8 years agofish: fails to tilde expand '~' when $HOME env is unset (RHBZ#617440).
Richard W.M. Jones [Tue, 4 Jan 2011 16:05:11 +0000 (16:05 +0000)]
fish: fails to tilde expand '~' when $HOME env is unset (RHBZ#617440).

This also adds a regression test.

8 years agofish: Fix off-by-one bug in tilde expansion.
Richard W.M. Jones [Tue, 4 Jan 2011 16:02:48 +0000 (16:02 +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

8 years agoVersion 1.9.2. 1.9.2
Richard W.M. Jones [Mon, 3 Jan 2011 17:31:46 +0000 (17:31 +0000)]
Version 1.9.2.

8 years agoNew tools: virt-copy-in, virt-copy-out, virt-tar-in, virt-tar-out.
Richard W.M. Jones [Mon, 3 Jan 2011 17:16:44 +0000 (17:16 +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.