summaryrefslogtreecommitdiffstats
path: root/generator
Commit message (Collapse)AuthorAgeFilesLines
* New API: mkfs_opts, mkfs with optional arguments.Richard W.M. Jones2010-12-021-1/+28
| | | | | | This is an extensible version of 'mkfs' which supports optional arguments. There is now no need for 'mkfs_b' since you should use 'mkfs_opts' with the optional 'blocksize' argument instead.
* generator: Code to handle optional arguments in daemon functions.Richard W.M. Jones2010-12-024-159/+240
| | | | | | | | Previously we only supported optional arguments for library functions (commit 14490c3e1aac61c6ac90f28828896683f64f0dc9). This extends that work so that optional arguments can also be passed through to the daemon.
* fish: Fix generation of code to handle Int/Int64 optional arguments.Richard W.M. Jones2010-12-021-2/+4
|
* Fix argv struct mixup over Int/Int64.Richard W.M. Jones2010-12-021-2/+2
|
* Add progress notification messages to upload and upload-offset APIs.Richard W.M. Jones2010-12-011-2/+2
|
* protocol: Send progress_hint in header.Richard W.M. Jones2010-12-011-3/+31
| | | | | | For actions that have FileIn arguments, count the size of all the input files and send that in the progress_hint field of the request header.
* protocol: Upload progress messages and optional arguments.Richard W.M. Jones2010-12-011-1/+3
| | | | | | | | Two unrelated changes to the protocol to support progress messages during uploads, and optional arguments. Note that this makes an incompatible change to the protocol, and this is reflected in the protocol version field (3 -> 4).
* capitests: Convert many InitBasicFS tests to InitScratchFS.Richard W.M. Jones2010-11-301-392/+440
| | | | | | | | | These tests run much more quickly if you don't have to run 'mkfs' and (particularly) partitioning/LV commands between each test. The total time for running 'make -C capitests check' on my laptop has gone from 413 seconds down to 221 seconds.
* capitests: Add 'InitScratchFS' test environment.Richard W.M. Jones2010-11-303-8/+38
| | | | | | This should allow us to perform filesystem-based write tests much more quickly, because we don't need to recreate the filesystem from scratch each time.
* capitests: Move test documentation into HACKING file.Richard W.M. Jones2010-11-301-32/+1
|
* capitests: Use /dev/sdc for misc tests (instead of /dev/sdb).Richard W.M. Jones2010-11-301-9/+9
| | | | | | | | This change means that /dev/sdb is not being used during the tests (except passively, eg. in listings of devices). This allows us (in a forthcoming commit) to use /dev/sdb as a quick scratch filesystem for testing writes.
* fish: Don't use external pod2text program.Richard W.M. Jones2010-11-261-17/+19
| | | | | | | 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.
* generator: More options for internal pod2text generator.Richard W.M. Jones2010-11-262-13/+29
| | | | | | | | Allow extra width, and trimming options. This necessitates a change in the memoized format. To avoid causing crashes if a new generator loads the old format, also change the filename of the memo file.
* Export private function 'guestfs___for_each_disk' for use by virt-df.Richard W.M. Jones2010-11-251-0/+4
| | | | | | This private function (not part of the API) allows us to iterate over disks from a guest, avoiding the business of writing all the XPath code yet again.
* generator: Remove unused variable.Richard W.M. Jones2010-11-241-1/+1
|
* ocaml: Fix some unused parameter warnings in OCaml bindings.Richard W.M. Jones2010-11-231-1/+2
|
* generator: trace mode prints return values.Richard W.M. Jones2010-11-171-3/+82
|
* generator: Make return value into an explicit variable.Richard W.M. Jones2010-11-171-11/+45
| | | | This is just code motion.
* generator: Make trace flag an explicit variable.Richard W.M. Jones2010-11-171-1/+4
| | | | This is just code motion.
* New API: inspect-get-hostname to return the hostname of the guest.Richard W.M. Jones2010-11-161-0/+15
| | | | | This returns the hostname of the guest. Tested on RHEL, Fedora, Debian 5, Ubuntu 10.10, FreeBSD 8, Windows 7.
* New API: inspect-list-applications.Richard W.M. Jones2010-11-152-0/+116
| | | | | | | | This converts the current Perl code in virt-inspector for listing applications, into C, making it a part of the core API. This is also capable of fetching the list of Windows applications from the registry.
* inspect: Add support for Linux Mint and Mandriva.Richard Jones2010-11-151-1/+9
| | | | | | | | Linux Mint is derived from Ubuntu. Mandriva has a release file, but it also has /etc/lsb-release and the same parsing code can be reused. Mandriva has a package manager called urpmi.
* docs: Put list of distros in alphabetical order.Richard Jones2010-11-151-5/+5
|
* docs: Debian and Ubuntu are now separate distros.Richard Jones2010-11-151-1/+1
|
* inspect: Inspection support for FreeBSD.Richard W.M. Jones2010-11-131-0/+4
| | | | | | | | | | This adds inspection support for FreeBSD. However this is not quite enough to allow guestfish -i freebsd.img to work, because guestfish will try to mount the filesystems, which cannot be done because Linux requires special mount options for the Universal Filesystem (UFS) used by *BSD. Nevertheless you can manually run the same commands.
* New APIs: inspect-get-package-format, inspect-get-package-management.Richard Jones2010-11-121-0/+46
| | | | This APIs reimplement some parts of virt-inspector in C.
* Don't need to include XDR headers in <guestfs.h>.Richard W.M. Jones2010-11-112-2/+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.
* Be less verbose in the macros defending typedefs in <guestfs.h>.Richard W.M. Jones2010-11-111-16/+16
| | | | This updates commit 4d59e271046f2b5f0d9b1730cd23425fd631c76c.
* build: xml-light is no longer required (thanks Maxim Koltsov).Richard W.M. Jones2010-11-111-2/+2
| | | | | | At some point we removed the last thing that required xml-light, but were still testing for it at various places in the build. This removes all traces.
* Defend all typedefs in <guestfs.h> with #ifdefs.Richard W.M. Jones2010-11-111-0/+29
| | | | | This allows other libraries to redefine those typedefs if they need to use but not depend on <guestfs.h>.
* lib: Make <guestfs.h> be completely generated.Richard W.M. Jones2010-11-112-23/+111
| | | | | This removes the 'not-quite-separate' guestfs-actions.h and guestfs-structs.h files.
* New API: add-domainRichard Jones2010-11-111-0/+61
| | | | | | | | | | | | | | | | | | | This new API allows you to add the disks from a libvirt domain. In guestfish you can use the 'domain' command to access the API, eg: ><fs> domain Fedora14 libvirturi:qemu:///system 1 The returned number is the number of disks that were added. Also here is a proposed (but commented out) low-level API which would allow you to add a domain from a virDomainPtr. However there are several problems with this API -- see discussion on the list: https://www.redhat.com/archives/libguestfs/2010-November/thread.html#00028
* generator: Add Pointer parameter type to the generator.Richard Jones2010-11-1017-26/+95
| | | | | | | | | | | | | | | | | | | This allows generic "foo *bar" pointers to be passed to library functions (not to daemon functions). In the language bindings (except Perl) these are handled as generic int64s with the assumption being that any pointer can be converted to and from this. There is room to add specific support for some pointer types in future by specializing the match cases. However this is inherently tricky because it depends on the implementation details of other bindings (eg. to support virDomainPtr in OCaml depends on the implementation details of the ocaml-libvirt project). Perl is slightly different in that you have to supply a typemap. Again this would depend on the implementation detail of an external library unless you supplied a generic typemap for int64.
* New API: debug-cmdline for printing QEMU command line (internal only).Richard W.M. Jones2010-11-101-0/+7
| | | | | This is an internal-only debugging API so may be changed or removed at any time in the future.
* Don't include debug* commands in the documentation.Richard W.M. Jones2010-11-101-2/+2
|
* ocaml: Error on compiler warnings.Richard Jones2010-11-091-1/+1
|
* New API: inspect-get-roots to return roots from last inspection.Richard W.M. Jones2010-11-051-0/+13
| | | | | Return the roots found by the last call to inspect-os, but without redoing the whole inspection.
* generator: Don't die if an API call isn't listed in API versions file.Richard W.M. Jones2010-11-053-7/+9
| | | | For example, it may just have been added.
* Don't print out key material in trace output.Richard W.M. Jones2010-11-051-2/+4
|
* fish: '-i' option automatically handles whole-disk encryption.Richard W.M. Jones2010-11-051-0/+1
| | | | | | | | | | | 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.
* docs: Which API calls were first supported in which upstream versions.Richard W.M. Jones2010-11-046-4/+93
| | | | | | | | Run src/api-support/update-from-tarballs.sh (this won't work unless you have a local copy of the tarballs from the website). src/api-support/added contains the result of running the script, a list of pairs: (API name, version first appeared).
* docs: Indent *_va and *_argv functions correctly.Richard W.M. Jones2010-11-031-7/+7
| | | | This fixes commit f661db2c393d1b7e4211c55682b7fac82a70e36d.
* fish: Use a perfect hash for faster command lookups.Richard W.M. Jones2010-11-032-67/+126
| | | | | | Existing command lookups are approx O(n^2). Replace this with a perfect hash implementation which should be a lot faster.
* generator: Properly lay out and indent multi-line C function decls.Richard W.M. Jones2010-11-033-13/+44
|
* lib: Expose errno through new API guestfs_last_errno.Richard W.M. Jones2010-11-033-2/+78
| | | | | | | If either the daemon sends back an errno, or a system call fails in the library, save the errno in the handle and then make it available to callers through the guestfs_last_errno function.
* daemon: Send back the errno as a string.Richard W.M. Jones2010-11-036-6/+289
| | | | | | | | This changes the protocol again so that if the errno is available, it is converted to a string (like "EIO") and sent back over the protocol to the library. In this commit the library just discards the string.
* capitests: Use ftruncate instead of seek + write to create test files.Richard W.M. Jones2010-11-031-24/+6
|
* capitests: Don't open test files with O_NONBLOCK.Richard W.M. Jones2010-11-031-3/+3
| | | | I have no idea why we were doing this.
* capitests: Set path in TESTS_ENVIRONMENT instead of in tests.cRichard W.M. Jones2010-11-031-2/+0
| | | | | By exporting LIBGUESTFS_PATH with the right path to the appliance, we no longer need to hard code the path in tests.c
* generator: Remove unnecessary macro redefinitions.Richard W.M. Jones2010-11-031-4/+0
| | | | These macros are already defined in guestfs-internals.h