summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* lib: Remove AUGEAS_CFLAGS, AUGEAS_LIBS.Richard W.M. Jones2012-08-301-2/+2
| | | | | | | The library doesn't actually use libaugeas, except indirectly via the libguestfs API. The libguestfs API implements this in the daemon, so there's no need for the library to link to augeas at all. (cherry picked from commit 228d49bb842cda517b414bbfab460e8be429cc5f)
* podwrapper: Add --license parameter, which is required.Richard W.M. Jones2012-08-301-0/+1
| | | | | | | | | | | | This adds standard LICENSE and BUGS sections to all of the man pages that are processed by podwrapper. Modify all the calls to $(PODWRAPPER) to add the right --license parameter according to the content. Note that this relaxes the license on some code example pages, making them effectively BSD-style licensed. (cherry picked from commit 2f97bf873b64384835f257f8916bf1ebb2af62b4)
* man pages: Ensure consistent copyright/author sections, remove licenseRichard W.M. Jones2012-08-301-48/+0
| | | | | | | | | | | | section. Ensure each man page contains consistent COPYRIGHT and AUTHOR sections. Remove the LICENSE section. We will add that back in podwrapper in a later commit. (cherry picked from commit f1d98bbc79496947210ee0305f80440ed8557ec1)
* docs: Document null disks.Richard W.M. Jones2012-08-301-0/+61
| | | | | | It's always been possible to use /dev/null as a disk image. Document this formally in the API. (cherry picked from commit e1e8b3a1cfdeee34fbd51f79b8724c5a58f25c10)
* launch: Move code to add a drive to the list to separate add_drive utility ↵Richard W.M. Jones2012-08-301-28/+32
| | | | | | | | function. This is just code motion / simplification. (cherry picked from commit 46cf4a7e875b828c7a97bd85f577721bce386bc3)
* launch: Add utility function guestfs___lazy_make_tmpdir.Richard W.M. Jones2012-08-302-8/+21
| | | | | | | | This lets us create g->tmpdir lazily earlier if needed. This commit is just code motion. (cherry picked from commit 4b8ac437295d5420d3186a913bc3740b69a8d342)
* lib: Add 'g->unique' to handle, for making unique IDs.Richard W.M. Jones2012-08-301-0/+6
| | | | (cherry picked from commit 22607a97cdf115caabf05c3dc87c5f154a2e914c)
* inspect: Clarify comment about uniqueness of cache.Richard W.M. Jones2012-08-301-1/+3
| | | | (cherry picked from commit 8fd6f1bebef11d1c4eb77ac2b7d95fd5a7e82be9)
* close: Check if g->tmpdir is non-NULL before removing tmpdir.Richard W.M. Jones2012-08-301-1/+2
| | | | | This happens, by chance, to work. (cherry picked from commit ba61236d0d6756f45d8707e96cda00c016cadebe)
* Document problems copying long filenames from NTFS to Linux filesystems ↵Richard W.M. Jones2012-08-051-0/+22
| | | | | | (RHBZ#845488). (cherry picked from commit 7fa67427c6b2725bdcce52c08511f8813b7bd42e)
* Mac OS X: Use u_int64_t/uint64_t instead of unsigned hyper in .x fileMasami HIRATA2012-08-051-2/+11
| | | | | | | | Signed-off-by: Masami HIRATA <msmhrt@gmail.com> RWMJ: Fixed whitespace in generator_xdr.ml (cherry picked from commit d74e7fad28ae7a2f894a12d30807f4b36078bf13)
* Mac OS X: #define UNIX_PATH_MAX 104Masami HIRATA2012-08-051-0/+4
| | | | | | | See http://developer.apple.com/library/mac/documentation/Darwin/Reference/Manpages/man4/unix.4.html Signed-off-by: Masami HIRATA <msmhrt@gmail.com> (cherry picked from commit 7dab20876530a7ac954b4fe809755ac12a8d8c4d)
* Mac OS X: Added check of #include <endian.h>Masami HIRATA2012-08-057-0/+21
| | | | | | | Mac OS X doesn't have endian.h Signed-off-by: Masami HIRATA <msmhrt@gmail.com> (cherry picked from commit 6e3f8d2511a63bdcfa7c7d0e5414d5643c4ff599)
* lib: Initialize libvirt and libxml2 once when the library loads.Richard W.M. Jones2012-08-052-11/+36
| | | | (cherry picked from commit 941ec968b8a1d6f891d30631a8ddb1e23e427b99)
* fuse:remove the unused macro when fuse is not availableWanlong Gao2012-08-051-1/+1
| | | | | | | Just make gcc happy when fuse is not available. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com> (cherry picked from commit a58368b3db4f02b9fd907cec82621be11884d256)
* lib: Use safe_asprintf when constructing attach_method.Richard W.M. Jones2012-08-052-6/+2
| | | | | Just a small code cleanup / simplification. (cherry picked from commit eca544d87d9335123077e30b7547270b6bfe0f2b)
* build: Rename most C files that contain underscore with dash.Richard W.M. Jones2012-08-057-10/+10
| | | | | | | | | | | | | | This is just code motion. Some files cannot be renamed. Notably rpcgen input and output files must not contain dash characters, else rpcgen breaks. Cherry picked from commit 2e4089f30007e79bc157c775cfd3b326d22f2992 and modified so that conflicts in the following files: po-docs/ja.po po-docs/libguestfs-docs.pot po-docs/uk.po were resolved by simply copying the files from the master branch.
* build: Rename src/virt.c to src/libvirtdomain.cRichard W.M. Jones2012-08-052-1/+1
| | | | | | This file contains the code implementing guestfs_add_domain (for adding a libvirt domain) so this name is less confusing. (cherry picked from commit d1d29ab488002dda9e9a1b25fc2dbe4cb844f5ef)
* build: Arrange libguestfs_la_SOURCES in order.Richard W.M. Jones2012-08-051-1/+1
| | | | (cherry picked from commit d88f4ca634685f9aefab1a283f03646e32ba4a25)
* docs: Use L<...> for links.Richard W.M. Jones2012-08-051-1/+1
| | | | | | Instead of working around bugs, podwrapper has been fixed so that links work in all output formats. (cherry picked from commit 4bc110e2bc738bde9b9c09bc602ef13c06b60e90)
* docs: febootstrap is in section 8 of the manual, not section 1.Richard W.M. Jones2012-08-051-1/+1
| | | | (cherry picked from commit 8d0baf7b859fbbe40bdb072b2009d77c02cee7c3)
* build: Change calls to podwrapper.sh to use $(PODWRAPPER).Richard W.M. Jones2012-08-051-1/+1
| | | | | | This will allow us to easily change the location of this script in future. (cherry picked from commit f2ea617e224cd82496e56a41b5878063d6f02e3d)
* Revert "launch: Correction in comment."Richard W.M. Jones2012-07-091-2/+4
| | | | | | | This reverts commit 6e5a85bb9b6557bc337625a339728e23f5f2dd94. It turns out this is a bug in QEMU after all. (cherry picked from commit bd3e42a8ded1ed7a4177ad03646572eb6155a49c)
* launch: Correction in comment.Richard W.M. Jones2012-07-071-4/+2
| | | | | | | | https://bugs.launchpad.net/qemu/+bug/1021649 is invalid, probably caused by a Fedora ROM. This updates commit 52d188e32fb8addb45bf926df07e34ab35898f85. (cherry picked from commit 6e5a85bb9b6557bc337625a339728e23f5f2dd94)
* qemu: Use sgabios by default (thanks Dan Berrange).Richard W.M. Jones2012-07-061-0/+9
| | | | (cherry picked from commit 52d188e32fb8addb45bf926df07e34ab35898f85)
* New API: guestfs_shutdown: Cleanly shutdown the backend.Richard W.M. Jones2012-07-063-60/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The new API splits orderly close into a two-step process: if (guestfs_shutdown (g) == -1) { /* handle the error, eg. qemu error */ } guestfs_close (g); Note that the explicit shutdown step is only necessary in the case where you have made changes to the disk image and want to handle write errors. Read the documentation for further information. This change also: - deprecates guestfs_kill_subprocess - turns guestfs_kill_subprocess into the same as guestfs_shutdown - changes guestfish and other tools to call shutdown + close where necessary (not for read-only tools) - updates documentation - updates examples (cherry picked from commit ffbf1475f7ae7c462db289ad4834391469e72edd)
* close: Warn if qemu exits unsuccessfully.Richard W.M. Jones2012-07-061-1/+19
| | | | | | Currently guestfs_close has no method to return an error indication, so this commit simply prints the error on stderr. (cherry picked from commit bcc4ffb52b9f4b5db7861682905ec32844f4603b)
* close: Rearrange the order in which the handle is closed and freed.Richard W.M. Jones2012-07-061-33/+31
| | | | | | | | | | | | | | The order is now: - remove the handle from the list of handles - send close trace message - sync and shutdown qemu - run user close callback - free temporary directory - free memory This commit ought to be no functional change. (cherry picked from commit fc3c6fff4b0a6ffeb75aa78b1d73241a14a03cd1)
* Add notes about how qemu cache=none works internally.Richard W.M. Jones2012-07-061-1/+12
| | | | | This is just a comment and has no functional effect. (cherry picked from commit 0437a7905619b8370e25fbae1a3e6388c5277be9)
* Rename qemu option cache=off to cache=none.Richard W.M. Jones2012-07-062-10/+10
| | | | | | | Note that qemu treats these identically, so this change has no functional effect. (cherry picked from commit 1608ca182b094a1dbe22094f39a5e86f18f728b7)
* inspect: Check partition exists when doing fstab mapping.Richard W.M. Jones2012-07-061-8/+26
| | | | | | If the partition name we're about to return doesn't really exist, then don't perform the mapping. (cherry picked from commit ea8421c5d297698856a87c2cfe4a6b42796175a8)
* inspect: Guess device name from /dev/disk/by-id/*-partN path (RHBZ#627675).Richard W.M. Jones2012-07-061-0/+74
| | | | | | | | | See https://bugzilla.redhat.com/show_bug.cgi?id=836573#c3 for an explanation. Useful function 'is_partition' shows how to tell if a device name represents a partition. (cherry picked from commit 7eaa99994ebd354f4b078d4068695984989a907f)
* New API: guestfs_nr_devicesRichard W.M. Jones2012-07-061-1/+1
| | | | | | | | This returns the number of whole block devices added. It is usually simpler to call this than to list the devices and count them, which is what we do in some places in the current codebase. (cherry picked from commit 152b179a19e43fcb0baec65ea65d394ee1dba891)
* inspect: Refactor resolve_fstab_device code into multiple functions.Richard W.M. Jones2012-07-061-68/+103
| | | | | | | This is mostly code motion, although it also fixes a memory leak in an extremely rare failure case, and it generally tidies up the existing code. (cherry picked from commit 47b8225b05a7e35411f954f61f3eb3115c5a9f45)
* launch: Avoid double-close when qemu exits early.Richard W.M. Jones2012-06-281-2/+6
| | | | | | | | | | | | | | | | The stdin and stdout of the qemu process are aliased to g->fd: g->fd[0] = wfd[1]; g->fd[1] = rfd[0]; However if the child exits early, then child_cleanup closes g->fd[0], g->fd[1], AND the code at the cleanup1 label closes wfd[1], rfd[0], resulting in a double-close. Avoid this case by setting wfd[1], rfd[0] to -1. In the cleanup1 label, only close wfd[1], rfd[0] if they are not -1, and add the same for g->fd[0], g->fd[1]. (cherry picked from commit c87956837e962072fff61edef5b18e55ad42d730)
* launch: Ensure errno from test_qemu_cmd is captured and printed.Richard W.M. Jones2012-06-281-5/+3
| | | | (cherry picked from commit 9e221e55b61e9f1cd0caf292ca609a4ca26f1d4d)
* launch: Set g->sock = -1 to avoid double-close.Richard W.M. Jones2012-06-281-0/+1
| | | | | This fixes commit ef5c02c6ee72eb8e127115923951777a2c2b8480. (cherry picked from commit 11317b5d1243f3afc35f7abe8edc646f75813e36)
* launch: Log errors from close syscall.Richard W.M. Jones2012-06-281-1/+6
| | | | (cherry picked from commit ef5c02c6ee72eb8e127115923951777a2c2b8480)
* lib: Remove obsolete NETWORK, ROUTER definitions in header file.Richard W.M. Jones2012-06-281-21/+0
| | | | | These haven't been used since we switched over to virtio-serial. (cherry picked from commit 78a515ec4a4e8650bd2e1ffc0bfbb97b9568306d)
* arm: Use #if defined instead of #ifdef.Richard W.M. Jones2012-06-211-1/+1
| | | | | No functional change. (cherry picked from commit 4e5d3b06fb2f366c0010ae6aa15f9dee74261917)
* ppc64: Avoid "defined by not used" warning for is_openable function.Richard W.M. Jones2012-06-211-0/+4
| | | | (cherry picked from commit 450493cf6b563389bd11f02284bd22d7ed90b5da)
* trace: Fix display of non-printing characters.Richard W.M. Jones2012-06-011-0/+5
| | | | | | | | Previously the code would drop the first character in any sequence of non-printing characters that occurred within a string. Fix for commit e6f18c59d577dd0b443bc6a1d76f699c4e0dde9f. (cherry picked from commit 73071b3163774ff9a514a05bc8e6fb35fa910787)
* trace: Fix escaping of non-printable signed characters.Richard W.M. Jones2012-06-011-1/+1
| | | | | Fix for commit e6f18c59d577dd0b443bc6a1d76f699c4e0dde9f. (cherry picked from commit fba81add94cde015afe8a65245cb4e60a1d3e6bf)
* inspection: Don't fail if /etc/HOSTNAME or /etc/hostname are empty files ↵Richard W.M. Jones2012-06-012-4/+24
| | | | | | | | | | | | | | | | | | | (RHBZ#823821). Change guestfs___first_line_of_file so that if the file is empty this returns an empty string instead of an error. This is consistent with the behaviour of this function in the case where the file starts with a \n character, where it would previously have returned an empty string. Change all callers so that they handle this case. Then change the hostname parsing code so that it doesn't give up when /etc/HOSTNAME is empty, but falls through to the next alternative, and similarly for /etc/hostname. Thanks Todd Mummert for finding and diagnosing this bug. (cherry picked from commit f00066d22b11bf40d0272f68565a2a27fea15627)
* inspection: Use parse_release_file to parse ttylinux release file.Richard W.M. Jones2012-06-011-2/+1
| | | | | | | | | | parse_release_file should be used to set fs->product_name, instead of calling guestfs___first_line_of_file directory, although currently the two are equivalent. This is code motion and fixes commit b648b1813fc8e55db790435b5414d9be3ec765d2. (cherry picked from commit cffb7fefc88a317f957785f6448fb24183c8c629)
* Update API support.Richard W.M. Jones2012-05-217-0/+3090
|
* NEW API: add new api btrfs-fsckWanlong Gao2012-05-151-1/+1
| | | | | | | | | Add the new API btrfs-fsck to check the btrfs filesystem. Btrfs is currently under heavy development, and not suitable for any uses other than benchmarking and review. But it'll be useful in the near future. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
* New API: add new api btrfs-set-seeding to enable or disable seeding.Wanlong Gao2012-05-141-1/+1
| | | | | | | Add the new API btrfs-set-seeding to support the seeding-device feature for btrfs. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
* qemu: Move -nodefaults etc logically together.Richard W.M. Jones2012-05-121-16/+16
| | | | This is just code motion.
* arm: Add configure flag '--with-qemu-options'.Richard W.M. Jones2012-05-121-0/+65
| | | | | | | This flag allows extra QEMU options to be passed on the command line. This is useful mainly on arm (see the notes in the updated README file).