summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* New APIs: hivex_*Richard W.M. Jones2012-08-292-7/+10
| | | | | | | | | | | Transscribe many hivex(3) APIs into the libguestfs API. There is one hive handle per libguestfs handle, as with Augeas. Note that hivex uses iconv_open for some APIs (eg. hivex_value_string). But since we delete all the i18n files from the appliance, this doesn't work -- iconv_open returns EINVAL. Therefore hivex APIs which require iconv cannot be bound in the daemon.
* lib: Remove AUGEAS_CFLAGS, AUGEAS_LIBS.Richard W.M. Jones2012-08-291-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.
* remove ulockmgr from fuse LDFLAGSOlaf Hering2012-08-291-1/+1
| | | | | | | | | | libguestfs fails to build with --enable-fuse on openSuSE 11.4 and earlier because the included fuse version does not include libulockmgr.so. configure already used pkgconfig to retrieve the correct CFLAGS, so there is no need to hardcode -lulockmgr. With this change the build succeeds again. Signed-off-by: Olaf Hering <olaf@aepfle.de>
* launch: libvirt: Don't crash if shutdown_libvirt is called early in launch.Richard W.M. Jones2012-08-281-8/+13
| | | | | | | | | | | The assert (conn != NULL) was being triggered with this stack trace: at launch-libvirt.c:1305 fd=<optimized out>, error_if_eof=error_if_eof@entry=0) at proto.c:222 size_rtn=size_rtn@entry=0x7fffffffdb34, buf_rtn=buf_rtn@entry=0x7fffffffdb58) at proto.c:548 libvirt_uri=<optimized out>) at launch-libvirt.c:391
* podwrapper: Add --license parameter, which is required.Richard W.M. Jones2012-08-211-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.
* man pages: Ensure consistent copyright/author sections, remove licenseRichard W.M. Jones2012-08-211-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.
* docs: Document null disks.Richard W.M. Jones2012-08-211-0/+61
| | | | | It's always been possible to use /dev/null as a disk image. Document this formally in the API.
* launch: libvirt: Always create /var/run/libguestfs.Richard W.M. Jones2012-08-211-2/+4
| | | | | This directory won't necessarily exist (esp. if /var/run is really /run). So create it each time.
* launch: libvirt: Minimum libvirt version is now 0.10.0.Richard W.M. Jones2012-08-211-9/+26
|
* New API: xfs: xfs_adminWanlong Gao2012-08-211-1/+1
| | | | | | | | | | | Add new api xfs_admin to change parameters of an XFS filesystem. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com> RWMJ: - Remove printuuid, printlabel, since they don't change any settings. - Adjusted the documentation. - Fix the tests.
* Replace mount-options with mount where appropriate.Richard W.M. Jones2012-08-181-3/+3
| | | | | | Since our minimum supported version is now 1.16 and mount was fixed in 1.13.16, it is now safe to replace mount-options + empty options with mount wherever it occurs.
* Update API support.Richard W.M. Jones2012-08-1825-1/+13114
|
* docs: Rewrite section on protocol limits again.Richard W.M. Jones2012-08-171-22/+20
| | | | This updates commit 92e241440d361e9491a9d96d23ad7a378cb2ab6a.
* docs: Update documentation to reflect no 2/4 MB protocol limits.Richard W.M. Jones2012-08-171-12/+21
|
* New API: fill-dir: Fill a directory with files (for testing).Richard W.M. Jones2012-08-171-1/+1
|
* guestfs_ls: Reimplement to avoid protocol limits.Richard W.M. Jones2012-08-171-0/+102
|
* New API: ls0 - List files, separated by \0 characters.Richard W.M. Jones2012-08-171-1/+1
| | | | | This API is not especially useful on its own. It will be used to reimplement guestfs_ls to work without protocol limits.
* guestfs_readlinklist: Reimplement to avoid protocol limits.Richard W.M. Jones2012-08-171-0/+41
|
* guestfs_lstatlist, guestfs_lxattrlist: Reimplement to avoid protocol limits.Richard W.M. Jones2012-08-171-0/+125
| | | | | Note that the code to do this was already in virt-ls, so this is change is mostly just moving the code into the core library.
* guestfs_write, guestfs_write_append: Reimplement to avoid protocol limits.Richard W.M. Jones2012-08-171-0/+79
| | | | | | | | Note that we keep the old daemon calls, but rename them as "internal_write" and "internal_write_append". This lets us implement the new library-side calls more efficiently in the common case when the uploaded content is smaller than the message buffer. In most cases the new calls won't end up using a temporary file.
* guestfs_read_lines: Reimplement to avoid protocol limits.Richard W.M. Jones2012-08-171-0/+66
| | | | This also makes a larger test suite for this command.
* guestfs_read_file: Reimplement to avoid protocol limits.Richard W.M. Jones2012-08-171-0/+12
|
* guestfs_find: Reimplement to avoid protocol limits.Richard W.M. Jones2012-08-171-0/+117
| | | | | This also reimplements the virt-ls -R option to use the replacement guestfs_find API, which is simpler (though actually less efficient).
* guestfs_cat: Reimplement to avoid protocol limits.Richard W.M. Jones2012-08-172-0/+98
|
* launch: For /dev/null drives, create a temporary disk.Richard W.M. Jones2012-08-151-18/+52
| | | | | This is a workaround for a bug with virtio-scsi in qemu 1.2: https://bugzilla.redhat.com/show_bug.cgi?id=847549
* launch: Move code to add a drive to the list to separate add_drive utility ↵Richard W.M. Jones2012-08-151-28/+32
| | | | | | function. This is just code motion / simplification.
* launch: Add utility function guestfs___lazy_make_tmpdir.Richard W.M. Jones2012-08-152-8/+21
| | | | | | This lets us create g->tmpdir lazily earlier if needed. This commit is just code motion.
* lib: Add 'g->unique' to handle, for making unique IDs.Richard W.M. Jones2012-08-151-0/+6
|
* inspect: Clarify comment about uniqueness of cache.Richard W.M. Jones2012-08-151-1/+3
|
* close: Check if g->tmpdir is non-NULL before removing tmpdir.Richard W.M. Jones2012-08-151-1/+2
| | | | This happens, by chance, to work.
* New internal APIs: internal-test-set-output, internal-test-close-output.Richard W.M. Jones2012-08-152-0/+7
| | | | | | | | These internal (testing) APIs allow the bindtests output to be sent to some other place than stdout. This is necessary for Erlang, since stdout is used to communicate with the Erlang interpreter.
* Convert release notes to a POD file / man page.Richard W.M. Jones2012-08-111-1/+1
| | | | | Note that we add the text version to git so that it's available for people to read without requiring any special tools.
* New APIs: rsync, rsync-in, rsync-outRichard W.M. Jones2012-08-111-1/+1
| | | | Implement rsync.
* Document problems copying long filenames from NTFS to Linux filesystems ↵Richard W.M. Jones2012-08-031-0/+22
| | | | (RHBZ#845488).
* grep: Add optargs to grep API and deprecate fgrep etc.Richard W.M. Jones2012-08-021-3/+10
| | | | | | | | This commit makes grep into an optargs API, with flags for extended, fixed, [case-]insensitive and compressed. At the same time it deprecates: egrep, fgrep, grepi, egrepi, fgrepi, zgrep, zegrep, zfgrep, zgrepi, zegrepi and zfgrepi.
* xfs: add new api xfs-growfsWanlong Gao2012-08-021-1/+1
| | | | | | New api xfs_growfs for expanding a XFS filesystem. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
* Revert "appliance: Add '-drive detect-zero=on' flag if qemu supports it."Richard W.M. Jones2012-08-011-2/+1
| | | | This reverts commit fe2253088ff51b51e2586f27a9408a38655170e3.
* New API: utsnameRichard W.M. Jones2012-07-301-1/+1
| | | | | | | | | | Typical output: ><fs> utsname uts_sysname: Linux uts_release: 3.5.0-1.fc18.x86_64 uts_version: #1 SMP Mon Jul 23 17:43:39 UTC 2012 uts_machine: x86_64
* appliance: Add '-drive detect-zero=on' flag if qemu supports it.Richard W.M. Jones2012-07-261-1/+2
| | | | | | | NB: The patch to implement this feature in qemu is not upstream, and may never make it upstream. However this is so useful for virt-sparsify that I decided to add this to libguestfs while we see what qemu decides to do.
* New APIs: pvchange-uuid, pvchange-uuid-all, vgchange-uuid, vgchange-uuid-all.Richard W.M. Jones2012-07-251-1/+1
| | | | | | | | These APIs will allow sysprep to change the UUIDs of all PVs and VGs in the system. LVs don't have UUIDs AFAICT, or at least there seems to be no way to change them if they do have them.
* Mac OS X: Use u_int64_t/uint64_t instead of unsigned hyper in .x fileMasami HIRATA2012-07-241-2/+11
| | | | | | | Signed-off-by: Masami HIRATA <msmhrt@gmail.com> RWMJ: Fixed whitespace in generator_xdr.ml
* lib: Use <sys/socket.h> and <sys/un.h> for sockaddr_unMasami HIRATA2012-07-242-0/+4
| | | | Signed-off-by: Masami HIRATA <msmhrt@gmail.com>
* Mac OS X: #define UNIX_PATH_MAX 104Masami HIRATA2012-07-241-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>
* Mac OS X: Added check of #include <endian.h>Masami HIRATA2012-07-247-0/+21
| | | | | | Mac OS X doesn't have endian.h Signed-off-by: Masami HIRATA <msmhrt@gmail.com>
* launch: libvirt: Suppress printing of libvirt errors to stderr and other ↵Richard W.M. Jones2012-07-241-4/+19
| | | | cleanups.
* launch: libvirt: Use SELinux-mandated directory for sockets (RHBZ#842307).Richard W.M. Jones2012-07-241-31/+147
| | | | | | Note this does not yet enable sVirt confinement of the appliance. That requires at least that SELinux policy goes upstream, plus there may still be bugs.
* launch: libvirt: Move free to end of function.Richard W.M. Jones2012-07-241-11/+6
| | | | This is just code motion.
* launch: libvirt: Add is_blk utility.Richard W.M. Jones2012-07-241-6/+12
| | | | This is just code motion.
* launch: libvirt: Set <emulator> in libvirt XML if g->qemu is not the default.Richard W.M. Jones2012-07-241-0/+9
|
* lib: Initialize libvirt and libxml2 once when the library loads.Richard W.M. Jones2012-07-232-11/+36
|