view tools/libxen/README @ 21067:b4a1832a916f

Update Xen version to 4.0.0-rc6
author Keir Fraser <>
date Tue Mar 09 18:18:05 2010 +0000 (2010-03-09)
parents 4d53706e8028
line source
1 Xen API C Bindings
2 ==================
4 This distribution is the source code to the proposed Xen API C bindings.
6 The Xen API project will define an XML-RPC protocol for remote and local
7 management of Xen-based systems, and a set of bindings for these XML-RPC calls
8 into a number of languages (this package contains those to the C language).
10 The intention is to standardise these XML-RPC calls, and then the Xen project
11 will guarantee that that wire protocol will be supported for the long term.
12 The bindings will also be supported in the Xen tree, giving a stable
13 foundation for Xen management tools and middlewares, in particular the Xen CIM
14 providers and libvirt.
16 THIS IS A WORK IN PROGRESS. The API and bindings are under active design and
17 development, and this is a snapshot release for developers only. Both the API
18 and the C bindings are scheduled to be stabilised by the Xen 3.0.4 release
19 i.e. October 2006 at the earliest.
21 These bindings are open-source (LGPL), and will be committed as libraries to
22 the Xen trees for all to use after the Xen 3.0.3 release.
24 We welcome any discussion about this library and the API in general. Please
25 join the Xen-API mailing list if you are interested in this project. I (Ewan
26 Mellor) will collate all the feedback from that list and push out new versions
27 of the document and the bindings as and when.
30 URLs
31 ----
33 Xen-API wiki page:
36 Xen-API mailing list:
40 Usage
41 -----
43 The bindings depend upon libxml2, the XML toolkit from the GNOME project; the
44 test program depends upon libcurl3 also. On Debian, you need the packages
45 libxml2-dev and libcurl3-dev.
47 To compile, type make. To compile the test also, type make
48 test/test_bindings, remembering the additional dependency.
50 To run the test, do
52 LD_LIBRARY_PATH=. ./test/test_bindings <url> <username> <password>
54 where <url> is the fragment of the server URL that follows the http://, for
55 example "localhost:8005/RPC2".