mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
This patch adds labeling of virtual network interfaces to xend and makes this manageable through the Xen-API. It's a feature that is only usable if ACM is enabled in Xen and xend is used through the xen-api. A labeled virtual network interface will be plugged into a bridge where other domains with the same-labeled network interface are connected to, so that only same-colored domains can communicate with each other. The bridge should be connected to the outside world using VLAN for isolation, extending the isolation beyond the local machine. If a virtual machine is labeled with a VM label that only has one Simple Type Enforcement Type then it is not necessary to label the virtual network interface, but the color of the network interface is determined from the VM's label. If, however, a virtual machine is labeled with a VM label that has multiple Simple Type Enforcement Types, then the explicit labeling of each virtual network interface is required. To specify the label of a network interface, the vif line in the VM's configuration file has been extended with parameters similar use for specifying the label of the VM: vif = ['policy=<policy name>,label=<resource label>'] This labels the VIF of the virtual machine for usage under the policy 'policy name' and labels it with the label 'resource label'. Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
Xen API C Bindings ================== This distribution is the source code to the proposed Xen API C bindings. The Xen API project will define an XML-RPC protocol for remote and local management of Xen-based systems, and a set of bindings for these XML-RPC calls into a number of languages (this package contains those to the C language). The intention is to standardise these XML-RPC calls, and then the Xen project will guarantee that that wire protocol will be supported for the long term. The bindings will also be supported in the Xen tree, giving a stable foundation for Xen management tools and middlewares, in particular the Xen CIM providers and libvirt. THIS IS A WORK IN PROGRESS. The API and bindings are under active design and development, and this is a snapshot release for developers only. Both the API and the C bindings are scheduled to be stabilised by the Xen 3.0.4 release i.e. October 2006 at the earliest. These bindings are open-source (LGPL), and will be committed as libraries to the Xen trees for all to use after the Xen 3.0.3 release. We welcome any discussion about this library and the API in general. Please join the Xen-API mailing list if you are interested in this project. I (Ewan Mellor) will collate all the feedback from that list and push out new versions of the document and the bindings as and when. URLs ---- Xen-API wiki page: http://wiki.xensource.com/xenwiki/XenApi Xen-API mailing list: http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-api Usage ----- The bindings depend upon libxml2, the XML toolkit from the GNOME project; the test program depends upon libcurl3 also. On Debian, you need the packages libxml2-dev and libcurl3-dev. To compile, type make. To compile the test also, type make test/test_bindings, remembering the additional dependency. To run the test, do LD_LIBRARY_PATH=. ./test/test_bindings <url> <username> <password> where <url> is the fragment of the server URL that follows the http://, for example "localhost:8005/RPC2".