| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
| |
(cherry picked from commit 3765f97898a1194d96ab4124e1eb46e25701b3b2)
|
|
|
|
|
|
|
| |
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.
(cherry picked from commit e35debd642bea240609775610b68145dab0a634b)
|
|
|
|
|
|
|
| |
Always check that pid > 0 before calling kill (pid, 9). The
issue was that sometimes pid == 0, and this ends up killing
ourselves.
(cherry picked from commit dc5df3bfec706803e75a5f2454293db30e753249)
|
|
|
|
|
|
|
|
|
| |
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.
(cherry picked from commit fb4ec82d97f71963ea7f830cb0bc38abefcbac99)
|
|
|
|
|
| |
Fedora 11 is almost EOL at this point.
(cherry picked from commit 0ce9b2bb9bcac61f7fb5dd2811d9b3b621f8309b)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
(cherry picked from commit de7ef2a0fdcbcddfd35ecb8ee2804e1ca0968454)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
(cherry picked from commit 07f4b20ae959069fca41756b0dc103ec5fa99754)
|
|
|
|
|
|
|
|
|
| |
$ 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
(cherry picked from commit 4c50f4c38d9a50fbf983c79dd208d1b1598fef8a)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
(cherry picked from commit 2ade61d1f864c75ce65c358e4ac8a012a897b89a)
|
|
|
|
| |
(cherry picked from commit fb0375a0984efca96db1277398f9fe50ecdd578d)
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
This is a re-fix for RHBZ#505329.
|
| |
|
|
|
|
|
| |
We set it on the kernel command line, then get it out from
there when the rescue appliance boots.
|
| |
|
| |
|
|
|
|
|
|
| |
Change the appliance so PATH includes common directories. Thus
we don't need to hard-code paths to binaries (eg. "/sbin/fdisk")
everywhere.
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
OS X has an older version of readline with some differences
in the names of functions.
|
| |
|
|
|
|
|
|
| |
In PortableXDR this is not included automatically so we
have to include it explicitly to get definitions for the
XDR types.
|
|
|
|
| |
This is required because guestfs-actions.c uses 'memset'.
|