summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Mac OS X: Use gnulib setenv module explicitly.Richard Jones2010-03-221-0/+1
| | | | | See: https://www.redhat.com/archives/libguestfs/2010-March/thread.html#00094
* New APIs: Query the relationship between LVM objects.Richard Jones2010-03-186-1/+228
| | | | | | | | | These calls allow you to query the relationship between LVM objects, for example, which PVs contain a VG, or which LVs are contained in a VG. See the example / test program 'regressions/test-lvm-mapping.pl' for an example of how to do this from Perl.
* daemon: Add a trim utility function.Richard Jones2010-03-182-0/+24
| | | | | This function trims the whitespace from around a string. It does this in-place, so it can be called for malloc'd strings.
* add_drive_ro adds readonly=on option if available.Richard Jones2010-03-162-5/+21
| | | | | | | | | | | | | | Change the add_drive_ro call so it adds the readonly=on option if qemu supports that. This just means that qemu will not try to open the drive with O_RDWR, and should not otherwise change the behaviour of qemu or libguestfs. (In particular, writes to the read-only drive are still permitted, and are just discarded when the handle is closed). However it should alleviate RHBZ#571714 where udev was deciding to incorrectly relabel a device because we had opened the device for writing (even though we didn't actually write to it).
* Allow qemu_supports to run earlier.Richard Jones2010-03-162-10/+27
| | | | | | | Reimplement qemu_supports() internal function. Allow it to run before launch so we can test qemu features. Document that you should run guestfs_set_qemu as early as possible to make sure these tests are reliable.
* Add minimal vim to the appliance for virt-rescue.Richard Jones2010-03-161-0/+2
| | | | | virt-rescue lacks an editor. Add vim-minimal (Fedora) or vim-tiny (Debian) to make up for this omission.
* tests: Don't use <guestfs-internal.h> in tests.Richard Jones2010-03-161-2/+1
| | | | | It was failing when including this header, as a consequence of earlier commit 1f56debfcfdc35d6b0.
* guestfs.h: More adjustment to comments in the header file.Richard Jones2010-03-161-10/+14
|
* guestfs.h: Move some internal functions to the internal header.Richard Jones2010-03-162-15/+16
| | | | | | Functions like guestfs__send were never exported through the public API (libguestfs.syms prevented that). However they appeared in the public header. Move them to the internal header.
* Rearrangement and comment changes in <guestfs.h> header file.Richard Jones2010-03-161-10/+18
| | | | There should be no substantive change.
* Prepare for version 1.0.86.1.0.86Richard Jones2010-03-121-1/+1
|
* Tab to space (whitespace fixes only).Richard Jones2010-03-125-104/+104
|
* Docs: Change exit(1) -> exit(EXIT_FAILURE)Richard Jones2010-03-121-1/+1
|
* Rewrite libguestfs-supermin-helper in C.Richard Jones2010-03-129-127/+963
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libguestfs-supermin-helper was previously a shell script. Although we had steadily optimized it, there were a number of intractable hot spots: (1) cpio still reads input files in 512 byte chunks; this is *very* pessimal behaviour, particularly when SELinux is enabled. (2) the hostfiles globbing was done very inefficiently by the shell, with the shell rereading the same directory over and over again. This is a rewrite of this shell script in C. It is approximately 3 times faster without SELinux, and has an even greater speed difference with SELinux. The main features are: (a) It never frees memory, making it simpler. The program is designed to run and exit in sub-second times, so this is acceptable. (b) It caches directory reads, making the globbing of host files much faster (measured this as ~ 4 x speed up). (c) It doesn't use external cpio, but instead contains code to write newc format cpio files, which is all that the kernel can read. Unlike cpio, this code uses large buffers for reads and writes. (d) Ignores missing or unreadable hostfiles, whereas cpio gave a warning. (e) Checks all return values from system calls. (f) With --verbose flag, it will print messages timing itself. This passes all tests. Updated with feedback from Jim Meyering.
* guestfish: Use xstrtoll to parse Int params (RHBZ#569757 RHBZ#567567).Richard Jones2010-03-122-5/+5
| | | | | | Change guestfish so it uses xstrtoll to parse Int (31 bit) parameters. This fixes two bugs on 32 bit platforms which failed when long = 32 bits. long long = 64 bits on both.
* Special case hostfiles handling for libntfs-3g.soRichard Jones2010-03-121-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ntfs-3g project keeps bumping their soname, and this causes dependency problems for the Fedora package. The root of the problem is we depend on /lib/libntfs-3g.so.<N>, but if <N> keeps bumping, the dependency keeps breaking. This commit changes the hostfiles (and hence dependency) to be on /lib/libntfs-3g.so.* instead. The downside to this is we could end up pulling more files into the appliance than are strictly required, but it will fix the Fedora packaging problems being felt by the Fedora maintainer of ntfs-3g. After applying this commit, the change to hostfiles looks like this: @@ -1489,7 +1489,7 @@ ./lib/libpam_misc.so.0 ./lib/libdmraid.so ./lib/libidn.so.11 -./lib/libntfs-3g.so.74 +./lib/libntfs-3g.so.* ./lib/libext2fs.so.2.* ./lib/libpam.so.0 ./lib/libsepol.so.1 @@ -1520,7 +1520,6 @@ ./lib/libnss_files-*.so ./lib/libgio-2.0.so.0 ./lib/libpam_misc.so.0.* -./lib/libntfs-3g.so.74.* ./lib/libanl.so.1 ./lib/libdevmapper-event-lvm2.so.2.* ./lib/libpthread.so.0
* inspector: Read information about Windows guests from the Registry.Richard Jones2010-03-084-103/+113
| | | | | | | | | | | | | | This commit changes substantially the way that we get information about Windows guests. We now use the Windows Registry to get information such as the version, product name and much else. This uses Win::Hivex (ie. the hivex library). 'reged' is no longer needed or used. As an incidental change, this also tries harder to search for %systemroot%, in the case when we cannot find boot.ini (ie. Windows Vista and more recent). This ensures we can get more detail from those versions of Windows.
* inspector: Add product_name field to output.Richard Jones2010-03-086-7144/+12150
| | | | | | This is a free text string containing the "product name" of the OS. It's mainly useful for Windows guests, and a forthcoming patch will get this field from the Windows Registry.
* inspector: Don't crash if $os->{kernels} does not exist.Richard Jones2010-03-081-7/+9
| | | | ie. on Windows.
* inspector: Sort application names.Richard Jones2010-03-081-0/+2
| | | | This ensures the list of applications is stable.
* Remove plymouth libraries from the appliance.Richard Jones2010-03-081-1/+3
|
* Spanish translation of libguestfs (RHBZ#570181).Daniel Cabrera2010-03-031-0/+2814
|
* More complete fix for bash regexp quoting bug.Richard Jones2010-03-021-9/+20
| | | | | | | | | | | | | | | | | | | | | | | | Commit 457fccae1b665347 was not a complete fix, in that it didn't work properly on RHEL 5 era bash (3.2.x). For example: file=libntfs-3g.so.74 [[ "$file" =~ ^lib(.*)\.so\.([0-9]+)\. ]] && \ echo "lib${BASH_REMATCH[1]}.so.${BASH_REMATCH[2]}.*" would on those old shells print: libntfs-3g.so.7.* It seems the final \. was being treated as a plain period (ie. match anything). The only way to work around this incompatibility is to assign the patterns to variables and match on those, ie: p='^lib(.*)\.so\.([0-9]+)\.' [[ "$file" =~ $p ]] && ... This works in both old and new shells.
* Prepare for version 1.0.85.1.0.85Richard Jones2010-03-0112-3030/+2458
| | | | Update PO files.
* fuse: Fix typo in test.Richard Jones2010-03-011-1/+1
|
* build: Fix for bash quoting in supermin-split.sh.in (RHBZ#566511 RHBZ#566512)Richard Jones2010-03-011-8/+19
| | | | | | | | | | Bash changed how the =~ operator worked, see bash FAQ question E14 http://tiswww.case.edu/php/chet/bash/FAQ and http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=487387#25 (RHBZ#566511). This also stops stray "builddir" (yum database) files being incorporated into supermin hostfiles in Koji (RHBZ#566512).
* Updated Polish translations (RHBZ#502533).Piotr Drąg2010-03-011-94/+4
|
* Remove bogus msgstr from kn.po.Richard Jones2010-02-251-5/+0
|
* List application in Debian based vm imagesGuido Günther2010-02-241-0/+17
| | | | | | | | | | | | | Hi, attached patch adds the code to list applications installed in Debian based vm images. Cheers, -- Guido >From 9427a14725b33415058a0713923c62bd231504ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org> Date: Tue, 23 Feb 2010 21:05:02 +0100 Subject: [PATCH 2/2] Add application listing for Debian
* Debian package formatGuido Günther2010-02-241-2/+2
| | | | | | | | | | | | Hi, Minor nitpick: the Debian folks usually refer to deb as the package format not dpkg. Cheers, -- Guido >From 7a9665d40e0a3109833de10f17831ae06fc8885a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org> Date: Tue, 23 Feb 2010 21:04:37 +0100 Subject: [PATCH 1/2] Debina package format is called 'deb' not 'dpkg'
* check for grub/menu.lst tooGuido Günther2010-02-241-2/+8
| | | | | | | | | | | | | | | | | On Tue, Feb 23, 2010 at 08:07:14PM +0100, Guido Günther wrote: > On Tue, Feb 23, 2010 at 07:52:43PM +0100, Guido Günther wrote: > > Hi, > > attached patch makes virt-inspector find the kernels on Debian systems. > > Since there is no /etc/grub.conf it falls back to > > $grubpartition/grub/menu.lst. > Patch got somehow broken. New version fortchcoming. Sorry for the noise. Attached now. No idea where the 'if' went in the first version ;) -- Guido >From d30b4946f017ff8bde9d4ff62f93c418a707d9e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org> Date: Tue, 23 Feb 2010 19:50:40 +0100 Subject: [PATCH] Check for grub/menu.lst if /etc/grub.conf can't be found
* Use 'service' if installedGuido Günther2010-02-241-1/+10
| | | | | | | | | | | | | | | | | | | | | Hi, attached patch should make: http://git.debian.org/?p=pkg-libvirt/libguestfs.git;a=blob;f=debian/patches/0003-appliance-Use-service-udev-start-instead-of-running-.patch;h=c9e6b8489807d4fb1247cb6a8b6f9799bad2a09e;hb=d3a21b5b6850fc3c6e7903d0f5cafa3eb4197d49 http://git.debian.org/?p=pkg-libvirt/libguestfs.git;a=blob;f=debian/patches/0004-Ubuntu-Prefer-starting-udev-by-hand-instead-of-using.patch;h=64b65a971b186e6ab1c9351e94b46d6f5aa242e0;hb=d3a21b5b6850fc3c6e7903d0f5cafa3eb4197d49 superflous. If there's an init script it uses 'service' or falls back to calling the init script directly if it isn't there, otherwise it starts udev directly. Tested on Debian only so far. The patch is based on Rich's above two patches. Cheers, -- Guido From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org> Date: Tue, 23 Feb 2010 18:49:34 +0100 Subject: [PATCH] Check for service and use it if it's there Based on Richard's two patches for the Ubuntu build.
* Update PO files.Richard Jones2010-02-245-678/+153
|
* Added Kannada translations (RHBZ#567860).Shankar Prasad2010-02-241-0/+2231
|
* Spin off hivex as a separate upstream project.Richard Jones2010-02-2239-8143/+20
| | | | | | | | | | | | | | This commit makes the semi-independent hivex library into a separate upstream project. The git repo for hivex is now: http://git.annexia.org/?p=hivex.git;a=summary Downloads of hivex are available here: http://libguestfs.org/download/ All questions, patches, bugs etc should be sent to the libguestfs mailing list and bug tracker.
* enable scrub on DebianGuido Günther2010-02-221-1/+1
|
* hivexsh: Print hex bytes >= 0x80 correctly.Richard Jones2010-02-191-1/+2
| | | | | These were being interpreted as signed chars, and thus printed as "ffffff80" etc.
* Remove unused Perl modules.Richard Jones2010-02-192-2/+0
| | | | These were 'use'd but not actually used.
* Update PO files.Richard Jones2010-02-165-135/+135
|
* Add Hindi translations (RHBZ#565759).Rajesh Ranjan2010-02-161-0/+2214
|
* Turn ProtocolLimitWarning into link to documentation section.Richard Jones2010-02-152-2/+24
|
* initrd-cat: Needs ProtocolLimitWarning.Richard Jones2010-02-151-1/+1
|
* Remove references to FTP, replace with FUSE.Richard Jones2010-02-153-10/+13
| | | | | | | We originally intended to implement an FTP server (and before than, an NFS server). But we didn't implement either. We did however implement a FUSE service (guestmount) which takes the place of both.
* Remove some unused variables.Richard Jones2010-02-153-4/+2
| | | | | | Since we have to compile with -Wno-unused-variables, we don't spot unused variables in code. I found these by compiling the code in Ubuntu.
* Distribute .gitignore files.Richard Jones2010-02-152-2/+5
| | | | | These are useful for Debian since they keep the tarball unpacked in git.
* Add 'make quickcheck' rule to run a quick check.Richard Jones2010-02-151-0/+9
|
* Version 1.0.84.1.0.84Richard Jones2010-02-126-2262/+2326
|
* daemon: Don't need to prefix error messages with the command name.Richard Jones2010-02-1242-114/+117
| | | | | | | | | | | | | | | | | | | | The RPC stubs already prefix the command name to error messages. The daemon doesn't have to do this. As a (small) benefit this also makes the daemon slightly smaller. Code in the daemon such as: if (argv[0] == NULL) { reply_with_error ("passed an empty list"); return NULL; } now results in error messages like this: ><fs> command "" libguestfs: error: command: passed an empty list (whereas previously you would have seen ..command: command:..)
* generator: Don't prefix error messages with command name.Richard Jones2010-02-121-11/+10
| | | | | | | The command name is already being added by the RPC stubs, so adding it again in Perl and C# just results in doubled error messages like: foo: foo: the error
* Sys::Guestfs::Lib::open_guest: Add interface parameter.Richard Jones2010-02-121-2/+15
| | | | This allows you to override the default QEMU block device emulation.