summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Detect Red Hat Desktop as 'rhel' distro (RHBZ#682979).Richard W.M. Jones2011-03-081-3/+3
| | | | | | | | | | | | | | /etc/redhat-release on Red Hat Desktop contains the following string: Red Hat Desktop release 4 (Nahant Update 8) Previously we matched against the string "Red Hat Enterprise Linux" but since this does not contain that string, this distro wasn't being detected correctly. Note this also changes the obsolete Perl code, for the benefit of virt-v2v. (cherry picked from commit c1a227a960066fb9552e0c225bc473be365b67b0)
* Fix inspection code when PCRE or hivex is missing.Richard W.M. Jones2011-03-081-0/+24
| | | | (cherry picked from commit 2b26c7f721fc8ed2e6f64963289981ac286c02aa)
* lib: Move appliance launching to separate function.Richard W.M. Jones2011-03-081-14/+24
| | | | | This is just code motion. (cherry picked from commit 99f0d8859fdc8f6c81873d4cdd1c8c780ac25e84)
* lib: Fix use-after-free bug in XPath parsing code.Richard W.M. Jones2011-03-081-1/+1
| | | | (cherry picked from commit 82f5fdb0dbbc0c7b04861edeadf70c86c9342df2)
* inspect: Add macros for file size limits.Richard W.M. Jones2011-03-081-9/+37
| | | | | | | This also bumps the file size limit for "small text files" up to 2 MB, since we want to parse Windows CD txtsetup.sif files that are usually around 500K in size. (cherry picked from commit 4402e6048fb2a56461f9e4d474fc2f1391248781)
* docs: Refresh programming language list in guestfs(3).Richard W.M. Jones2011-01-101-5/+5
| | | | (cherry picked from commit 86a53e17de672a79a994b905676b4566da9f072c)
* docs: Refresh programming language equivalence example in guestfs(3).Richard W.M. Jones2011-01-101-3/+3
| | | | (cherry picked from commit 33e9639f2037540a89a9bbaf7212683e8a60fe84)
* docs: Fix missing g handle in guestfs(3) man page.Richard W.M. Jones2011-01-101-2/+2
| | | | (cherry picked from commit cdc798ac3558e416dc756a0fcefad2af5ca307e0)
* docs: Refresh guestfs(3)/DOWNLOADING.Richard W.M. Jones2011-01-101-4/+3
| | | | (cherry picked from commit 22042693cc1e0455a4a503dba93a9fedc9c74f04)
* docs: Refresh guestfs(3)/MOUNTINGRichard W.M. Jones2011-01-101-9/+15
| | | | (cherry picked from commit 1a9b7df8f2092701fdc5a77a4d9edfcaa1a20acf)
* docs: Update API support.Richard W.M. Jones2011-01-1013-6/+5043
|
* api-support: Fix detection of similar APIs.Richard W.M. Jones2011-01-101-1/+1
| | | | | | Because we didn't match on word boundaries, the previous code would get confused by similar APIs, eg. getxattr vs getxattrs. (cherry picked from commit 7ba1b55aa79c56ded770f8ea46716eb054fbfe78)
* docs: Obsolete HACKING file, move content into guestfs(3) man page.Richard W.M. Jones2011-01-102-1/+343
| | | | | | | Add a new section called "EXTENDING LIBGUESTFS" to the guestfs manual page which contains all the information previously in "HACKING". (cherry picked from commit d2400da92e5e2cc7fd5e33e61220a33214d5241c)
* docs: Add section on using /dev/fd/* with upload and download calls.Richard W.M. Jones2010-12-171-0/+21
|
* ntfs-3g: Document problems with symlinks and alternatives (RHBZ#663407).Richard W.M. Jones2010-12-161-0/+31
|
* New APIs: getxattr and lgetxattr to get single extended attributes.Richard W.M. Jones2010-12-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These APIs are essentially required to work around a problem with ntfs-3g. This filesystem (or FUSE?) does not list all extended attributes of a file when you call listxattr(2). However if you know the name of an extended attribute, you can retrieve it directly using getxattr(2). The current APIs (getxattrs etc) are simple to use, but they don't work if we can't list out the extended attributes (ie. by calling listxattr(2)). Example using the new APIs on an ntfs-3g filesystem: ><fs> lgetxattr "/Documents and Settings" system.ntfs_attrib | hexdump -C 00000000 16 24 00 00 |.$..| 00000004 ><fs> lgetxattr "/Documents and Settings" system.ntfs_reparse_data | hexdump -C 00000000 03 00 00 a0 34 00 00 00 00 00 18 00 1a 00 10 00 |....4...........| 00000010 5c 00 3f 00 3f 00 5c 00 43 00 3a 00 5c 00 55 00 |\.?.?.\.C.:.\.U.| 00000020 73 00 65 00 72 00 73 00 00 00 43 00 3a 00 5c 00 |s.e.r.s...C.:.\.| 00000030 55 00 73 00 65 00 72 00 73 00 00 00 |U.s.e.r.s...| 0000003c ><fs> getxattr "/Documents and Settings" system.ntfs_reparse_data | hexdump -C libguestfs: error: getxattr: getxattr: No such file or directory ><fs> getxattr "/Documents and Settings" system.ntfs_attrib | hexdump -C libguestfs: error: getxattr: getxattr: No such file or directory ><fs> lgetxattr "/Documents and Settings" system.ntfs_attrib | hexdump -C 00000000 16 24 00 00 |.$..| 00000004 ><fs> getxattr "/Users" system.ntfs_attrib | hexdump -C 00000000 11 00 00 00 |....| 00000004
* appliance: Don't set utime on cachedir until we know it is safe.Richard W.M. Jones2010-12-111-1/+2
| | | | | This could be used to touch an arbitrary file (albeit one which must already exist), and this could have been a security problem.
* appliance: Touch cached appliance files so they don't get tmp cleaned.Richard W.M. Jones2010-12-111-0/+5
|
* Remove extra \n character from end of error messages.Richard W.M. Jones2010-12-111-3/+3
|
* appliance: Be careful about cleaning up old appliances.Richard W.M. Jones2010-12-111-165/+296
| | | | | | | | | | | This change resolves several issues with current appliance building: (1) Old appliances are cleaned up. (2) Race conditions between appliance building is handled better. (3) Several bugs fixed.
* Remove several unused local variables.Richard W.M. Jones2010-12-102-5/+0
| | | | (Revealed by compiling under Debian where this is a warning).
* build: Remove check for root.Richard W.M. Jones2010-12-091-11/+0
| | | | | | | With the new package building system, it is no longer dangerous to run 'configure', 'make' or 'make check' as root (although it is still not necessary and not advisable). In any case we don't need to check this.
* docs: Link to guestfs-examples(3) after simple example.Richard W.M. Jones2010-12-071-1/+2
|
* docs: Note that guestfs_sync is no longer necessary.Richard W.M. Jones2010-12-071-6/+4
|
* appliance: Change to using febootstrap 3.x supermin appliance.Richard W.M. Jones2010-12-051-6/+1
| | | | | | | | | This removes all support for building the ordinary / old style appliance using febootstrap 2.x, debootstrap, debirf, fakeroot and fakechroot. Instead this uses febootstrap 3.x to build the supermin appliance in a simpler cross-distro manner.
* appliance: Don't look for kmod.whitelist.Richard W.M. Jones2010-12-041-1/+1
| | | | This file is not used for building the supermin appliance.
* New API: mkfs_opts, mkfs with optional arguments.Richard W.M. Jones2010-12-021-1/+1
| | | | | | 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-022-3/+4
| | | | | | | | 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.
* protocol: Handle progress notification messages during FileIn.Richard W.M. Jones2010-12-011-3/+30
| | | | | | | If the daemon sends progress notification messages while we are uploading FileIn parameters, these are received in check_for_daemon_cancellation_or_eof. Modify this library function so that it turns these messages into callbacks.
* protocol: Really read 4 bytes while checking for cancellation.Richard W.M. Jones2010-12-011-10/+49
| | | | | | | | | | | | We've not actually hit this bug in practice, but at least in theory while checking for cancellation we could read > 0 but fewer than 4 bytes, which would effectively be discarded and we would lose synchronization. Note the socket is non-blocking. Change the code so that we temporarily set the socket back to blocking and force the read of all 4 bytes.
* protocol: Send progress_hint in header.Richard W.M. Jones2010-12-012-3/+4
| | | | | | 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-012-0/+10
| | | | | | | | 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).
* Update API support.Richard W.M. Jones2010-11-2618-0/+7001
|
* Export private function 'guestfs___for_each_disk' for use by virt-df.Richard W.M. Jones2010-11-251-45/+87
| | | | | | 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.
* Fix memory leak (xptype XPath obj) in add-domain API.Richard W.M. Jones2010-11-251-0/+1
|
* ruby: Translate C examples into Ruby and include documentation.Richard W.M. Jones2010-11-241-2/+2
|
* python: Translate C examples into Python and include documentation.Richard W.M. Jones2010-11-241-5/+2
|
* ocaml: Translate C examples into OCaml and include documentation.Richard W.M. Jones2010-11-241-1/+2
|
* docs: Standard C examples, and guestfs-examples(3) man page.Richard W.M. Jones2010-11-241-0/+4
|
* build: Centralize all POD manipulation in 'podwrapper.sh' script.Richard W.M. Jones2010-11-241-17/+14
|
* inspect: Detect if db_dump and db_load programs are available.Richard W.M. Jones2010-11-241-1/+7
| | | | | | If db_dump is not available then disable RPM application detection. Note these utilities have odd names on Debian.
* New tool: virt-filesystemsRichard W.M. Jones2010-11-231-0/+1
| | | | | | | | This tool replaces virt-list-filesystems and virt-list-partitions with a new tool written in C with a more uniform command line structure and output. This existing Perl tools are deprecated but remain indefinitely.
* inspect: Fix memory leak of hostname.Richard W.M. Jones2010-11-191-0/+1
| | | | | This fixes a memory leak introduced by commit fab75c0337d7897d10ea5e95e47ac05eab81ace9.
* generator: trace mode prints return values.Richard W.M. Jones2010-11-172-0/+7
|
* New API: inspect-get-hostname to return the hostname of the guest.Richard W.M. Jones2010-11-163-3/+247
| | | | | This returns the hostname of the guest. Tested on RHEL, Fedora, Debian 5, Ubuntu 10.10, FreeBSD 8, Windows 7.
* inspect: Check /etc/lsb-release is not too large before calling head on it.Richard W.M. Jones2010-11-161-1/+16
|
* inspect: Add function to read the first line of a file, with safety checks.Richard W.M. Jones2010-11-161-14/+42
|
* inspect: Abstract the wrapper that sets up Augeas.Richard W.M. Jones2010-11-161-33/+50
| | | | This is just code motion.
* New API: inspect-list-applications.Richard W.M. Jones2010-11-152-1/+455
| | | | | | | | 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: Centralize all file downloads through a single function.Richard W.M. Jones2010-11-151-32/+52
|