| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
This library could now be called from other virt tools.
(cherry picked from commit 6146412f06c2f6f33c3ea7d571f16d4fe71dddb2)
|
|
|
|
| |
(cherry picked from commit c38cb92ec478c4dca83e4d38963720f463d52314)
|
|
|
|
|
| |
pclose can return > 0 when the status of the command was non-zero.
(cherry picked from commit 631faad97171d7c1238b2e413c663cf61476f440)
|
| |
|
|
|
|
|
| |
Decide early (before launch) if this is going to be an interactive
session, and set the is_interactive flag.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
This allows the default for --ro or --rw to be controlled for the
three tools guestfish, guestmount and virt-rescue.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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" "/"
Notes:
Labels: feature
|
|
|
|
|
| |
Notes:
Labels: cleanup
Depends: c8faa5d0b0a17689d27bd33bc787ba0fe9a3f076
|
|
|
|
| |
Notes:
Labels: bugfix
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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]
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Factor out the code which splits a string into a command line.
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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"
|
|
|
|
|
|
|
|
|
|
| |
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'.
|
|
|
|
| |
(Thanks Eric Blake).
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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/
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
This updates commit 8ea62c8d7f3f7f7e4057b93105cf979271aa13f4
so it doesn't try to free the optarg (stack-allocated) strings.
|
|
|
|
|
|
|
|
|
| |
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).
|
|
|
|
|
|
|
|
|
|
| |
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).
|
|
|
|
|
| |
See also:
http://catless.ncl.ac.uk/Risks/26.17.html#subj13.3
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
This corrects commit b5c287bcd456bdb02d8ec0443483df34f4fd6b5d
and commit 639ca1828b167bf59353f0cd3c8c79c6289bbd5d.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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).
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
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.
|