summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Version 1.19.20.1.19.20Richard W.M. Jones2012-07-1720-939/+1173
|
* case_sensitive_path: Allow trailing path element to be missing (RHBZ#840115).Richard W.M. Jones2012-07-172-16/+25
| | | | | | | | | | | | case_sensitive_path is undefined when the final path element doesn't exist. Currently it returns an error, but this means that creating a new file doesn't work as expected: $ guestfish --rw -i -d windows touch 'win:c:\blah' libguestfs: error: case_sensitive_path: blah no file or directory found with this name We should allow this case (provided there is no trailing slash) so that new files or directories can be created.
* case_sensitive_path: Move variables to top of function.Richard W.M. Jones2012-07-171-6/+8
| | | | This is just code motion.
* docs: Use L<...> for links.Richard W.M. Jones2012-07-175-31/+27
| | | | | Instead of working around bugs, podwrapper has been fixed so that links work in all output formats.
* podwrapper: Subclass Pod::Man so we can fix the way links are generated.Richard W.M. Jones2012-07-171-5/+22
|
* podwrapper: Define $VERSION in subclass.Richard W.M. Jones2012-07-171-1/+2
| | | | | The superclass sometimes uses this and will give an undefined error if it's missing.
* podwrapper: Tidy up the program name.Richard W.M. Jones2012-07-171-21/+26
| | | | | | | Messages now look like this: podwrapper.pl: wrote guestfs-examples.3 podwrapper.pl: wrote ../html/guestfs-examples.3.html
* perl: In examples, call $g->shutdown, $g->close.Richard W.M. Jones2012-07-172-2/+4
|
* perl: Use $g instead of $h in documentation.Richard W.M. Jones2012-07-178-80/+80
| | | | $g is the "standard" name for libguestfs handles.
* docs: febootstrap is in section 8 of the manual, not section 1.Richard W.M. Jones2012-07-161-1/+1
|
* Replace podwrapper shell script with custom Perl script.Richard W.M. Jones2012-07-165-249/+390
| | | | | | | | This uses Pod::Simple so it properly parses the input POD and can generate proper custom output as required specifically by libguestfs. One immediate benefit is that links between and within manual pages now work mostly correctly.
* Fix pod.css for new HTML output from Perl 5.16.Richard W.M. Jones2012-07-161-9/+9
| | | | | There used to be a <div> around the table of contents, but that is no longer present.
* configure: Make generated files read-only.Richard W.M. Jones2012-07-161-3/+3
| | | | Some of the generated files anyway.
* build: Change calls to podwrapper.sh to use $(PODWRAPPER).Richard W.M. Jones2012-07-1626-44/+48
| | | | | This will allow us to easily change the location of this script in future.
* virt-make-fs: Add --floppy option to make preconfigured vfd's.Richard W.M. Jones2012-07-161-0/+14
|
* virt-make-fs: Recognize "msdos" as a partition or filesystem type.Richard W.M. Jones2012-07-161-2/+6
| | | | Set MBR partition type byte accordingly.
* Revert "ocaml: Calling Gc.compact before g#mount_local works around ↵Richard W.M. Jones2012-07-161-1/+0
| | | | | | | | RHBZ#838081." This reverts commit ad7c4498f66f37c4219242c6df04d28e9ee7877f. Reverted because we still see core dumps.
* Version 1.19.19.1.19.19Richard W.M. Jones2012-07-1620-23037/+23328
|
* run: Update comments.Richard W.M. Jones2012-07-161-4/+5
|
* generator: Rename 'ntfsresize_opts' API to 'ntfsresize'.Richard W.M. Jones2012-07-146-38/+15
| | | | | By using the once_had_no_optargs flag, this change is backwards compatible for callers.
* generator: Rename 'mkfs_opts' API to 'mkfs'.Richard W.M. Jones2012-07-1410-68/+46
| | | | | By using the once_had_no_optargs flag, this change is backwards compatible for callers.
* generator: Rename 'add_drive_opts' API to 'add_drive'.Richard W.M. Jones2012-07-1447-115/+93
| | | | | | By using the once_had_no_optargs flag, this change is backwards compatible for callers (except Haskell, PHP and GObject as discussed in earlier commit).
* generator: In non-C bindings, generate '*_opts' alias.Richard W.M. Jones2012-07-1410-34/+218
| | | | | | | | | | | | | | | | | | | | | | | | | | In C, a function called 'func' which has once_had_no_optargs=true will (because of the previous commit) generate 'func_opts' and a backwards-compatibility function called 'func'. This commit changes some of the non-C bindings so that they also generate 'func_opts' which is merely a wrapper that calls 'func'. This avoids incompatibility when we rename 'mkfs_opts' etc back to plain 'mkfs', and it also makes it easier to translate between other language bindings and C code. NB: Some bindings do not include aliases: PHP: There's no way to easily alias methods in PHP < 5.3, and we can't assume everyone has this minimum version. GObject: Very complex to add aliases, but we should probably do this at some point. Haskell: No support for optargs in these bindings. Unfortunately this means that we can no longer bind 'Guestfs.add_drive' (since it will be changed to add optional arguments) making the Haskell bindings even less useful than they were already.
* generator: Allow non-optargs functions to gain optargs.Richard W.M. Jones2012-07-145-112/+196
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds a flag (once_had_no_optargs) which can be used to add optargs to functions that currently don't have any. The idea is that if 'func' currently has no optargs, we can safely add optargs provided we are backwards compatible for existing callers. In C that means we leave 'guestfs_func' alone and provide an extra function 'guestfs_func_opts' that takes the optargs ('guestfs_func' becomes a wrapper that calls 'guestfs_func_opts'). In the C generator this means there are two names for each function (although the two names are normally identical). 'c_name' is the name that we export publicly (eg. [guestfs_] 'func_opts'). 'name' is the internal name of the function (eg. 'func') which is used for everything apart from the public interface, and also to generate the no-optargs compat function. In other languages that can add optional arguments safely, we simply add the arguments to the existing 'func', so for example in Perl: $g->func (required_args) $g->func (required_args, optional_args) can be used. Note that this commit does not cause any change to the output of the generator. I verified this by diffing the output before and after.
* generator: Rearrange some C generator code into sub-functions.Richard W.M. Jones2012-07-131-571/+585
| | | | | This is just code motion. I verified this by comparing the generator output before and after this commit.
* java: Generate overloaded non-optargs method for each optargs method.Richard W.M. Jones2012-07-133-2/+25
| | | | | | | | | | | | | | For example the existing method: public void mkfs_opts (String fstype, String device, Map<..> optargs); is now accompanied by this overloaded method which is a simple wrapper: public void mkfs_opts (String fstype, String device) throws LibGuestFSException { mkfs_opts (fstype, device, null); }
* generator: Add c_optarg_prefix for each action.Richard W.M. Jones2012-07-1312-50/+49
| | | | This updates commit 9286f556c6a9e6967fcac8aacdae3660821c4c7a.
* generator: Add c_function (C function name) to each action struct.Richard W.M. Jones2012-07-1214-58/+68
| | | | | | | | | | | | | | | | | | | | | | | | | This field, which is generated internally by the generator, is the name of the C function corresponding to each action. For actions that have NO optional arguments, it's just "guestfs_<name>". For actions that have any optional arguments, it is "guestfs_<name>_argv" (since any binding has to construct the optional argument struct explicitly). In a future commit, this mapping may become more complex. This commit also "fixes" the C# bindings which didn't handle optional arguments properly at all. In fact, it doesn't fix this, it just changes it enough that it probably now compiles. We should either compile and test the bindings routinely with Mono, or drop them, since they are starting to bit-rot. In the GObject bindings, I have added a space between the C function name and the first paren. Apart from the C# and GObject changes, this is just code motion. It was verified by diffing the output of the generator before and after.
* generator: Change the way that camel-case names are generated.Richard W.M. Jones2012-07-124-53/+73
| | | | | | | | Store the camel-case name directly in the struct instead of generating it on the fly in only the GObject bindings. This is just code motion. Tested by verifying that the generator output is identical.
* tests: Rename test0* functions as internal_test*.Richard W.M. Jones2012-07-1111-122/+135
| | | | | The internal_* prefix is reserved for internal functions such as these tests.
* tests: Better way to ensure 'g' is used and return success or error.Richard W.M. Jones2012-07-112-4/+2
|
* generator: Use a struct instead of a tuple to describe each action.Richard W.M. Jones2012-07-1122-4104/+5738
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Each action changes from a tuple like this: ("cat", (RString "content", [Pathname "path"], []), 4, [ProtocolLimitWarning], [InitISOFS, Always, TestOutput ( [["cat"; "/known-2"]], "abcdef\n")], "list the contents of a file", "[...]"); to a slightly longer but more readable struct: { defaults with name = "cat"; style = RString "content", [Pathname "path"], []; proc_nr = Some 4; protocol_limit_warning = true; tests = [ InitISOFS, Always, TestOutput ( [["cat"; "/known-2"]], "abcdef\n") ]; shortdesc = "list the contents of a file"; longdesc = "[...]" }; ["defaults" is a struct which contains the defaults for every field, allowing us to use the "{ defaults with ... }" syntax to just update the fields we want to be different from the defaults.] This is a mechanical change and there is no change to the output of the generator. I checked the output before and after with diff to verify this. There are no changes in the output apart from UUIDs which are expected to change with each run.
* todo: Tidy up test0 functions.Richard W.M. Jones2012-07-111-0/+5
|
* generator: Add a note in generator/README about safely extending functions.Richard W.M. Jones2012-07-111-0/+9
|
* generator: Move note in comment to generator/README file.Richard W.M. Jones2012-07-112-8/+7
|
* fuse: Cleaner code and documentation for safe cleanups.Richard W.M. Jones2012-07-102-7/+50
|
* tests/guests: Add temp files to CLEANFILES.Richard W.M. Jones2012-07-101-1/+1
|
* Update translations from Transifex.Richard W.M. Jones2012-07-1017-1280/+721
|
* podwrapper: Fix shell script.Richard W.M. Jones2012-07-101-2/+2
| | | | This fixes commit f9a5e3ed86ee7bcd13619f13b4d4de6ce46ac8c3.
* podwrapper.sh: Take date from ChangeLog or from the latest git commit.Hilko Bengen2012-07-101-0/+8
|
* Version 1.19.18.1.19.18Richard W.M. Jones2012-07-0920-541/+902
|
* fuse: Add regression test for RHBZ#838592.Richard W.M. Jones2012-07-092-2/+79
|
* fuse: Add guestmount --pid-file option (RHBZ#838592).Richard W.M. Jones2012-07-092-2/+52
|
* fuse: Link to mount-local documentation in guestmount man page.Richard W.M. Jones2012-07-091-1/+5
|
* fuse: Document race condition possible with fusermount.Richard W.M. Jones2012-07-091-0/+16
| | | | | See also: https://bugzilla.redhat.com/show_bug.cgi?id=835466#c9
* fuse: Document Device or resource busy errors from fusermount.Richard W.M. Jones2012-07-091-0/+17
|
* Revert "launch: Correction in comment."Richard W.M. Jones2012-07-081-2/+4
| | | | | | This reverts commit 6e5a85bb9b6557bc337625a339728e23f5f2dd94. It turns out this is a bug in QEMU after all.
* extra-tests: Add a test using upstream qemu.Richard W.M. Jones2012-07-073-1/+75
|
* 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.
* Update gnulib to latest version.Richard W.M. Jones2012-07-071-0/+0
|