aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Veillard <veillard@redhat.com>2006-08-16 17:58:23 +0000
committerDaniel Veillard <veillard@redhat.com>2006-08-16 17:58:23 +0000
commit6d1ef709ccffb2574fa5bace3673ba0e12693150 (patch)
tree04c8ca70cc51d5753f7d6ea85140cdfb7e971ea6
parentAdded setvcpus, setmem, setmaxme commands to virsh (diff)
downloadlibvirt-LIBVIRT_0_1_4.tar.gz
libvirt-LIBVIRT_0_1_4.tar.bz2
libvirt-LIBVIRT_0_1_4.zip
* NEWS configure.in doc//* include/libvirt/libvirt.hv0.1.4LIBVIRT_0_1_4
include/libvirt/libvirt.h.in: preparing release of 0.1.4, regenerated docs, fixed a few things * src/proxy_internal.c src/test.c src/xend_internal.c: a few trivial fixes Daniel
-rw-r--r--ChangeLog8
-rw-r--r--NEWS20
-rw-r--r--configure.in2
-rw-r--r--docs/APIchunk0.html12
-rw-r--r--docs/APIchunk1.html6
-rw-r--r--docs/APIchunk2.html7
-rw-r--r--docs/APIchunk3.html11
-rw-r--r--docs/APIfiles.html1
-rw-r--r--docs/APIsymbols.html1
-rw-r--r--docs/devhelp/libvirt-libvirt.html6
-rw-r--r--docs/devhelp/libvirt-virterror.html3
-rw-r--r--docs/format.html84
-rw-r--r--docs/html/libvirt-libvirt.html2
-rw-r--r--docs/html/libvirt-virterror.html1
-rw-r--r--docs/libvir.html111
-rw-r--r--docs/libvirt-api.xml6
-rw-r--r--docs/libvirt-refs.xml33
-rw-r--r--docs/news.html19
-rw-r--r--include/libvirt/libvirt.h4
-rw-r--r--include/libvirt/libvirt.h.in2
-rw-r--r--src/proxy_internal.c2
-rw-r--r--src/test.c18
-rw-r--r--src/xend_internal.c2
23 files changed, 242 insertions, 119 deletions
diff --git a/ChangeLog b/ChangeLog
index dc581bc27..b359a6bb9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Wed Aug 16 19:07:52 CEST 2006 Daniel Veillard <veillard@redhat.com>
+
+ * NEWS configure.in doc//* include/libvirt/libvirt.h
+ include/libvirt/libvirt.h.in: preparing release of 0.1.4,
+ regenerated docs, fixed a few things
+ * src/proxy_internal.c src/test.c src/xend_internal.c:
+ a few trivial fixes
+
Wed Aug 16 12:33:02 EDT 2006 Daniel Berrange <berrange@redhat.com>
* src/virsh.c: Added 'setvcpus', 'setmem', 'setmaxmem'
diff --git a/NEWS b/NEWS
index 2674a7b14..6ddc5dfc6 100644
--- a/NEWS
+++ b/NEWS
@@ -5,11 +5,29 @@
http://libvirt.org/news.html
Releases
+0.1.4: Aug 16 2006:
+ - bug fixes: spec file fix (Mark McLoughlin), error report problem (with
+ Hugh Brock), long integer in Python bindings (with Daniel Berrange), XML
+ generation bug for CDRom (Daniel Berrange), bug whem using number() XPath
+ function (Mark McLoughlin), fix python detection code, remove duplicate
+ initialization errors (Daniel Berrange)
+ - improvements: UUID in XML description (Peter Vetere), proxy code
+ cleanup, virtual CPU and affinity support + virsh support (Michel
+ Ponceau, Philippe Berthault, Daniel Berrange), port and tty informations
+ for console in XML (Daniel Berrange), added XML dump to driver and proxy
+ support (Daniel Berrange), extention of boot options with support for
+ floppy and cdrom (Daniel Berrange), features block in XML to report/ask
+ PAE, ACPI, APIC for HVM domains (Daniel Berrange), fail saide-effect
+ operations when using read-only connection, large improvements to test
+ driver (Daniel Berrange)
+ - documentation: spelling (Daniel Berrange), test driver examples.
+
+
0.1.3: Jul 11 2006:
- bugfixes: build as non-root, fix xend access when root, handling of
empty XML elements (Mark McLoughlin), XML serialization and parsing fixes
(Mark McLoughlin), allow to create domains without disk (Mark
- McLoughlin),
+ McLoughlin),
- improvement: xenDaemonLookupByID from O(n^2) to O(n) (Daniel Berrange),
support for fully virtualized guest (Jim Fehlig, DV, Mark McLoughlin)
- documentation: augmented to cover hvm domains
diff --git a/configure.in b/configure.in
index e0229abfa..e29b8cf1c 100644
--- a/configure.in
+++ b/configure.in
@@ -5,7 +5,7 @@ AC_CANONICAL_HOST
LIBVIRT_MAJOR_VERSION=0
LIBVIRT_MINOR_VERSION=1
-LIBVIRT_MICRO_VERSION=3
+LIBVIRT_MICRO_VERSION=4
LIBVIRT_MICRO_VERSION_SUFFIX=
LIBVIRT_VERSION=$LIBVIRT_MAJOR_VERSION.$LIBVIRT_MINOR_VERSION.$LIBVIRT_MICRO_VERSION$LIBVIRT_MICRO_VERSION_SUFFIX
LIBVIRT_VERSION_INFO=`expr $LIBVIRT_MAJOR_VERSION + $LIBVIRT_MINOR_VERSION`:$LIBVIRT_MICRO_VERSION:$LIBVIRT_MINOR_VERSION
diff --git a/docs/APIchunk0.html b/docs/APIchunk0.html
index 57e66e2e7..ddb622803 100644
--- a/docs/APIchunk0.html
+++ b/docs/APIchunk0.html
@@ -6,6 +6,7 @@
<a href="APIchunk3.html">o-s</a>
<a href="APIchunk4.html">t-z</a>
</h2><h2>Letter A:</h2><dl><dt>API</dt><dd><a href="html/libvirt-libvirt.html#VIR_COPY_CPUMAP">VIR_COPY_CPUMAP</a><br />
+<a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
<a href="html/libvirt-libvirt.html#VIR_CPU_USABLE">VIR_CPU_USABLE</a><br />
<a href="html/libvirt-libvirt.html#VIR_UNUSE_CPU">VIR_UNUSE_CPU</a><br />
<a href="html/libvirt-libvirt.html#VIR_USE_CPU">VIR_USE_CPU</a><br />
@@ -15,7 +16,8 @@
<a href="html/libvirt-libvirt.html#virConnectOpenReadOnly">virConnectOpenReadOnly</a><br />
</dd><dt>After</dt><dd><a href="html/libvirt-libvirt.html#virDomainSave">virDomainSave</a><br />
</dd></dl><h2>Letter B:</h2><dl><dt>Bytes</dt><dd><a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
-</dd></dl><h2>Letter C:</h2><dl><dt>CPU</dt><dd><a href="html/libvirt-libvirt.html#VIR_UNUSE_CPU">VIR_UNUSE_CPU</a><br />
+</dd></dl><h2>Letter C:</h2><dl><dt>CPU</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
+<a href="html/libvirt-libvirt.html#VIR_UNUSE_CPU">VIR_UNUSE_CPU</a><br />
<a href="html/libvirt-libvirt.html#VIR_USE_CPU">VIR_USE_CPU</a><br />
<a href="html/libvirt-libvirt.html#_virDomainInfo">_virDomainInfo</a><br />
<a href="html/libvirt-libvirt.html#_virNodeInfo">_virNodeInfo</a><br />
@@ -26,9 +28,11 @@
<a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
<a href="html/libvirt-libvirt.html#virDomainSuspend">virDomainSuspend</a><br />
</dd><dt>CPU0-7</dt><dd><a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
-</dd><dt>CPUs</dt><dd><a href="html/libvirt-libvirt.html#VIR_NODEINFO_MAXCPUS">VIR_NODEINFO_MAXCPUS</a><br />
+</dd><dt>CPUs</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
+<a href="html/libvirt-libvirt.html#VIR_NODEINFO_MAXCPUS">VIR_NODEINFO_MAXCPUS</a><br />
<a href="html/libvirt-libvirt.html#_virDomainInfo">_virDomainInfo</a><br />
<a href="html/libvirt-libvirt.html#_virNodeInfo">_virNodeInfo</a><br />
+<a href="">cpu</a><br />
<a href="">cpumap</a><br />
<a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
<a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
@@ -105,6 +109,7 @@
</dd><dt>Suspends</dt><dd><a href="html/libvirt-libvirt.html#virDomainSuspend">virDomainSuspend</a><br />
</dd></dl><h2>Letter T:</h2><dl><dt>TODO:</dt><dd><a href="html/libvirt-libvirt.html#virDomainShutdown">virDomainShutdown</a><br />
</dd><dt>This</dt><dd><a href="html/libvirt-libvirt.html#VIR_COPY_CPUMAP">VIR_COPY_CPUMAP</a><br />
+<a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
<a href="html/libvirt-libvirt.html#VIR_CPU_USABLE">VIR_CPU_USABLE</a><br />
<a href="html/libvirt-libvirt.html#VIR_GET_CPUMAP">VIR_GET_CPUMAP</a><br />
<a href="html/libvirt-libvirt.html#VIR_NODEINFO_MAXCPUS">VIR_NODEINFO_MAXCPUS</a><br />
@@ -176,7 +181,8 @@
<a href="html/libvirt-libvirt.html#virDomainShutdown">virDomainShutdown</a><br />
</dd><dt>against</dt><dd><a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
</dd><dt>alive</dt><dd><a href="html/libvirt-libvirt.html#virDomainFree">virDomainFree</a><br />
-</dd><dt>all</dt><dd><a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
+</dd><dt>all</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
<a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
</dd><dt>allocated</dt><dd><a href="">cpumap</a><br />
<a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
diff --git a/docs/APIchunk1.html b/docs/APIchunk1.html
index 6e1a83abc..223c183ce 100644
--- a/docs/APIchunk1.html
+++ b/docs/APIchunk1.html
@@ -18,6 +18,7 @@
<a href="html/libvirt-virterror.html#virErrorFunc">virErrorFunc</a><br />
<a href="html/libvirt-virterror.html#virResetError">virResetError</a><br />
</dd><dt>better</dt><dd><a href="html/libvirt-libvirt.html#virInitialize">virInitialize</a><br />
+</dd><dt>between</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
</dd><dt>bit</dt><dd><a href="html/libvirt-libvirt.html#VIR_UNUSE_CPU">VIR_UNUSE_CPU</a><br />
<a href="html/libvirt-libvirt.html#VIR_USE_CPU">VIR_USE_CPU</a><br />
<a href="">cpumap</a><br />
@@ -33,7 +34,8 @@
<a href="html/libvirt-libvirt.html#virDomainUndefine">virDomainUndefine</a><br />
<a href="html/libvirt-virterror.html#virGetLastError">virGetLastError</a><br />
</dd><dt>byte</dt><dd><a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
-</dd><dt>bytes</dt><dd><a href="">cpumap</a><br />
+</dd><dt>bytes</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
+<a href="">cpumap</a><br />
<a href="">cpumaps</a><br />
<a href="">maplen</a><br />
<a href="html/libvirt-libvirt.html#virDomainGetUUID">virDomainGetUUID</a><br />
@@ -86,7 +88,9 @@
</dd><dt>collect</dt><dd><a href="html/libvirt-libvirt.html#virConnectListDomains">virConnectListDomains</a><br />
</dd><dt>command</dt><dd><a href="html/libvirt-libvirt.html#_virDomainKernel">_virDomainKernel</a><br />
</dd><dt>compiled</dt><dd><a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
+</dd><dt>complete</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
</dd><dt>conjonction</dt><dd><a href="html/libvirt-libvirt.html#VIR_COPY_CPUMAP">VIR_COPY_CPUMAP</a><br />
+<a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
<a href="html/libvirt-libvirt.html#VIR_CPU_USABLE">VIR_CPU_USABLE</a><br />
<a href="html/libvirt-libvirt.html#VIR_GET_CPUMAP">VIR_GET_CPUMAP</a><br />
<a href="html/libvirt-libvirt.html#VIR_UNUSE_CPU">VIR_UNUSE_CPU</a><br />
diff --git a/docs/APIchunk2.html b/docs/APIchunk2.html
index 5a1e5f6e7..2cd8b3c0d 100644
--- a/docs/APIchunk2.html
+++ b/docs/APIchunk2.html
@@ -79,7 +79,8 @@
<a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
</dd><dt>launch</dt><dd><a href="html/libvirt-libvirt.html#virDomainCreate">virDomainCreate</a><br />
</dd><dt>least</dt><dd><a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
-</dd><dt>length</dt><dd><a href="">maplen</a><br />
+</dd><dt>length</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
+<a href="">maplen</a><br />
</dd><dt>level</dt><dd><a href="html/libvirt-libvirt.html#virConnectGetVersion">virConnectGetVersion</a><br />
<a href="html/libvirt-virterror.html#virCopyLastError">virCopyLastError</a><br />
<a href="html/libvirt-libvirt.html#virDomainSuspend">virDomainSuspend</a><br />
@@ -111,6 +112,7 @@
<a href="html/libvirt-libvirt.html#virDomainLookupByUUIDString">virDomainLookupByUUIDString</a><br />
</dd><dt>lowest</dt><dd><a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
</dd></dl><h2>Letter m:</h2><dl><dt>macro</dt><dd><a href="html/libvirt-libvirt.html#VIR_COPY_CPUMAP">VIR_COPY_CPUMAP</a><br />
+<a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
<a href="html/libvirt-libvirt.html#VIR_CPU_USABLE">VIR_CPU_USABLE</a><br />
<a href="html/libvirt-libvirt.html#VIR_GET_CPUMAP">VIR_GET_CPUMAP</a><br />
<a href="html/libvirt-libvirt.html#VIR_NODEINFO_MAXCPUS">VIR_NODEINFO_MAXCPUS</a><br />
@@ -119,7 +121,8 @@
</dd><dt>major</dt><dd><a href="html/libvirt-libvirt.html#virConnectGetVersion">virConnectGetVersion</a><br />
<a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
</dd><dt>malloc</dt><dd><a href="">cpumap</a><br />
-</dd><dt>map</dt><dd><a href="">cpumap</a><br />
+</dd><dt>map</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
+<a href="">cpumap</a><br />
<a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
<a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
</dd><dt>maplen</dt><dd><a href="">cpumap</a><br />
diff --git a/docs/APIchunk3.html b/docs/APIchunk3.html
index 5d9ea8f87..ac1dbbe93 100644
--- a/docs/APIchunk3.html
+++ b/docs/APIchunk3.html
@@ -66,7 +66,8 @@
</dd><dt>path</dt><dd><a href="html/libvirt-libvirt.html#virDomainRestore">virDomainRestore</a><br />
<a href="html/libvirt-libvirt.html#virDomainSave">virDomainSave</a><br />
</dd><dt>per</dt><dd><a href="html/libvirt-libvirt.html#_virNodeInfo">_virNodeInfo</a><br />
-</dd><dt>physical</dt><dd><a href="">cpu</a><br />
+</dd><dt>physical</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
+<a href="">cpu</a><br />
<a href="html/libvirt-libvirt.html#virDomainGetMaxMemory">virDomainGetMaxMemory</a><br />
<a href="html/libvirt-libvirt.html#virDomainSetMaxMemory">virDomainSetMaxMemory</a><br />
<a href="html/libvirt-libvirt.html#virDomainSetMemory">virDomainSetMemory</a><br />
@@ -119,6 +120,7 @@
</dd><dt>reporting</dt><dd><a href="html/libvirt-virterror.html#virDefaultErrorFunc">virDefaultErrorFunc</a><br />
</dd><dt>request</dt><dd><a href="html/libvirt-libvirt.html#virDomainReboot">virDomainReboot</a><br />
<a href="html/libvirt-libvirt.html#virDomainShutdown">virDomainShutdown</a><br />
+</dd><dt>required</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
</dd><dt>requires</dt><dd><a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
<a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
<a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
@@ -150,7 +152,8 @@
<a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
<a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
<a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
-</dd><dt>returns</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_USABLE">VIR_CPU_USABLE</a><br />
+</dd><dt>returns</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
+<a href="html/libvirt-libvirt.html#VIR_CPU_USABLE">VIR_CPU_USABLE</a><br />
<a href="html/libvirt-libvirt.html#VIR_GET_CPUMAP">VIR_GET_CPUMAP</a><br />
<a href="html/libvirt-libvirt.html#virConnectGetVersion">virConnectGetVersion</a><br />
</dd><dt>reused</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
@@ -188,6 +191,7 @@
</dd><dt>shutdown</dt><dd><a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
</dd><dt>significant</dt><dd><a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
</dd><dt>similar</dt><dd><a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
+</dd><dt>single</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
</dd><dt>size</dt><dd><a href="html/libvirt-libvirt.html#_virNodeInfo">_virNodeInfo</a><br />
<a href="html/libvirt-libvirt.html#virConnectListDefinedDomains">virConnectListDefinedDomains</a><br />
<a href="html/libvirt-libvirt.html#virConnectListDomains">virConnectListDomains</a><br />
@@ -213,7 +217,8 @@
</dd><dt>stop</dt><dd><a href="html/libvirt-libvirt.html#virDomainUndefine">virDomainUndefine</a><br />
</dd><dt>stopped</dt><dd><a href="html/libvirt-libvirt.html#virDomainReboot">virDomainReboot</a><br />
<a href="html/libvirt-libvirt.html#virDomainShutdown">virDomainShutdown</a><br />
-</dd><dt>store</dt><dd><a href="html/libvirt-libvirt.html#virConnectListDefinedDomains">virConnectListDefinedDomains</a><br />
+</dd><dt>store</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
+<a href="html/libvirt-libvirt.html#virConnectListDefinedDomains">virConnectListDefinedDomains</a><br />
<a href="html/libvirt-libvirt.html#virConnectListDomains">virConnectListDomains</a><br />
<a href="html/libvirt-libvirt.html#virConnectOpen">virConnectOpen</a><br />
<a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
diff --git a/docs/APIfiles.html b/docs/APIfiles.html
index 57bad9639..5b6c892f7 100644
--- a/docs/APIfiles.html
+++ b/docs/APIfiles.html
@@ -112,6 +112,7 @@
<a href="html/libvirt-virterror.html#VIR_ERR_NO_XEN">VIR_ERR_NO_XEN</a><br />
<a href="html/libvirt-virterror.html#VIR_ERR_NO_XENSTORE">VIR_ERR_NO_XENSTORE</a><br />
<a href="html/libvirt-virterror.html#VIR_ERR_OK">VIR_ERR_OK</a><br />
+<a href="html/libvirt-virterror.html#VIR_ERR_OPERATION_DENIED">VIR_ERR_OPERATION_DENIED</a><br />
<a href="html/libvirt-virterror.html#VIR_ERR_OPERATION_FAILED">VIR_ERR_OPERATION_FAILED</a><br />
<a href="html/libvirt-virterror.html#VIR_ERR_OS_TYPE">VIR_ERR_OS_TYPE</a><br />
<a href="html/libvirt-virterror.html#VIR_ERR_POST_FAILED">VIR_ERR_POST_FAILED</a><br />
diff --git a/docs/APIsymbols.html b/docs/APIsymbols.html
index b8642546f..5f32e8e51 100644
--- a/docs/APIsymbols.html
+++ b/docs/APIsymbols.html
@@ -44,6 +44,7 @@
<a href="html/libvirt-virterror.html#VIR_ERR_NO_XEN">VIR_ERR_NO_XEN</a><br />
<a href="html/libvirt-virterror.html#VIR_ERR_NO_XENSTORE">VIR_ERR_NO_XENSTORE</a><br />
<a href="html/libvirt-virterror.html#VIR_ERR_OK">VIR_ERR_OK</a><br />
+<a href="html/libvirt-virterror.html#VIR_ERR_OPERATION_DENIED">VIR_ERR_OPERATION_DENIED</a><br />
<a href="html/libvirt-virterror.html#VIR_ERR_OPERATION_FAILED">VIR_ERR_OPERATION_FAILED</a><br />
<a href="html/libvirt-virterror.html#VIR_ERR_OS_TYPE">VIR_ERR_OS_TYPE</a><br />
<a href="html/libvirt-virterror.html#VIR_ERR_POST_FAILED">VIR_ERR_POST_FAILED</a><br />
diff --git a/docs/devhelp/libvirt-libvirt.html b/docs/devhelp/libvirt-libvirt.html
index b17c5c7c1..5396234f2 100644
--- a/docs/devhelp/libvirt-libvirt.html
+++ b/docs/devhelp/libvirt-libvirt.html
@@ -41,7 +41,7 @@
<pre class="synopsis">#define <a href="#VIR_NODEINFO_MAXCPUS">VIR_NODEINFO_MAXCPUS</a>(nodeinfo);
#define <a href="#LIBVIR_VERSION_NUMBER">LIBVIR_VERSION_NUMBER</a>;
#define <a href="#VIR_USE_CPU">VIR_USE_CPU</a>(cpumap, cpu);
-#define <a href="#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a>;
+#define <a href="#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a>(cpu);
#define <a href="#VIR_CPU_USABLE">VIR_CPU_USABLE</a>(cpumaps, maplen, vcpu, cpu);
#define <a href="#VIR_COPY_CPUMAP">VIR_COPY_CPUMAP</a>(cpumaps, maplen, vcpu, cpumap);
#define <a href="#VIR_GET_CPUMAP">VIR_GET_CPUMAP</a>(cpumaps, maplen, vcpu);
@@ -119,8 +119,8 @@ const char * <a href="#virDomainGetName">virDomainGetName</a> (<a href="libvirt-
</pre><p>This macro is to be used in conjonction with virDomainGetVcpus() and virDomainPinVcpu() APIs. <a href="libvirt-libvirt.html#VIR_COPY_CPUMAP">VIR_COPY_CPUMAP</a> macro extract the cpumap of the specified vcpu from cpumaps array and copy it into cpumap to be used later by virDomainPinVcpu() API.</p><div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cpumaps</tt></i>:</span></td><td>pointer to an array of cpumap (in 8-bit bytes) (IN)</td></tr><tr><td><span class="term"><i><tt>maplen</tt></i>:</span></td><td>the length (in bytes) of one cpumap</td></tr><tr><td><span class="term"><i><tt>vcpu</tt></i>:</span></td><td>the virtual CPU number</td></tr><tr><td><span class="term"><i><tt>cpumap</tt></i>:</span></td><td>pointer to a cpumap (in 8-bit bytes) (OUT) This cpumap must be previously allocated by the caller (ie: malloc(maplen))</td></tr></tbody></table></div>
</div>
<hr/>
- <div class="refsect2" lang="en"><h3><a name="VIR_CPU_MAPLEN">Macro </a>VIR_CPU_MAPLEN</h3><pre class="programlisting">#define <a href="#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a>;
-</pre><p/>
+ <div class="refsect2" lang="en"><h3><a name="VIR_CPU_MAPLEN">Macro </a>VIR_CPU_MAPLEN</h3><pre class="programlisting">#define <a href="#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a>(cpu);
+</pre><p>This macro is to be used in conjonction with virDomainPinVcpu() API. It returns the length (in bytes) required to store the complete CPU map between a single virtual &amp; all physical CPUs of a domain.</p><div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cpu</tt></i>:</span></td><td>number of physical CPUs</td></tr></tbody></table></div>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="VIR_CPU_USABLE">Macro </a>VIR_CPU_USABLE</h3><pre class="programlisting">#define <a href="#VIR_CPU_USABLE">VIR_CPU_USABLE</a>(cpumaps, maplen, vcpu, cpu);
diff --git a/docs/devhelp/libvirt-virterror.html b/docs/devhelp/libvirt-virterror.html
index d77537231..08719e49b 100644
--- a/docs/devhelp/libvirt-virterror.html
+++ b/docs/devhelp/libvirt-virterror.html
@@ -129,7 +129,8 @@ void <a href="#virConnResetLastError">virConnResetLastError</a> (<a href="libvi
<a name="VIR_ERR_DRIVER_FULL">VIR_ERR_DRIVER_FULL</a> = 25 /* too many drivers registered */
<a name="VIR_ERR_CALL_FAILED">VIR_ERR_CALL_FAILED</a> = 26 /* not supported by the drivers */
<a name="VIR_ERR_XML_ERROR">VIR_ERR_XML_ERROR</a> = 27 /* an XML description is not well formed or broken */
- <a name="VIR_ERR_DOM_EXIST">VIR_ERR_DOM_EXIST</a> = 28 /* the domain already exist */
+ <a name="VIR_ERR_DOM_EXIST">VIR_ERR_DOM_EXIST</a> = 28 /* the domain already exist */
+ <a name="VIR_ERR_OPERATION_DENIED">VIR_ERR_OPERATION_DENIED</a> = 29 /* operation forbidden on read-only connections */
};
</pre><p/>
</div>
diff --git a/docs/format.html b/docs/format.html
index 64a6f2da6..1edc2c67b 100644
--- a/docs/format.html
+++ b/docs/format.html
@@ -48,30 +48,30 @@ significant:</p><ul><li>name: the domain name, preferably ASCII based</li>
<li>root: the root filesystem from the guest viewpoint, it may be
passed as part of the cmdline content too</li>
</ul></li>
- <li>devices: a list of <code>disk</code>, <code>interface</code>
- and <code>console</code> descriptions in no special order</li>
+ <li>devices: a list of <code>disk</code>, <code>interface</code> and
+ <code>console</code> descriptions in no special order</li>
</ul><p>The format of the devices and their type may grow over time, but the
-following should be sufficient for basic use:</p><p>A <code>disk</code> device indicates a block device, it can have two values for the
-type attribute either 'file' or 'block' corresponding to the 2 options
-availble at the Xen layer. It has two mandatory children, and one optional
-one in no specific order:</p><ul><li>source with a file attribute containing the path in Domain 0 to the
+following should be sufficient for basic use:</p><p>A <code>disk</code> device indicates a block device, it can have two
+values for the type attribute either 'file' or 'block' corresponding to the 2
+options availble at the Xen layer. It has two mandatory children, and one
+optional one in no specific order:</p><ul><li>source with a file attribute containing the path in Domain 0 to the
file or a dev attribute if using a block device, containing the device
name ('hda5' or '/dev/hda5')</li>
<li>target indicates in a dev attribute the device where it is mapped in
the guest</li>
<li>readonly an optional empty element indicating the device is
read-only</li>
-</ul><p>An <code>interface</code> element describes a network device mapped on the guest, it
-also has a type whose value is currently 'bridge', it also have a number of
-children in no specific order:</p><ul><li>source: indicating the bridge name</li>
+</ul><p>An <code>interface</code> element describes a network device mapped on the
+guest, it also has a type whose value is currently 'bridge', it also have a
+number of children in no specific order:</p><ul><li>source: indicating the bridge name</li>
<li>mac: the optional mac address provided in the address attribute</li>
<li>ip: the optional IP address provided in the address attribute</li>
<li>script: the script used to bridge the interfcae in the Domain 0</li>
<li>target: and optional target indicating the device name.</li>
-</ul><p>A <code>console</code> element describes a serial console connection to the
-guest. It has no children, and a single attribute <code>tty</code> which provides
-the path to the Pseudo TTY on which the guest console can be accessed
-</p><p>Life cycle actions for the domain can also be expressed in the XML format,
+</ul><p>A <code>console</code> element describes a serial console connection to
+the guest. It has no children, and a single attribute <code>tty</code> which
+provides the path to the Pseudo TTY on which the guest console can be
+accessed</p><p>Life cycle actions for the domain can also be expressed in the XML format,
they drive what should be happening if the domain crashes, is rebooted or is
poweroff. There is various actions possible when this happen:</p><ul><li>destroy: The domain is cleaned up (that's the default normal processing
in Xen)</li>
@@ -133,43 +133,45 @@ systems:</p><pre>&lt;domain type='xen' id='3'&gt;
&lt;/disk&gt;
<span style="color: #0000E5; background-color: #FFFFFF">&lt;graphics type='vnc' port='5904'/&gt;</span>
&lt;/devices&gt;
-&lt;/domain&gt;</pre><p>There is a few things to notice specifically for HVM domains:</p><ul><li>the optional <code>&lt;features&gt;</code> block is used to enable certain
- guest CPU / system features. For HVM guests the following features are defined:
+&lt;/domain&gt;</pre><p>There is a few things to notice specifically for HVM domains:</p><ul><li>the optional <code>&lt;features&gt;</code> block is used to enable
+ certain guest CPU / system features. For HVM guests the following
+ features are defined:
<ul><li><code>pae</code> - enable PAE memory addressing</li>
- <li><code>apic</code> - enable IO APIC</li>
- <li><code>acpi</code> - enable ACPI bios</li>
+ <li><code>apic</code> - enable IO APIC</li>
+ <li><code>acpi</code> - enable ACPI bios</li>
</ul></li>
- <li>the <code>&lt;os&gt;</code> block description is very different, first it indicates
- that the type is 'hvm' for hardware virtualization, then instead of a
- kernel, boot and command line arguments, it points to an os boot loader
- which will extract the boot informations from the boot device specified
- in a separate boot element. The <code>dev</code> attribute on the <code>boot</code>
- tag can be one of:
+ <li>the <code>&lt;os&gt;</code> block description is very different, first
+ it indicates that the type is 'hvm' for hardware virtualization, then
+ instead of a kernel, boot and command line arguments, it points to an os
+ boot loader which will extract the boot informations from the boot device
+ specified in a separate boot element. The <code>dev</code> attribute on
+ the <code>boot</code> tag can be one of:
<ul><li><code>fd</code> - boot from first floppy device</li>
- <li><code>hd</code> - boot from first harddisk device</li>
- <li><code>cdrom</code> - boot from first cdrom device</li>
+ <li><code>hd</code> - boot from first harddisk device</li>
+ <li><code>cdrom</code> - boot from first cdrom device</li>
</ul></li>
- <li>the <code>&lt;devices&gt;</code> section includes an emulator entry pointing to an
- additional program in charge of emulating the devices</li>
+ <li>the <code>&lt;devices&gt;</code> section includes an emulator entry
+ pointing to an additional program in charge of emulating the devices</li>
<li>the disk entry indicates in the dev target section that the emulation
for the drive is the first IDE disk device hda. The list of device names
- supported is dependant on the Hypervisor, but for Xen it can be any IDE
- device <code>hda</code>-<code>hdd</code>, or a floppy device <code>fda</code>,
- <code>fdb</code>. The <code>&lt;disk&gt;</code> element also supports a 'device'
- attribute to indicate what kinda of hardware to emulate. The following values are
- supported:
+ supported is dependant on the Hypervisor, but for Xen it can be any IDE
+ device <code>hda</code>-<code>hdd</code>, or a floppy device
+ <code>fda</code>, <code>fdb</code>. The <code>&lt;disk&gt;</code> element
+ also supports a 'device' attribute to indicate what kinda of hardware to
+ emulate. The following values are supported:
<ul><li><code>floppy</code> - a floppy disk controller</li>
- <li><code>disk</code> - a generic hard drive (the default it omitted)</li>
- <li><code>cdrom</code> - a CDROM device</li>
+ <li><code>disk</code> - a generic hard drive (the default it
+ omitted)</li>
+ <li><code>cdrom</code> - a CDROM device</li>
</ul>
For Xen 3.0.2 and earlier a CDROM device can only be emulated on the
- <code>hdc</code> channel, while for 3.0.3 and later, it can be emulated on
- any IDE channel.</li>
- <li>the <code>&lt;devices&gt;</code> section also include at least one entry for the
- graphic device used to render the os. Currently there is just 2 types
- possible 'vnc' or 'sdl'. If the type is 'vnc', then an additional <code>port</code>
- attribute will be present indicating the TCP port on which the VNC server is
- accepting client connections.</li>
+ <code>hdc</code> channel, while for 3.0.3 and later, it can be emulated
+ on any IDE channel.</li>
+ <li>the <code>&lt;devices&gt;</code> section also include at least one
+ entry for the graphic device used to render the os. Currently there is
+ just 2 types possible 'vnc' or 'sdl'. If the type is 'vnc', then an
+ additional <code>port</code> attribute will be present indicating the TCP
+ port on which the VNC server is accepting client connections.</li>
</ul><p>It is likely that the HVM description gets additional optional elements
and attributes as the support for fully virtualized domain expands,
especially for the variety of devices emulated and the graphic support
diff --git a/docs/html/libvirt-libvirt.html b/docs/html/libvirt-libvirt.html
index b4a806c32..84f84ca3e 100644
--- a/docs/html/libvirt-libvirt.html
+++ b/docs/html/libvirt-libvirt.html
@@ -62,7 +62,7 @@ The content of this structure is not made public by the API.
<h2>Description</h2>
<h3><a name="LIBVIR_VERSION_NUMBER" id="LIBVIR_VERSION_NUMBER"></a>Macro: LIBVIR_VERSION_NUMBER</h3><pre>#define LIBVIR_VERSION_NUMBER</pre><p>Macro providing the version of the library as version * 1,000,000 + minor * 1000 + micro</p>
<h3><a name="VIR_COPY_CPUMAP" id="VIR_COPY_CPUMAP"></a>Macro: VIR_COPY_CPUMAP</h3><pre>#define VIR_COPY_CPUMAP</pre><p>This macro is to be used in conjonction with virDomainGetVcpus() and virDomainPinVcpu() APIs. <a href="libvirt-libvirt.html#VIR_COPY_CPUMAP">VIR_COPY_CPUMAP</a> macro extract the cpumap of the specified vcpu from cpumaps array and copy it into cpumap to be used later by virDomainPinVcpu() API.</p>
-<h3><a name="VIR_CPU_MAPLEN" id="VIR_CPU_MAPLEN"></a>Macro: VIR_CPU_MAPLEN</h3><pre>#define VIR_CPU_MAPLEN</pre><p></p>
+<h3><a name="VIR_CPU_MAPLEN" id="VIR_CPU_MAPLEN"></a>Macro: VIR_CPU_MAPLEN</h3><pre>#define VIR_CPU_MAPLEN</pre><p>This macro is to be used in conjonction with virDomainPinVcpu() API. It returns the length (in bytes) required to store the complete CPU map between a single virtual &amp; all physical CPUs of a domain.</p>
<h3><a name="VIR_CPU_USABLE" id="VIR_CPU_USABLE"></a>Macro: VIR_CPU_USABLE</h3><pre>#define VIR_CPU_USABLE</pre><p>This macro is to be used in conjonction with virDomainGetVcpus() API. <a href="libvirt-libvirt.html#VIR_CPU_USABLE">VIR_CPU_USABLE</a> macro returns a non zero value (true) if the cpu is usable by the vcpu, and 0 otherwise.</p>
<h3><a name="VIR_GET_CPUMAP" id="VIR_GET_CPUMAP"></a>Macro: VIR_GET_CPUMAP</h3><pre>#define VIR_GET_CPUMAP</pre><p>This macro is to be used in conjonction with virDomainGetVcpus() and virDomainPinVcpu() APIs. <a href="libvirt-libvirt.html#VIR_GET_CPUMAP">VIR_GET_CPUMAP</a> macro returns a pointer to the cpumap of the specified vcpu from cpumaps array.</p>
<h3><a name="VIR_NODEINFO_MAXCPUS" id="VIR_NODEINFO_MAXCPUS"></a>Macro: VIR_NODEINFO_MAXCPUS</h3><pre>#define VIR_NODEINFO_MAXCPUS</pre><p>This macro is to calculate the total number of CPUs supported but not neccessarily active in the host.</p>
diff --git a/docs/html/libvirt-virterror.html b/docs/html/libvirt-virterror.html
index b5df81041..8fe8908de 100644
--- a/docs/html/libvirt-virterror.html
+++ b/docs/html/libvirt-virterror.html
@@ -77,6 +77,7 @@ void <a href="#virErrorFunc">virErrorFunc</a> (void * userData, <br /> <a
<a name="VIR_ERR_CALL_FAILED" id="VIR_ERR_CALL_FAILED">VIR_ERR_CALL_FAILED</a> = 26 : not supported by the drivers
<a name="VIR_ERR_XML_ERROR" id="VIR_ERR_XML_ERROR">VIR_ERR_XML_ERROR</a> = 27 : an XML description is not well formed or broken
<a name="VIR_ERR_DOM_EXIST" id="VIR_ERR_DOM_EXIST">VIR_ERR_DOM_EXIST</a> = 28 : the domain already exist
+ <a name="VIR_ERR_OPERATION_DENIED" id="VIR_ERR_OPERATION_DENIED">VIR_ERR_OPERATION_DENIED</a> = 29 : operation forbidden on read-only connections
}
</pre><h3><a name="virConnCopyLastError" id="virConnCopyLastError"></a>Function: virConnCopyLastError</h3><pre class="programlisting">int virConnCopyLastError (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br /> <a href="libvirt-virterror.html#virErrorPtr">virErrorPtr</a> to)<br />
</pre><p>Copy the content of the last error caught on that connection One will need to free the result with virResetError()</p>
diff --git a/docs/libvir.html b/docs/libvir.html
index d7bedafd2..84a5d17bb 100644
--- a/docs/libvir.html
+++ b/docs/libvir.html
@@ -33,12 +33,31 @@ development of libvirt, it is preferable when possible to just use the <a
href="downloads.html">CVS version or snapshot</a>, contact the mailing list
and check the <a href="ChangeLog.html">ChangeLog</a> to gauge progresses.</p>
+<h3>0.1.4: Aug 16 2006</h3>
+<ul>
+ <li>bug fixes: spec file fix (Mark McLoughlin), error report problem (with
+ Hugh Brock), long integer in Python bindings (with Daniel Berrange), XML
+ generation bug for CDRom (Daniel Berrange), bug whem using number() XPath
+ function (Mark McLoughlin), fix python detection code, remove duplicate
+ initialization errors (Daniel Berrange)</li>
+ <li>improvements: UUID in XML description (Peter Vetere), proxy code
+ cleanup, virtual CPU and affinity support + virsh support (Michel
+ Ponceau, Philippe Berthault, Daniel Berrange), port and tty informations
+ for console in XML (Daniel Berrange), added XML dump to driver and proxy
+ support (Daniel Berrange), extention of boot options with support for
+ floppy and cdrom (Daniel Berrange), features block in XML to report/ask
+ PAE, ACPI, APIC for HVM domains (Daniel Berrange), fail saide-effect
+ operations when using read-only connection, large improvements to test
+ driver (Daniel Berrange) </li>
+ <li>documentation: spelling (Daniel Berrange), test driver examples.</li>
+</ul>
+
<h3>0.1.3: Jul 11 2006</h3>
<ul>
<li>bugfixes: build as non-root, fix xend access when root, handling of
empty XML elements (Mark McLoughlin), XML serialization and parsing fixes
(Mark McLoughlin), allow to create domains without disk (Mark
- McLoughlin), </li>
+ McLoughlin),</li>
<li>improvement: xenDaemonLookupByID from O(n^2) to O(n) (Daniel Berrange),
support for fully virtualized guest (Jim Fehlig, DV, Mark McLoughlin)</li>
<li>documentation: augmented to cover hvm domains</li>
@@ -346,17 +365,17 @@ significant:</p>
passed as part of the cmdline content too</li>
</ul>
</li>
- <li>devices: a list of <code>disk</code>, <code>interface</code>
- and <code>console</code> descriptions in no special order</li>
+ <li>devices: a list of <code>disk</code>, <code>interface</code> and
+ <code>console</code> descriptions in no special order</li>
</ul>
<p>The format of the devices and their type may grow over time, but the
following should be sufficient for basic use:</p>
-<p>A <code>disk</code> device indicates a block device, it can have two values for the
-type attribute either 'file' or 'block' corresponding to the 2 options
-availble at the Xen layer. It has two mandatory children, and one optional
-one in no specific order:</p>
+<p>A <code>disk</code> device indicates a block device, it can have two
+values for the type attribute either 'file' or 'block' corresponding to the 2
+options availble at the Xen layer. It has two mandatory children, and one
+optional one in no specific order:</p>
<ul>
<li>source with a file attribute containing the path in Domain 0 to the
file or a dev attribute if using a block device, containing the device
@@ -367,9 +386,9 @@ one in no specific order:</p>
read-only</li>
</ul>
-<p>An <code>interface</code> element describes a network device mapped on the guest, it
-also has a type whose value is currently 'bridge', it also have a number of
-children in no specific order:</p>
+<p>An <code>interface</code> element describes a network device mapped on the
+guest, it also has a type whose value is currently 'bridge', it also have a
+number of children in no specific order:</p>
<ul>
<li>source: indicating the bridge name</li>
<li>mac: the optional mac address provided in the address attribute</li>
@@ -378,10 +397,10 @@ children in no specific order:</p>
<li>target: and optional target indicating the device name.</li>
</ul>
-<p>A <code>console</code> element describes a serial console connection to the
-guest. It has no children, and a single attribute <code>tty</code> which provides
-the path to the Pseudo TTY on which the guest console can be accessed
-</p>
+<p>A <code>console</code> element describes a serial console connection to
+the guest. It has no children, and a single attribute <code>tty</code> which
+provides the path to the Pseudo TTY on which the guest console can be
+accessed</p>
<p>Life cycle actions for the domain can also be expressed in the XML format,
they drive what should be happening if the domain crashes, is rebooted or is
@@ -461,48 +480,50 @@ systems:</p>
<p>There is a few things to notice specifically for HVM domains:</p>
<ul>
- <li>the optional <code>&lt;features&gt;</code> block is used to enable certain
- guest CPU / system features. For HVM guests the following features are defined:
+ <li>the optional <code>&lt;features&gt;</code> block is used to enable
+ certain guest CPU / system features. For HVM guests the following
+ features are defined:
<ul>
- <li><code>pae</code> - enable PAE memory addressing</li>
- <li><code>apic</code> - enable IO APIC</li>
- <li><code>acpi</code> - enable ACPI bios</li>
+ <li><code>pae</code> - enable PAE memory addressing</li>
+ <li><code>apic</code> - enable IO APIC</li>
+ <li><code>acpi</code> - enable ACPI bios</li>
</ul>
</li>
- <li>the <code>&lt;os&gt;</code> block description is very different, first it indicates
- that the type is 'hvm' for hardware virtualization, then instead of a
- kernel, boot and command line arguments, it points to an os boot loader
- which will extract the boot informations from the boot device specified
- in a separate boot element. The <code>dev</code> attribute on the <code>boot</code>
- tag can be one of:
+ <li>the <code>&lt;os&gt;</code> block description is very different, first
+ it indicates that the type is 'hvm' for hardware virtualization, then
+ instead of a kernel, boot and command line arguments, it points to an os
+ boot loader which will extract the boot informations from the boot device
+ specified in a separate boot element. The <code>dev</code> attribute on
+ the <code>boot</code> tag can be one of:
<ul>
- <li><code>fd</code> - boot from first floppy device</li>
- <li><code>hd</code> - boot from first harddisk device</li>
- <li><code>cdrom</code> - boot from first cdrom device</li>
+ <li><code>fd</code> - boot from first floppy device</li>
+ <li><code>hd</code> - boot from first harddisk device</li>
+ <li><code>cdrom</code> - boot from first cdrom device</li>
</ul>
</li>
- <li>the <code>&lt;devices&gt;</code> section includes an emulator entry pointing to an
- additional program in charge of emulating the devices</li>
+ <li>the <code>&lt;devices&gt;</code> section includes an emulator entry
+ pointing to an additional program in charge of emulating the devices</li>
<li>the disk entry indicates in the dev target section that the emulation
for the drive is the first IDE disk device hda. The list of device names
- supported is dependant on the Hypervisor, but for Xen it can be any IDE
- device <code>hda</code>-<code>hdd</code>, or a floppy device <code>fda</code>,
- <code>fdb</code>. The <code>&lt;disk&gt;</code> element also supports a 'device'
- attribute to indicate what kinda of hardware to emulate. The following values are
- supported:
+ supported is dependant on the Hypervisor, but for Xen it can be any IDE
+ device <code>hda</code>-<code>hdd</code>, or a floppy device
+ <code>fda</code>, <code>fdb</code>. The <code>&lt;disk&gt;</code> element
+ also supports a 'device' attribute to indicate what kinda of hardware to
+ emulate. The following values are supported:
<ul>
- <li><code>floppy</code> - a floppy disk controller</li>
- <li><code>disk</code> - a generic hard drive (the default it omitted)</li>
- <li><code>cdrom</code> - a CDROM device</li>
+ <li><code>floppy</code> - a floppy disk controller</li>
+ <li><code>disk</code> - a generic hard drive (the default it
+ omitted)</li>
+ <li><code>cdrom</code> - a CDROM device</li>
</ul>
For Xen 3.0.2 and earlier a CDROM device can only be emulated on the
- <code>hdc</code> channel, while for 3.0.3 and later, it can be emulated on
- any IDE channel.</li>
- <li>the <code>&lt;devices&gt;</code> section also include at least one entry for the
- graphic device used to render the os. Currently there is just 2 types
- possible 'vnc' or 'sdl'. If the type is 'vnc', then an additional <code>port</code>
- attribute will be present indicating the TCP port on which the VNC server is
- accepting client connections.</li>
+ <code>hdc</code> channel, while for 3.0.3 and later, it can be emulated
+ on any IDE channel.</li>
+ <li>the <code>&lt;devices&gt;</code> section also include at least one
+ entry for the graphic device used to render the os. Currently there is
+ just 2 types possible 'vnc' or 'sdl'. If the type is 'vnc', then an
+ additional <code>port</code> attribute will be present indicating the TCP
+ port on which the VNC server is accepting client connections.</li>
</ul>
<p>It is likely that the HVM description gets additional optional elements
diff --git a/docs/libvirt-api.xml b/docs/libvirt-api.xml
index 5d43ea382..4674ebb8c 100644
--- a/docs/libvirt-api.xml
+++ b/docs/libvirt-api.xml
@@ -128,6 +128,7 @@
<exports symbol='VIR_ERR_DOM_EXIST' type='enum'/>
<exports symbol='VIR_ERR_NO_SOURCE' type='enum'/>
<exports symbol='VIR_ERR_NO_TARGET' type='enum'/>
+ <exports symbol='VIR_ERR_OPERATION_DENIED' type='enum'/>
<exports symbol='VIR_ERR_INTERNAL_ERROR' type='enum'/>
<exports symbol='VIR_ERR_NO_SUPPORT' type='enum'/>
<exports symbol='VIR_FROM_XEND' type='enum'/>
@@ -170,6 +171,8 @@
<arg name='cpumap' info='pointer to a cpumap (in 8-bit bytes) (OUT) This cpumap must be previously allocated by the caller (ie: malloc(maplen))'/>
</macro>
<macro name='VIR_CPU_MAPLEN' file='libvirt'>
+ <info>This macro is to be used in conjonction with virDomainPinVcpu() API. It returns the length (in bytes) required to store the complete CPU map between a single virtual &amp; all physical CPUs of a domain.</info>
+ <arg name='cpu' info='number of physical CPUs'/>
</macro>
<macro name='VIR_CPU_USABLE' file='libvirt'>
<info>This macro is to be used in conjonction with virDomainGetVcpus() API. VIR_CPU_USABLE macro returns a non zero value (true) if the cpu is usable by the vcpu, and 0 otherwise.</info>
@@ -215,7 +218,7 @@
<enum name='VIR_DOMAIN_SHUTDOWN' file='libvirt' value='4' type='virDomainState' info='the domain is being shut down'/>
<enum name='VIR_DOMAIN_SHUTOFF' file='libvirt' value='5' type='virDomainState' info='the domain is shut off'/>
<enum name='VIR_ERR_CALL_FAILED' file='virterror' value='26' type='virErrorNumber' info='not supported by the drivers'/>
- <enum name='VIR_ERR_DOM_EXIST' file='virterror' value='28' type='virErrorNumber' info=' the domain already exist'/>
+ <enum name='VIR_ERR_DOM_EXIST' file='virterror' value='28' type='virErrorNumber' info='the domain already exist'/>
<enum name='VIR_ERR_DRIVER_FULL' file='virterror' value='25' type='virErrorNumber' info='too many drivers registered'/>
<enum name='VIR_ERR_ERROR' file='virterror' value='2' type='virErrorLevel' info=' An error'/>
<enum name='VIR_ERR_GET_FAILED' file='virterror' value='10' type='virErrorNumber' info='a HTTP GET command to failed'/>
@@ -238,6 +241,7 @@
<enum name='VIR_ERR_NO_XEN' file='virterror' value='14' type='virErrorNumber' info='could not open Xen hypervisor control'/>
<enum name='VIR_ERR_NO_XENSTORE' file='virterror' value='24' type='virErrorNumber' info='could not open Xen Store control'/>
<enum name='VIR_ERR_OK' file='virterror' value='0' type='virErrorNumber'/>
+ <enum name='VIR_ERR_OPERATION_DENIED' file='virterror' value='29' type='virErrorNumber' info=' operation forbidden on read-only connections'/>
<enum name='VIR_ERR_OPERATION_FAILED' file='virterror' value='9' type='virErrorNumber' info='a command to hypervisor failed'/>
<enum name='VIR_ERR_OS_TYPE' file='virterror' value='16' type='virErrorNumber' info='unknown OS type'/>
<enum name='VIR_ERR_POST_FAILED' file='virterror' value='11' type='virErrorNumber' info='a HTTP POST command to failed'/>
diff --git a/docs/libvirt-refs.xml b/docs/libvirt-refs.xml
index e134fedb1..7711380c4 100644
--- a/docs/libvirt-refs.xml
+++ b/docs/libvirt-refs.xml
@@ -45,6 +45,7 @@
<reference name='VIR_ERR_NO_XEN' href='html/libvirt-virterror.html#VIR_ERR_NO_XEN'/>
<reference name='VIR_ERR_NO_XENSTORE' href='html/libvirt-virterror.html#VIR_ERR_NO_XENSTORE'/>
<reference name='VIR_ERR_OK' href='html/libvirt-virterror.html#VIR_ERR_OK'/>
+ <reference name='VIR_ERR_OPERATION_DENIED' href='html/libvirt-virterror.html#VIR_ERR_OPERATION_DENIED'/>
<reference name='VIR_ERR_OPERATION_FAILED' href='html/libvirt-virterror.html#VIR_ERR_OPERATION_FAILED'/>
<reference name='VIR_ERR_OS_TYPE' href='html/libvirt-virterror.html#VIR_ERR_OS_TYPE'/>
<reference name='VIR_ERR_POST_FAILED' href='html/libvirt-virterror.html#VIR_ERR_POST_FAILED'/>
@@ -196,6 +197,7 @@
<ref name='VIR_ERR_NO_XEN'/>
<ref name='VIR_ERR_NO_XENSTORE'/>
<ref name='VIR_ERR_OK'/>
+ <ref name='VIR_ERR_OPERATION_DENIED'/>
<ref name='VIR_ERR_OPERATION_FAILED'/>
<ref name='VIR_ERR_OS_TYPE'/>
<ref name='VIR_ERR_POST_FAILED'/>
@@ -543,6 +545,7 @@
<ref name='VIR_ERR_NO_XEN'/>
<ref name='VIR_ERR_NO_XENSTORE'/>
<ref name='VIR_ERR_OK'/>
+ <ref name='VIR_ERR_OPERATION_DENIED'/>
<ref name='VIR_ERR_OPERATION_FAILED'/>
<ref name='VIR_ERR_OS_TYPE'/>
<ref name='VIR_ERR_POST_FAILED'/>
@@ -584,6 +587,7 @@
<letter name='A'>
<word name='API'>
<ref name='VIR_COPY_CPUMAP'/>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='VIR_CPU_USABLE'/>
<ref name='VIR_UNUSE_CPU'/>
<ref name='VIR_USE_CPU'/>
@@ -605,6 +609,7 @@
</letter>
<letter name='C'>
<word name='CPU'>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='VIR_UNUSE_CPU'/>
<ref name='VIR_USE_CPU'/>
<ref name='_virDomainInfo'/>
@@ -620,9 +625,11 @@
<ref name='virDomainPinVcpu'/>
</word>
<word name='CPUs'>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='VIR_NODEINFO_MAXCPUS'/>
<ref name='_virDomainInfo'/>
<ref name='_virNodeInfo'/>
+ <ref name='cpu'/>
<ref name='cpumap'/>
<ref name='virDomainGetVcpus'/>
<ref name='virDomainPinVcpu'/>
@@ -803,6 +810,7 @@
</word>
<word name='This'>
<ref name='VIR_COPY_CPUMAP'/>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='VIR_CPU_USABLE'/>
<ref name='VIR_GET_CPUMAP'/>
<ref name='VIR_NODEINFO_MAXCPUS'/>
@@ -924,6 +932,7 @@
<ref name='virDomainFree'/>
</word>
<word name='all'>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='virDomainDestroy'/>
<ref name='virDomainGetVcpus'/>
</word>
@@ -1027,6 +1036,9 @@
<word name='better'>
<ref name='virInitialize'/>
</word>
+ <word name='between'>
+ <ref name='VIR_CPU_MAPLEN'/>
+ </word>
<word name='bit'>
<ref name='VIR_UNUSE_CPU'/>
<ref name='VIR_USE_CPU'/>
@@ -1051,6 +1063,7 @@
<ref name='virDomainPinVcpu'/>
</word>
<word name='bytes'>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='cpumap'/>
<ref name='cpumaps'/>
<ref name='maplen'/>
@@ -1143,8 +1156,12 @@
<word name='compiled'>
<ref name='virGetVersion'/>
</word>
+ <word name='complete'>
+ <ref name='VIR_CPU_MAPLEN'/>
+ </word>
<word name='conjonction'>
<ref name='VIR_COPY_CPUMAP'/>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='VIR_CPU_USABLE'/>
<ref name='VIR_GET_CPUMAP'/>
<ref name='VIR_UNUSE_CPU'/>
@@ -1588,6 +1605,7 @@
<ref name='virDomainPinVcpu'/>
</word>
<word name='length'>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='maplen'/>
</word>
<word name='level'>
@@ -1648,6 +1666,7 @@
<letter name='m'>
<word name='macro'>
<ref name='VIR_COPY_CPUMAP'/>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='VIR_CPU_USABLE'/>
<ref name='VIR_GET_CPUMAP'/>
<ref name='VIR_NODEINFO_MAXCPUS'/>
@@ -1662,6 +1681,7 @@
<ref name='cpumap'/>
</word>
<word name='map'>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='cpumap'/>
<ref name='virDomainGetVcpus'/>
<ref name='virDomainPinVcpu'/>
@@ -1923,6 +1943,7 @@
<ref name='_virNodeInfo'/>
</word>
<word name='physical'>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='cpu'/>
<ref name='virDomainGetMaxMemory'/>
<ref name='virDomainSetMaxMemory'/>
@@ -2033,6 +2054,9 @@
<ref name='virDomainReboot'/>
<ref name='virDomainShutdown'/>
</word>
+ <word name='required'>
+ <ref name='VIR_CPU_MAPLEN'/>
+ </word>
<word name='requires'>
<ref name='virDomainCreateLinux'/>
<ref name='virDomainDestroy'/>
@@ -2087,6 +2111,7 @@
<ref name='virGetVersion'/>
</word>
<word name='returns'>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='VIR_CPU_USABLE'/>
<ref name='VIR_GET_CPUMAP'/>
<ref name='virConnectGetVersion'/>
@@ -2158,6 +2183,9 @@
<word name='similar'>
<ref name='virDomainCreateLinux'/>
</word>
+ <word name='single'>
+ <ref name='VIR_CPU_MAPLEN'/>
+ </word>
<word name='size'>
<ref name='_virNodeInfo'/>
<ref name='virConnectListDefinedDomains'/>
@@ -2210,6 +2238,7 @@
<ref name='virDomainShutdown'/>
</word>
<word name='store'>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='virConnectListDefinedDomains'/>
<ref name='virConnectListDomains'/>
<ref name='virConnectOpen'/>
@@ -2407,6 +2436,7 @@
</word>
<word name='used'>
<ref name='VIR_COPY_CPUMAP'/>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='VIR_CPU_USABLE'/>
<ref name='VIR_GET_CPUMAP'/>
<ref name='VIR_UNUSE_CPU'/>
@@ -2480,6 +2510,7 @@
</word>
<word name='virDomainPinVcpu'>
<ref name='VIR_COPY_CPUMAP'/>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='VIR_GET_CPUMAP'/>
<ref name='VIR_UNUSE_CPU'/>
<ref name='VIR_USE_CPU'/>
@@ -2518,6 +2549,7 @@
<ref name='_virVcpuInfo'/>
</word>
<word name='virtual'>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='_virDomainInfo'/>
<ref name='_virVcpuInfo'/>
<ref name='vcpu'/>
@@ -2573,6 +2605,7 @@
</word>
<word name='with'>
<ref name='VIR_COPY_CPUMAP'/>
+ <ref name='VIR_CPU_MAPLEN'/>
<ref name='VIR_CPU_USABLE'/>
<ref name='VIR_GET_CPUMAP'/>
<ref name='VIR_UNUSE_CPU'/>
diff --git a/docs/news.html b/docs/news.html
index ddb93f612..e8506953c 100644
--- a/docs/news.html
+++ b/docs/news.html
@@ -2,10 +2,25 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><link rel="stylesheet" type="text/css" href="libvirt.css" /><link rel="SHORTCUT ICON" href="/32favicon.png" /><title>Releases</title></head><body><div id="container"><div id="intro"><div id="adjustments"></div><div id="pageHeader"></div><div id="content2"><h1 class="style1">Releases</h1><p>Here is the list of official releases, however since it is early on in the
development of libvirt, it is preferable when possible to just use the <a href="downloads.html">CVS version or snapshot</a>, contact the mailing list
-and check the <a href="ChangeLog.html">ChangeLog</a> to gauge progresses.</p><h3>0.1.3: Jul 11 2006</h3><ul><li>bugfixes: build as non-root, fix xend access when root, handling of
+and check the <a href="ChangeLog.html">ChangeLog</a> to gauge progresses.</p><h3>0.1.4: Aug 16 2006</h3><ul><li>bug fixes: spec file fix (Mark McLoughlin), error report problem (with
+ Hugh Brock), long integer in Python bindings (with Daniel Berrange), XML
+ generation bug for CDRom (Daniel Berrange), bug whem using number() XPath
+ function (Mark McLoughlin), fix python detection code, remove duplicate
+ initialization errors (Daniel Berrange)</li>
+ <li>improvements: UUID in XML description (Peter Vetere), proxy code
+ cleanup, virtual CPU and affinity support + virsh support (Michel
+ Ponceau, Philippe Berthault, Daniel Berrange), port and tty informations
+ for console in XML (Daniel Berrange), added XML dump to driver and proxy
+ support (Daniel Berrange), extention of boot options with support for
+ floppy and cdrom (Daniel Berrange), features block in XML to report/ask
+ PAE, ACPI, APIC for HVM domains (Daniel Berrange), fail saide-effect
+ operations when using read-only connection, large improvements to test
+ driver (Daniel Berrange) </li>
+ <li>documentation: spelling (Daniel Berrange), test driver examples.</li>
+</ul><h3>0.1.3: Jul 11 2006</h3><ul><li>bugfixes: build as non-root, fix xend access when root, handling of
empty XML elements (Mark McLoughlin), XML serialization and parsing fixes
(Mark McLoughlin), allow to create domains without disk (Mark
- McLoughlin), </li>
+ McLoughlin),</li>
<li>improvement: xenDaemonLookupByID from O(n^2) to O(n) (Daniel Berrange),
support for fully virtualized guest (Jim Fehlig, DV, Mark McLoughlin)</li>
<li>documentation: augmented to cover hvm domains</li>
diff --git a/include/libvirt/libvirt.h b/include/libvirt/libvirt.h
index f846fe035..a125f8fbb 100644
--- a/include/libvirt/libvirt.h
+++ b/include/libvirt/libvirt.h
@@ -196,7 +196,7 @@ typedef virNodeInfo *virNodeInfoPtr;
* version * 1,000,000 + minor * 1000 + micro
*/
-#define LIBVIR_VERSION_NUMBER 1003
+#define LIBVIR_VERSION_NUMBER 1004
int virGetVersion (unsigned long *libVer,
const char *type,
@@ -352,7 +352,7 @@ int virDomainPinVcpu (virDomainPtr domain,
#define VIR_UNUSE_CPU(cpumap,cpu) (cpumap[(cpu)/8] &= ~(1<<((cpu)%8)))
/**
- * VIR_CPU_MAPLEN
+ * VIR_CPU_MAPLEN:
* @cpu: number of physical CPUs
*
* This macro is to be used in conjonction with virDomainPinVcpu() API.
diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in
index a78452b48..c7a8fc26c 100644
--- a/include/libvirt/libvirt.h.in
+++ b/include/libvirt/libvirt.h.in
@@ -352,7 +352,7 @@ int virDomainPinVcpu (virDomainPtr domain,
#define VIR_UNUSE_CPU(cpumap,cpu) (cpumap[(cpu)/8] &= ~(1<<((cpu)%8)))
/**
- * VIR_CPU_MAPLEN
+ * VIR_CPU_MAPLEN:
* @cpu: number of physical CPUs
*
* This macro is to be used in conjonction with virDomainPinVcpu() API.
diff --git a/src/proxy_internal.c b/src/proxy_internal.c
index df34c6fc5..419fbd6a6 100644
--- a/src/proxy_internal.c
+++ b/src/proxy_internal.c
@@ -939,7 +939,7 @@ xenProxyNodeGetInfo(virConnectPtr conn, virNodeInfoPtr info) {
* Returns the XML document on success, NULL otherwise.
*/
static char *
-xenProxyDomainDumpXML(virDomainPtr domain, int flags)
+xenProxyDomainDumpXML(virDomainPtr domain, int flags ATTRIBUTE_UNUSED)
{
virProxyPacket req;
virProxyFullPacket ans;
diff --git a/src/test.c b/src/test.c
index e66598873..af165f8df 100644
--- a/src/test.c
+++ b/src/test.c
@@ -705,7 +705,7 @@ testDomainCreateLinux(virConnectPtr conn, const char *xmlDesc,
return (NULL);
}
if (conn->flags & VIR_CONNECT_RO) {
- testError(conn, NULL, VIR_ERR_READ_ONLY, __FUNCTION__);
+ testError(conn, NULL, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
return (NULL);
}
@@ -821,7 +821,7 @@ int testDestroyDomain (virDomainPtr domain)
return(-1);
}
if (domain->conn->flags & VIR_CONNECT_RO) {
- testError(domain->conn, domain, VIR_ERR_READ_ONLY, __FUNCTION__);
+ testError(domain->conn, domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
return (-1);
}
@@ -839,7 +839,7 @@ int testResumeDomain (virDomainPtr domain)
return(-1);
}
if (domain->conn->flags & VIR_CONNECT_RO) {
- testError(domain->conn, domain, VIR_ERR_READ_ONLY, __FUNCTION__);
+ testError(domain->conn, domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
return (-1);
}
@@ -857,7 +857,7 @@ int testPauseDomain (virDomainPtr domain)
return(-1);
}
if (domain->conn->flags & VIR_CONNECT_RO) {
- testError(domain->conn, domain, VIR_ERR_READ_ONLY, __FUNCTION__);
+ testError(domain->conn, domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
return (-1);
}
@@ -880,7 +880,7 @@ int testShutdownDomain (virDomainPtr domain)
return (-1);
}
if (domain->conn->flags & VIR_CONNECT_RO) {
- testError(domain->conn, domain, VIR_ERR_READ_ONLY, __FUNCTION__);
+ testError(domain->conn, domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
return (-1);
}
@@ -908,7 +908,7 @@ int testRebootDomain (virDomainPtr domain, virDomainRestart action)
return(-1);
}
if (domain->conn->flags & VIR_CONNECT_RO) {
- testError(domain->conn, domain, VIR_ERR_READ_ONLY, __FUNCTION__);
+ testError(domain->conn, domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
return (-1);
}
@@ -1006,7 +1006,7 @@ int testSetMaxMemory (virDomainPtr domain,
return(-1);
}
if (domain->conn->flags & VIR_CONNECT_RO) {
- testError(domain->conn, domain, VIR_ERR_READ_ONLY, __FUNCTION__);
+ testError(domain->conn, domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
return (-1);
}
@@ -1026,7 +1026,7 @@ int testSetMemory (virDomainPtr domain,
return(-1);
}
if (domain->conn->flags & VIR_CONNECT_RO) {
- testError(domain->conn, domain, VIR_ERR_READ_ONLY, __FUNCTION__);
+ testError(domain->conn, domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
return (-1);
}
@@ -1051,7 +1051,7 @@ int testSetVcpus(virDomainPtr domain,
return(-1);
}
if (domain->conn->flags & VIR_CONNECT_RO) {
- testError(domain->conn, domain, VIR_ERR_READ_ONLY, __FUNCTION__);
+ testError(domain->conn, domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
return (-1);
}
diff --git a/src/xend_internal.c b/src/xend_internal.c
index b847d5269..10826d849 100644
--- a/src/xend_internal.c
+++ b/src/xend_internal.c
@@ -2176,7 +2176,7 @@ xenDaemonDomainDumpXMLByID(virConnectPtr conn, int domid)
* the caller must free() the returned value.
*/
char *
-xenDaemonDomainDumpXML(virDomainPtr domain, int flags)
+xenDaemonDomainDumpXML(virDomainPtr domain, int flags ATTRIBUTE_UNUSED)
{
if ((domain == NULL) || (domain->conn == NULL) || (domain->name == NULL)) {
virXendError((domain ? domain->conn : NULL), VIR_ERR_INVALID_ARG,