summaryrefslogtreecommitdiffstats
path: root/generator
Commit message (Collapse)AuthorAgeFilesLines
...
* Add an optional group ("grub") for the guestfs_grub_install API.Richard W.M. Jones2011-09-151-5/+27
| | | | | | | | This also improves the documentation for this call, pointing out several pitfalls in using it. This unfortunately breaks existing callers that might use guestfs_grub_install without checking for this new group.
* Add GUESTFS_EVENT_ENTER event.Richard W.M. Jones2011-08-262-0/+11
| | | | This event is generated whenever a libguestfs function is called.
* ruby: Check Ruby callback exists before we call it (RHBZ#733297).Richard W.M. Jones2011-08-261-6/+14
|
* ruby: Use a regular C array to pass the arguments through rb_rescue.Richard W.M. Jones2011-08-251-18/+17
|
* ruby: Append newline character after printing exception in callback.Richard W.M. Jones2011-08-251-1/+1
|
* Coverity: in daemon, free struct in RStruct, RStructList functions.Richard W.M. Jones2011-08-231-0/+2
|
* pclose: Fix other places where we only tested pclose == -1.Richard W.M. Jones2011-08-231-1/+1
| | | | pclose can return > 0 when the status of the command was non-zero.
* Coverity: Check return value from sscanf in bindtests calls.Richard W.M. Jones2011-08-231-5/+22
|
* Improve zeroing and detection of zeroes.Richard W.M. Jones2011-08-161-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code modifies zero, zero-device, is-zero, is-zero-device. zero and zero-device are modified so that if the blocks of the device already contain zeroes, then we don't write zeroes. The reason for this is to avoid unnecessarily making the underlying storage non-sparse or (in the qcow2 case) growing it. is-zero and is-zero-device are modified so that zero detection is faster. This is a nice side effect of making the first change. Since avoiding unnecessary zeroing involves reading the blocks before writing them, whereas before we just blindly wrote, this can be slower. As you can see from the tests below, in the case where the disk is sparse, it actually turns out to be faster, because we avoid allocating the underlying blocks. However in the case where the disk is non-sparse and full of existing data, it is much slower. There might be a case for an API flag to adjust whether or not we perform the zero check. I did not add this flag because it is unlikely that the caller would have enough information to be able to set the flag correctly. (Elapsed time in seconds) Format Test case Before After Raw Sparse 16.4 5.3 Preallocated zero 17.0 18.8 Preallocated random 16.0 41.3 Qcow2 preallocation=off 18.7 5.6 preallocation=metadata 17.4 5.8 The current code uses a fixed block size of 4K for reading and writing. I also tried the same tests with a block size of 64K but it didn't make any significant difference. (Thanks to Federico Simoncelli for suggesting this change)
* out-of-tree build: Fix up OCaml bindings and generatorHilko Bengen2011-08-151-4/+4
|
* Note that additional memory may be required to typecheck Augeas lenses ↵Richard W.M. Jones2011-08-121-1/+6
| | | | (RHBZ#729887).
* fish: Add setenv and unsetenv commands.Richard W.M. Jones2011-08-071-0/+17
| | | | | These commands allow you to manipulate the environment within guestfish.
* fish: Declare run_* functions in a generated header file.Richard W.M. Jones2011-08-072-2/+21
| | | | | Calls to these functions are generated, so there is no need to declare the functions by hand.
* docs: Move deprecation notice up to the top in C man page.Richard W.M. Jones2011-08-061-4/+5
|
* docs: Emphasize deprecation notice in man pages.Richard W.M. Jones2011-08-061-1/+1
|
* docs: Fix function names in deprecation notices.Richard W.M. Jones2011-08-062-4/+4
|
* fish: Print input file and line number in error messages.Richard W.M. Jones2011-08-051-0/+2
| | | | | eg: *stdin*:37: libguestfs: error: luks_close: Device lukstest is busy.
* java: Tidy up the generated C bindings file.Richard W.M. Jones2011-07-191-3/+11
|
* java: Fix optional arguments in calls.Richard W.M. Jones2011-07-191-12/+82
| | | | This also adds tests.
* java: Enable warnings when compiling C bindings code.Richard W.M. Jones2011-07-191-15/+27
| | | | And fix the code so it doesn't generate warnings.
* ocaml: Generate ocamldoc.Richard W.M. Jones2011-07-171-15/+45
| | | | Also includes improvements to the OCaml documentation.
* ocaml: Bind guestfs_last_errno.Richard W.M. Jones2011-07-161-0/+13
|
* docs: Separate out combined =item 's in man pages.Richard W.M. Jones2011-07-161-3/+9
| | | | | | | | | | | | | | | Turn: =item B<-a> | B<--all> into: =item B<-a> =item B<--all> This gives a more natural-looking manual page, as well as making it easier to directly link to these sections.
* ruby: Add binding for guestfs_user_cancel.Richard W.M. Jones2011-07-151-0/+22
|
* perl: Add binding for guestfs_user_cancel.Richard W.M. Jones2011-07-151-0/+11
|
* ocaml: Add binding for guestfs_user_cancel.Richard W.M. Jones2011-07-151-0/+8
|
* Add user cancellation to the C API.Richard W.M. Jones2011-07-151-0/+5
| | | | | | | | | This allows long transfers (FileIn and FileOut operations) to be cancelled by calling the signal and thread safe guestfs_user_cancel function. Most of this commit consists of a multithreaded program that tests user cancellation of uploads and downloads.
* New APIs: set-pgroup, get-pgroupRichard W.M. Jones2011-07-151-0/+19
| | | | | | | | | | | If the pgroup flag is set in the handle, then the qemu and recovery subprocesses are placed in separate process groups. The default is false. The purpose for setting up a process group is that ^C will not be passed from the main process down to these processes (killing them). This allows ^C and other keyboard events to be caught and handled in the main process.
* guestfs.h: Add missing extern keyword before event functions.Richard W.M. Jones2011-07-151-6/+6
|
* New API: write-appendRichard W.M. Jones2011-07-141-1/+17
| | | | Append content to the end of a file.
* New API: btrfs-filesystem-resize (RHBZ#721160).Richard W.M. Jones2011-07-141-0/+23
| | | | This resizes a btrfs filesystem.
* New API: ntfsresize-opts (RHBZ#685009).Richard W.M. Jones2011-07-121-2/+34
| | | | | | This is a more comprehensive fix for RHBZ#685009. Add a new API which allows the --force flag to be passed, allowing multiple NTFS resize operations in a single session.
* Document that ntfsresize cannot be used multiple times (RHBZ#685009).Richard W.M. Jones2011-07-121-0/+9
|
* New API: list-dm-devices (RHBZ#688062).Richard W.M. Jones2011-07-121-1/+17
| | | | List device mapper devices.
* Don't mention /dev/mapper in docs for vg-activate{,-all} commands.Richard W.M. Jones2011-07-121-6/+0
| | | | | | | Although vg-activate and vg-activate-all do make /dev/mapper/VG-LV devices internally, we always prefer to use the /dev/VG/LV format and we return this format where possible. Therefore don't mention /dev/mapper in this documentation.
* protocol: Force optargs_bitmask to be passed as 0 for non-opt actions.Richard W.M. Jones2011-07-121-2/+13
| | | | | | If the action doesn't take optional arguments, nevertheless force the optargs_bitmask field in the header to be passed as 0, and give an error if not.
* mkfs-opts: Don't test optional arguments in this test.Richard W.M. Jones2011-07-061-1/+1
|
* mkfs-opts: Add optional sectorsize parameter.Nikita A Menkovich2011-07-061-2/+7
|
* capitests: Allow tests to properly test optional arguments.Richard W.M. Jones2011-07-061-13/+31
| | | | | | For optional arguments, you can now specify empty string to mean no argument, except for String optional arguments where you must use "NOARG" (empty string meaning a supplied empty string argument).
* Implement inode option to mkfs_opts command.Nikita A Menkovich2011-07-041-2/+7
| | | | | | | This is needed because older versions of grub(for example in centos) do not understand filesystems created with newer version of e2fsprogs. By default in e2fsprogs 1.4+ creates partitions with 256 bit inode size, and grub expect 128 bit size.
* python: Add explicit g.close() method (RHBZ#717786).Richard W.M. Jones2011-06-301-0/+26
|
* fish: Add 'display' command for displaying graphical files.Richard W.M. Jones2011-06-281-0/+14
|
* New API: inspect-get-icon returns the guest icon.Richard W.M. Jones2011-06-281-0/+64
| | | | | | | | | | This API returns the guest's favicon if found, else an icon representing the guest operating system. Currently supported by this patch: Fedora, RHEL and derivatives, Debian (but not Ubuntu), Windows XP, Windows 7. This also updates virt-inspector to include an <icon> element containing the icon in base64 encoding.
* generator: Fix functions with both RBufferOut and optional args.Richard W.M. Jones2011-06-282-10/+14
| | | | | | | | | | No current function returns RBufferOut and has optional args. Such functions would be generated incorrectly. RBufferOut implies a silent "size_t *size_r" argument is added after the regular arguments and before the optional arguments. Various changes to the code generator need to be made to take this into account.
* inspection: Remove note about root device string.Richard W.M. Jones2011-06-281-60/+0
| | | | | | | This is a fairly pointless note/warning since (a) you can't use the API if you don't pass a root device string and (b) the code gives you a good error message if you pass something that is not a root device string.
* guestfs.h: Tidy up *_argv structs and other #defines.Richard W.M. Jones2011-06-281-6/+18
|
* New API: mount-9p lets you mount 9p filesystems (RHBZ#714981).Richard W.M. Jones2011-06-221-0/+11
| | | | The updated patch makes 'options' into an optional parameter.
* New API: list-9p lists 9p filesystem mount tags (RHBZ#714981).Richard W.M. Jones2011-06-221-0/+7
|
* trace: Print empty list correctly.Richard W.M. Jones2011-06-221-3/+5
| | | | | | | Empty lists returned by RStringList and RHashtable functions were incorrectly printed as [""]. Fix this so they are printed as [] instead.
* Enable deprecated option only with gcc >= 4.5.Richard W.M. Jones2011-06-201-1/+1
| | | | | | | Before gcc 4.5, the deprecated option did not take the optional string argument (see [1]). This caused compilation to fail with gcc < 4.5. [1] http://gcc.gnu.org/gcc-4.5/changes.html