summaryrefslogtreecommitdiffstats
path: root/src/guestfs.h
Commit message (Collapse)AuthorAgeFilesLines
* Don't export STREQ and friends in <guestfs.h>Richard Jones2009-11-101-10/+0
| | | | | Move these to private header file(s) and other places as required since these aren't part of the public API.
* define STREQ, STRNEQ, STREQLEN, STRCASEQ, etc.Jim Meyering2009-11-091-0/+10
| | | | | | * src/guestfs.h: Define STREQ and company. * daemon/daemon.h: Likewise. * hivex/hivex.h: Likewise.
* Remove main loop.Richard Jones2009-09-141-50/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit removes the external main loop, which never worked and caused a number of bugs. Requests are now done synchronously, and if the user wants to have requests issued in the background or to have a responsive GUI, then they'll just have to use threads. The big change is to push all reads and writes through two functions called send_to_daemon (for writes) and recv_from_daemon (for reads) which operate synchronously. These functions read/write whole messages, and also handle checking for EOF (ie. daemon died) and asynchronous log message events from qemu (eg. from debug / dmesg printed by the guest). A more complete description of how these work can be found in the code. This code passes a complete run of the tests. Bugs believed to be fixed by this commit: https://bugzilla.redhat.com/show_bug.cgi?id=501888 internal error: reply callback called twice https://bugzilla.redhat.com/show_bug.cgi?id=504418 In virt-inspector: "download: guestfs_download reply failed, see earlier error messages" I have tried to avoid reintroducing this: https://bugzilla.redhat.com/show_bug.cgi?id=508713 libguestfs: error: write: Broken pipe (guestfish only) One other benefit of this is that 'set_busy/end_busy' calls no longer appear in traces.
* maint: guestfs.c: avoid warning about possible NULL deref from llvm/clangJim Meyering2009-08-311-1/+1
| | | | * src/guestfs.h (guestfs_abort_cb): Declare with attribute noreturn.
* Generate structs and struct lists generically.Richard Jones2009-07-071-7/+0
| | | | | | | | | | | This modifies the way that struct and struct lists are generated (for return values) so that there is no need to add an explicit new type when adding a new structure. All tests pass, and the C API should be compatible. I have also inspected the changes that are made to the generated code by hand.
* use safe_malloc and safe_calloc in generated codeJim Meyering2009-07-031-1/+2
| | | | | | | | | | * src/generator.ml (safe_malloc): Define to guestfs_safe_malloc. (safe_calloc): Define to guestfs_safe_calloc. [most generated code]: Fail immediately upon failure of otherwise- unchecked malloc and calloc calls. * src/guestfs.c: Include <stddef.h>. (xalloc_oversized): Define. * src/guestfs.h (guestfs_safe_calloc): Declare.
* Add 'readdir' call.Richard W.M. Jones2009-07-021-0/+1
| | | | | | | | | | | | This adds a readdir call (mostly intended for programs). The return value is a list of guestfs_dirent structures. This adds the new types 'struct guestfs_dirent' and 'struct guestfs_dirent_list', along with all the code to return these in the different language bindings. Also includes additional tests for OCaml and Perl bindings to test this.
* Include the __cplusplus header magic so API really callable from C++.Richard Jones2009-04-201-0/+8
|
* Implement upload and download commands.Richard Jones2009-04-201-2/+4
|
* Implement _send_sync, _send_file_sync and _receive_file_sync.Richard Jones2009-04-191-3/+7
|
* Begin to add the upload and download commands.Richard Jones2009-04-181-11/+11
|
* Split out send and reply operations into separate callbacks.Richard Jones2009-04-181-0/+2
|
* guestfs_send -> guestfs__send, in case we want a future command called "send".Richard Jones2009-04-181-1/+1
|
* Separate out the high-level API actions.Richard Jones2009-04-181-0/+10
| | | | | | - Split out the high-level API actions so that they are in a separate file, and use the defined guestfs C API, instead of fiddling around with internal structures.
* Rewrite of main loop impl, start of FileIn/FileOut support.Richard Jones2009-04-181-11/+21
|
* Lots, mainly Python bindings.Richard Jones2009-04-131-0/+2
|
* Added Augeas support.Richard Jones2009-04-091-0/+1
|
* Many non-daemon functions are now auto-generated.Richard Jones2009-04-081-17/+0
|
* pvs/vgs/lvs commands working now.Richard Jones2009-04-071-0/+5
|
* LIBGUESTFS_PATH implementation.Richard Jones2009-04-041-0/+2
|
* Implemented autosync, make it the default for guestfish.Richard Jones2009-04-041-0/+3
|
* Lots more auto-generation.Richard Jones2009-04-031-2/+1
|
* Code to handle the daemon communications socket.Richard Jones2009-04-021-2/+4
|
* Guest boots, and basic select/callbacks work.Richard Jones2009-04-021-16/+60
|
* Starts up QEMU nowrjones2009-03-041-2/+1
|
* Running qemu as a subprocess.rjones2009-03-031-0/+55