summaryrefslogtreecommitdiffstats
path: root/fish
Commit message (Collapse)AuthorAgeFilesLines
* fish: Fix incorrect path passed to perror.Richard W.M. Jones2011-04-011-1/+1
| | | | Fix commit b8e1dee73a1deef1bfd5937e2abfbe9afef7b1ef.
* Add libguestfs-tools.conf file to EXTRA_DIST.Richard W.M. Jones2011-04-011-0/+1
|
* Add /etc/libguestfs-tools.conf configuration file.Richard W.M. Jones2011-03-316-20/+214
| | | | | This allows the default for --ro or --rw to be controlled for the three tools guestfish, guestmount and virt-rescue.
* fish: fuse: Add -m dev:mnt:opts to allow mount options to be specified.Richard W.M. Jones2011-03-284-11/+36
| | | | | | | | | | | | | 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
* fish: Add better quick help to --help output.Richard W.M. Jones2011-03-221-10/+10
| | | | | Notes: Labels: cleanup Depends: c8faa5d0b0a17689d27bd33bc787ba0fe9a3f076
* fish: Add -w|--rw option to --help output.Richard W.M. Jones2011-03-221-1/+2
| | | | Notes: Labels: bugfix
* fish: Add all stamp-*.pod files to CLEANFILES.Richard W.M. Jones2011-03-181-1/+6
|
* New event API (RHBZ#664558).Richard W.M. Jones2011-03-154-5/+16
| | | | | | | | | | | | | 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.
* fish: Add guestfish --live, guestmount --live options.Richard W.M. Jones2011-02-035-0/+21
| | | | | | 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.
* Add guestfs_add_domain 'live' flag.Richard W.M. Jones2011-02-031-1/+1
| | | | | | | | | | 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.
* fish: Fix typo in error message (copy-in should be copy-out).Richard W.M. Jones2011-01-221-1/+1
|
* Use /var/tmp for the cached appliance (for FHS compliance).Richard W.M. Jones2011-01-191-2/+3
| | | | | | | | | | | | | | | | 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
* fish: Initialize pcmd structure.Richard W.M. Jones2011-01-181-1/+4
| | | | | | | 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]
* fish: <! cmd executes a shell command and inlines the resulting commands.Richard W.M. Jones2011-01-182-0/+83
| | | | | | | | 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.
* fish: Factor out command line parsing.Richard W.M. Jones2011-01-181-154/+170
| | | | Factor out the code which splits a string into a command line.
* fish: Make exit_on_error into a completely local variable.Richard W.M. Jones2011-01-185-10/+16
| | | | | | 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.
* fish: exit_on_error is a local variable.Richard W.M. Jones2011-01-181-1/+1
|
* fish: Don't fail if some mountpoints in /etc/fstab are bogus (RHBZ#668574).Richard W.M. Jones2011-01-111-1/+6
| | | | | | | | | | | | | | | | | 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
* fish: fails to tilde expand '~' when $HOME env is unset (RHBZ#617440).Richard W.M. Jones2011-01-041-8/+29
| | | | This also adds a regression test.
* fish: Fix off-by-one bug in tilde expansion.Richard W.M. Jones2011-01-041-1/+1
| | | | | | | | 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
* New tools: virt-copy-in, virt-copy-out, virt-tar-in, virt-tar-out.Richard W.M. Jones2011-01-0310-4/+444
| | | | | Relatively trivial wrappers around the equivalent guestfish commands. Change also includes new man pages.
* fish: --ro will be default in 1.10, not 1.8.Richard W.M. Jones2010-12-201-1/+1
|
* fish: Clarify documentation for --ro option.Richard W.M. Jones2010-12-121-3/+4
|
* fish: Document equivalence of -a/add etc. in man page.Richard W.M. Jones2010-12-121-0/+15
|
* fish: Split ..|.. options into separate items in man page.Richard W.M. Jones2010-12-121-16/+50
|
* fish: Remove some unused local variables.Richard W.M. Jones2010-12-091-2/+2
|
* Remove ability to build static distribution.Richard W.M. Jones2010-12-061-6/+0
| | | | | | We are now going to build binaries for each distribution so there is no need to build the quasi-distro-independent static binaries any more.
* fish: Don't use external pod2text program.Richard W.M. Jones2010-11-263-23/+2
| | | | | | | 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.
* fish: Keep device names in options drives list.Richard W.M. Jones2010-11-253-9/+27
| | | | | | | 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"
* build: Centralize all POD manipulation in 'podwrapper.sh' script.Richard W.M. Jones2010-11-241-14/+14
|
* fish: Link to virt-inspector from guestfish man page.Richard W.M. Jones2010-11-231-0/+1
|
* New tool: virt-filesystemsRichard W.M. Jones2010-11-231-4/+6
| | | | | | | | This tool replaces virt-list-filesystems and virt-list-partitions with a new tool written in C with a more uniform command line structure and output. This existing Perl tools are deprecated but remain indefinitely.
* inspector: Rewrite virt-inspector in C.Richard W.M. Jones2010-11-192-5/+12
|
* fish: Fix memory leak in handling of encrypted volumes by -i option.Richard W.M. Jones2010-11-191-0/+1
| | | | | This fixes a memory leak introduced by commit a232e62dcf508517a32b9a8d7e4529e827be721b.
* static: Use correct libraries for static binaries.Richard W.M. Jones2010-11-131-1/+1
| | | | Also add virt-cat.static target.
* Don't need to include XDR headers in <guestfs.h>.Richard W.M. Jones2010-11-113-0/+3
| | | | | | | Include the XDR headers in the internal guestfs-internal.h instead. This is knock-on effects to several other source files which were implicitly relying on indirectly loaded headers.
* fish: Use core add-domain API to implement '-d' option.Richard Jones2010-11-112-183/+8
| | | | | | This also makes libxml2 and libvirt into optional dependencies. If they are missing then the core API will print an error, as will the '-d' option to guestfish.
* fish: Add --rw option (does nothing yet).Richard W.M. Jones2010-11-083-7/+53
| | | | | | | | | | 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'.
* fish: Add --listen --csh to for csh, tcsh compatibility.Richard W.M. Jones2010-11-054-1/+24
| | | | (Thanks Eric Blake).
* fish: Suggest safer form of eval.Richard W.M. Jones2010-11-051-4/+4
| | | | | | | | eval "$(guestfish --listen)" instead of various other forms. (Thanks Eric Blake).
* fish: More portable export sh statment.Richard W.M. Jones2010-11-051-1/+1
| | | | | | | Don't depend on bash, but allow sh/dash/etc format: GUESTFISH_PID=nn; export GUESTFISH_PID (Thanks Eric Blake).
* fish: '-i' option automatically handles whole-disk encryption.Richard W.M. Jones2010-11-056-65/+173
| | | | | | | | | | | 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.
* fish: Make the 'help' command more helpful.Richard W.M. Jones2010-11-045-4/+67
|
* fish: Use a perfect hash for faster command lookups.Richard W.M. Jones2010-11-032-3/+62
| | | | | | Existing command lookups are approx O(n^2). Replace this with a perfect hash implementation which should be a lot faster.
* Unify guestfish and guestmount options processing (RHBZ#642932).Richard W.M. Jones2010-10-278-272/+452
| | | | | | | | | | | | | | | 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/
* Enable autosync by default.Richard W.M. Jones2010-10-271-2/+0
|
* fish: Fix too-short allocation in tilde expansion (RHBZ#636061).Karel Klíč2010-10-251-1/+1
|
* fish: Specify format of disks (RHBZ#642934,CVE-2010-3851).Richard W.M. Jones2010-10-224-49/+125
| | | | | | | | 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.
* generator: Optional arguments, add-drive-opts (RHBZ#642934,CVE-2010-3851).Richard W.M. Jones2010-10-221-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This large commit changes the generator so that optional arguments can be supported for functions. The model for arguments (known as the "style") is changed from (ret, args) to (ret, args, optargs) where optargs is a more limited list of arguments. One function has been added which takes optional arguments, it is "add-drive-opts", modelled as: (RErr, [String "filename"], #required [Bool "readonly"; String "format"; String "iface"]) #optional Note that this function is processed in the library (does not go over the RPC protocol to the daemon). This has allowed us to simplify the current implementation by omitting changes related to RPC or the daemon, although we plan to add these at some point in the future. From C this function can be called in 3 different ways as in these examples: guestfs_add_drive_opts (g, filename, GUESTFS_ADD_DRIVE_OPTS_READONLY, 1, GUESTFS_ADD_DRIVE_OPTS_FORMAT, "raw", -1); (the argument(s) between 'filename' and '-1' are the optional ones). guestfs_add_drive_opts_va (g, filename, args); where 'args' is a va_list. This works like the first version. struct guestfs_add_drive_opts_argv optargs = { .bitmask = GUESTFS_ADD_DRIVE_OPTS_READONLY_BITMASK, .readonly = 1, } guestfs_add_drive_opts_argv (g, filename, &optargs); This last form lets you construct lists of optional arguments, and is used by guestfish and the language bindings. In guestfish optional arguments are used like this: add-drive-opts filename readonly:true In OCaml these are mapped naturally to OCaml optional arguments, eg: g#add_drive_opts ~readonly:true filename; In Perl these are mapped to extra arguments, eg: $g->add_drive_opts ($filename, readonly => 1); In Python these are mapped to optional arguments, eg: g.add_drive_opts ("file", readonly = 1, format = "qcow2") In Ruby these are mapped to a final hash argument, eg: g.add_drive_opts("file", {}) g.add_drive_opts("file", :readonly => 1) g.add_drive_opts("file", :readonly => 1, :iface => "virtio") In PHP these are mapped to extra parameters. This is not quite accurate since you cannot omit arbitrary optional parameters, but there's not much than can be done within the limitations of PHP as a language. Unimplemented in: Haskell, C#, Java.
* fish: Change 'int argc' to 'size_t argc' throughout.Richard W.M. Jones2010-10-2114-38/+40
|