]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commitdiff
* docs//*: regenerated
authorDaniel Veillard <veillard@redhat.com>
Wed, 22 Nov 2006 17:48:29 +0000 (17:48 +0000)
committerDaniel Veillard <veillard@redhat.com>
Wed, 22 Nov 2006 17:48:29 +0000 (17:48 +0000)
* include/libvirt/libvirt.h include/libvirt/libvirt.h.in src/driver.h
  src/libvirt.c src/proxy_internal.c src/test.c src/virsh.c
  src/xen_internal.c src/xend_internal.c src/xm_internal.c
  src/xs_internal.c: added support for dumping core of domains
  assuming a xend with the latest patch to do so.
Daniel

26 files changed:
ChangeLog
docs/APIchunk0.html
docs/APIchunk1.html
docs/APIchunk2.html
docs/APIchunk3.html
docs/APIchunk4.html
docs/APIfiles.html
docs/APIfunctions.html
docs/APIsymbols.html
docs/apibuild.py
docs/devhelp/libvirt-libvirt.html
docs/html/libvirt-libvirt.html
docs/html/libvirt-virterror.html
docs/libvirt-api.xml
docs/libvirt-refs.xml
include/libvirt/libvirt.h
include/libvirt/libvirt.h.in
src/driver.h
src/libvirt.c
src/proxy_internal.c
src/test.c
src/virsh.c
src/xen_internal.c
src/xend_internal.c
src/xm_internal.c
src/xs_internal.c

index 7a6e1ae3d697b58d24306e685dd0a3e531fa1304..fab011d718701bfb36200b2d38e41ed1c9312d0d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Wed Nov 22 17:57:58 CET 2006 Daniel Veillard <veillard@redhat.com>
+
+       * docs//*: regenerated
+       * include/libvirt/libvirt.h include/libvirt/libvirt.h.in src/driver.h
+         src/libvirt.c src/proxy_internal.c src/test.c src/virsh.c
+         src/xen_internal.c src/xend_internal.c src/xm_internal.c
+         src/xs_internal.c: added support for dumping core of domains 
+         assuming a xend with the latest patch to do so.
+
 Tue Nov 21 18:05:33 CET 2006 Daniel Veillard <veillard@redhat.com>
 
        * src/xs_internal.c: Michel Ponceau pointed out a bug in 
index cc81e4240d2367095e6c6e384a46d9fc77e85b7d..18976e9ee50ea8d46c2c07d42d8574d3c4e64e02 100644 (file)
 </dd><dt>Collect</dt><dd><a href="html/libvirt-libvirt.html#virConnectListDomains">virConnectListDomains</a><br />
 </dd><dt>Copy</dt><dd><a href="html/libvirt-virterror.html#virConnCopyLastError">virConnCopyLastError</a><br />
 <a href="html/libvirt-virterror.html#virCopyLastError">virCopyLastError</a><br />
-</dd></dl><h2>Letter D:</h2><dl><dt>Default</dt><dd><a href="html/libvirt-virterror.html#virDefaultErrorFunc">virDefaultErrorFunc</a><br />
+</dd><dt>Create</dt><dd><a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+</dd></dl><h2>Letter D:</h2><dl><dt>Daemon</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
+</dd><dt>Default</dt><dd><a href="html/libvirt-virterror.html#virDefaultErrorFunc">virDefaultErrorFunc</a><br />
 </dd><dt>Destroy</dt><dd><a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 </dd><dt>Domain0</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetMaxMemory">virDomainGetMaxMemory</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 <a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
@@ -76,7 +79,8 @@
 </dd><dt>Linux</dt><dd><a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
 </dd></dl><h2>Letter M:</h2><dl><dt>Macro</dt><dd><a href="html/libvirt-libvirt.html#LIBVIR_VERSION_NUMBER">LIBVIR_VERSION_NUMBER</a><br />
 </dd></dl><h2>Letter N:</h2><dl><dt>NUMA</dt><dd><a href="html/libvirt-libvirt.html#_virNodeInfo">_virNodeInfo</a><br />
-</dd><dt>Note</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
+</dd><dt>Note</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
+<a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
 <a href="html/libvirt-libvirt.html#virDomainReboot">virDomainReboot</a><br />
 <a href="html/libvirt-libvirt.html#virDomainSetVcpus">virDomainSetVcpus</a><br />
 <a href="html/libvirt-libvirt.html#virDomainShutdown">virDomainShutdown</a><br />
 <a href="html/libvirt-libvirt.html#virConnectGetVersion">virConnectGetVersion</a><br />
 <a href="html/libvirt-libvirt.html#virConnectOpen">virConnectOpen</a><br />
 <a href="html/libvirt-libvirt.html#virConnectOpenReadOnly">virConnectOpenReadOnly</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 <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 />
 </dd><dt>VIR_CPU_USABLE</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_USABLE">VIR_CPU_USABLE</a><br />
 </dd><dt>VIR_GET_CPUMAP</dt><dd><a href="html/libvirt-libvirt.html#VIR_GET_CPUMAP">VIR_GET_CPUMAP</a><br />
 </dd></dl><h2>Letter W:</h2><dl><dt>What</dt><dd><a href="html/libvirt-virterror.html#_virError">_virError</a><br />
-</dd></dl><h2>Letter X:</h2><dl><dt>XML</dt><dd><a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
+</dd></dl><h2>Letter X:</h2><dl><dt>XML</dt><dd><a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDefineXML">virDomainDefineXML</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
-</dd><dt>Xen</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
+</dd><dt>Xen</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
+<a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 <a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
 <a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
 </dd></dl><h2>Letter a:</h2><dl><dt>about</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
 </dd><dt>amount</dt><dd><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 />
+</dd><dt>analysis</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 </dd><dt>anymore</dt><dd><a href="html/libvirt-libvirt.html#virDomainSave">virDomainSave</a><br />
 </dd><dt>application</dt><dd><a href="html/libvirt-libvirt.html#virConnectClose">virConnectClose</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetMaxMemory">virDomainGetMaxMemory</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 </dd><dt>assumed</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 <a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
+</dd><dt>attachment</dt><dd><a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 </dd><dt>available</dt><dd><a href="html/libvirt-virterror.html#_virError">_virError</a><br />
 <a href="html/libvirt-libvirt.html#virConnectOpenReadOnly">virConnectOpenReadOnly</a><br />
 </dd><dt>availble</dt><dd><a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
index 9b168150fb1032c67326a349cbf20cdc102d989a..0aafab801314f33784a8e55a46b30bcf9351a6e1 100644 (file)
@@ -8,6 +8,8 @@
 </h2><h2>Letter b:</h2><dl><dt>back</dt><dd><a href="html/libvirt-virterror.html#virConnSetErrorFunc">virConnSetErrorFunc</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
 <a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
+</dd><dt>backend</dt><dd><a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 </dd><dt>based</dt><dd><a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
 <a href="html/libvirt-libvirt.html#virDomainLookupByID">virDomainLookupByID</a><br />
 <a href="html/libvirt-libvirt.html#virDomainLookupByName">virDomainLookupByName</a><br />
 <a href="html/libvirt-virterror.html#virConnCopyLastError">virConnCopyLastError</a><br />
 <a href="html/libvirt-virterror.html#virCopyLastError">virCopyLastError</a><br />
 </dd><dt>core</dt><dd><a href="html/libvirt-libvirt.html#_virNodeInfo">_virNodeInfo</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 </dd><dt>corresponding</dt><dd><a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
 </dd><dt>could</dt><dd><a href="html/libvirt-virterror.html#virSetErrorFunc">virSetErrorFunc</a><br />
 </dd><dt>cpu</dt><dd><a href="html/libvirt-libvirt.html#VIR_CPU_USABLE">VIR_CPU_USABLE</a><br />
 </dd><dt>cupmap</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 </dd><dt>currently</dt><dd><a href="html/libvirt-libvirt.html#virConnectOpen">virConnectOpen</a><br />
 <a href="html/libvirt-libvirt.html#virConnectOpenReadOnly">virConnectOpenReadOnly</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 </dd></dl><h2>Letter d:</h2><dl><dt>data</dt><dd><a href="html/libvirt-virterror.html#virConnSetErrorFunc">virConnSetErrorFunc</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
 <a href="html/libvirt-libvirt.html#virDomainFree">virDomainFree</a><br />
 <a href="html/libvirt-libvirt.html#virDomainCreate">virDomainCreate</a><br />
 <a href="html/libvirt-libvirt.html#virDomainUndefine">virDomainUndefine</a><br />
 </dd><dt>described</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
-</dd><dt>description</dt><dd><a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
+</dd><dt>description</dt><dd><a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDefineXML">virDomainDefineXML</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
 </dd><dt>device</dt><dd><a href="html/libvirt-libvirt.html#_virDomainKernel">_virDomainKernel</a><br />
+<a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 </dd><dt>disk</dt><dd><a href="html/libvirt-libvirt.html#virDomainRestore">virDomainRestore</a><br />
 <a href="html/libvirt-libvirt.html#virDomainSave">virDomainSave</a><br />
 </dd><dt>doable</dt><dd><a href="html/libvirt-libvirt.html#virDomainShutdown">virDomainShutdown</a><br />
 <a href="html/libvirt-libvirt.html#virDomainCreate">virDomainCreate</a><br />
 </dd><dt>down</dt><dd><a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
 </dd><dt>driver</dt><dd><a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
+</dd><dt>dump</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 </dd></dl><h2>Letter e:</h2><dl><dt>each</dt><dd><a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
 </dd><dt>encoded</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
 </dd><dt>especially</dt><dd><a href="html/libvirt-libvirt.html#virConnectClose">virConnectClose</a><br />
 </dd><dt>expected</dt><dd><a href="html/libvirt-libvirt.html#_virNodeInfo">_virNodeInfo</a><br />
 </dd><dt>extra</dt><dd><a href="html/libvirt-virterror.html#_virError">_virError</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 <a href="html/libvirt-libvirt.html#virDomainReboot">virDomainReboot</a><br />
 </dd><dt>extract</dt><dd><a href="html/libvirt-libvirt.html#VIR_COPY_CPUMAP">VIR_COPY_CPUMAP</a><br />
 </dd><dt>extracted</dt><dd><a href="html/libvirt-libvirt.html#virConnectGetVersion">virConnectGetVersion</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
 </dd><dt>extraction</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
 </dd></dl><h2>Letter f:</h2><dl><dt>fail</dt><dd><a href="html/libvirt-libvirt.html#virDomainSetVcpus">virDomainSetVcpus</a><br />
-</dd><dt>failure</dt><dd><a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
+</dd><dt>failure</dt><dd><a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
+<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#virDomainDetachDevice">virDomainDetachDevice</a><br />
 <a href="html/libvirt-libvirt.html#virDomainFree">virDomainFree</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 <a href="html/libvirt-libvirt.html#virDomainSuspend">virDomainSuspend</a><br />
 <a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
 <a href="html/libvirt-libvirt.html#virNodeGetInfo">virNodeGetInfo</a><br />
-</dd><dt>file</dt><dd><a href="html/libvirt-libvirt.html#virDomainSave">virDomainSave</a><br />
+</dd><dt>file</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
+<a href="html/libvirt-libvirt.html#virDomainSave">virDomainSave</a><br />
 </dd><dt>filename</dt><dd><a href="html/libvirt-libvirt.html#_virDomainKernel">_virDomainKernel</a><br />
 </dd><dt>filled</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 </dd><dt>find</dt><dd><a href="html/libvirt-libvirt.html#virDomainLookupByID">virDomainLookupByID</a><br />
 </dd><dt>first</dt><dd><a href="html/libvirt-libvirt.html#virConnectOpen">virConnectOpen</a><br />
 <a href="html/libvirt-libvirt.html#virConnectOpenReadOnly">virConnectOpenReadOnly</a><br />
-</dd><dt>flags</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
+</dd><dt>flags</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
+<a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
 <a href="html/libvirt-libvirt.html#virDomainReboot">virDomainReboot</a><br />
 </dd><dt>for</dt><dd><a href="html/libvirt-libvirt.html#_virDomainInfo">_virDomainInfo</a><br />
 <a href="html/libvirt-libvirt.html#_virNodeInfo">_virNodeInfo</a><br />
 <a href="html/libvirt-virterror.html#virConnGetLastError">virConnGetLastError</a><br />
 <a href="html/libvirt-libvirt.html#virConnectGetVersion">virConnectGetVersion</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDefineXML">virDomainDefineXML</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetID">virDomainGetID</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetName">virDomainGetName</a><br />
index 04c66cde178fc99cc363df0a6527936cad516c58..0a1a8b755095aa4b092f5c5f454414a8efd1634f 100644 (file)
@@ -12,7 +12,8 @@
 <a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetMaxMemory">virDomainGetMaxMemory</a><br />
 <a href="html/libvirt-virterror.html#virSetErrorFunc">virSetErrorFunc</a><br />
-</dd><dt>given</dt><dd><a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
+</dd><dt>given</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
 <a href="html/libvirt-libvirt.html#virDomainLookupByName">virDomainLookupByName</a><br />
 <a href="html/libvirt-libvirt.html#virDomainLookupByUUID">virDomainLookupByUUID</a><br />
 <a href="html/libvirt-libvirt.html#virDomainLookupByUUIDString">virDomainLookupByUUIDString</a><br />
@@ -30,6 +31,7 @@
 </dd><dt>has</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 </dd><dt>have</dt><dd><a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
 </dd><dt>host</dt><dd><a href="html/libvirt-libvirt.html#VIR_NODEINFO_MAXCPUS">VIR_NODEINFO_MAXCPUS</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 </dd><dt>how</dt><dd><a href="html/libvirt-virterror.html#_virError">_virError</a><br />
 </dd><dt>human-readable</dt><dd><a href="html/libvirt-virterror.html#_virError">_virError</a><br />
 </dd></dl><h2>Letter i:</h2><dl><dt>ie:</dt><dd><a href="">cpumap</a><br />
@@ -55,6 +57,7 @@
 <a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
 </dd><dt>int</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetID">virDomainGetID</a><br />
 </dd><dt>interaction</dt><dd><a href="html/libvirt-libvirt.html#virConnectClose">virConnectClose</a><br />
+</dd><dt>interpreted</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 </dd><dt>into</dt><dd><a href="html/libvirt-libvirt.html#VIR_COPY_CPUMAP">VIR_COPY_CPUMAP</a><br />
 </dd><dt>its</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetName">virDomainGetName</a><br />
 <a href="html/libvirt-libvirt.html#virDomainLookupByName">virDomainLookupByName</a><br />
 <a href="html/libvirt-libvirt.html#virDomainSetMemory">virDomainSetMemory</a><br />
 <a href="html/libvirt-libvirt.html#virDomainSuspend">virDomainSuspend</a><br />
 </dd><dt>message</dt><dd><a href="html/libvirt-virterror.html#_virError">_virError</a><br />
-</dd><dt>method</dt><dd><a href="html/libvirt-libvirt.html#virDomainRestore">virDomainRestore</a><br />
+</dd><dt>method</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
+<a href="html/libvirt-libvirt.html#virDomainRestore">virDomainRestore</a><br />
 <a href="html/libvirt-libvirt.html#virDomainSave">virDomainSave</a><br />
 </dd><dt>methods</dt><dd><a href="html/libvirt-libvirt.html#virConnectOpenReadOnly">virConnectOpenReadOnly</a><br />
 </dd><dt>micro</dt><dd><a href="html/libvirt-libvirt.html#LIBVIR_VERSION_NUMBER">LIBVIR_VERSION_NUMBER</a><br />
index f1b99fbcc431e967574ffdf26180ebf7121fff65..5e4cff27f83c2ec6dbcd3348ce29befe18f7f3f2 100644 (file)
@@ -5,37 +5,14 @@
 <a href="APIchunk2.html">g-n</a>
 <a href="APIchunk3.html">o-s</a>
 <a href="APIchunk4.html">t-z</a>
-</h2><h2>Letter o:</h2><dl><dt>object</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#virDomainFree">virDomainFree</a><br />
-<a href="html/libvirt-libvirt.html#virDomainGetID">virDomainGetID</a><br />
-<a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
-<a href="html/libvirt-libvirt.html#virDomainGetMaxMemory">virDomainGetMaxMemory</a><br />
-<a href="html/libvirt-libvirt.html#virDomainGetName">virDomainGetName</a><br />
-<a href="html/libvirt-libvirt.html#virDomainGetOSType">virDomainGetOSType</a><br />
-<a href="html/libvirt-libvirt.html#virDomainGetUUID">virDomainGetUUID</a><br />
-<a href="html/libvirt-libvirt.html#virDomainGetUUIDString">virDomainGetUUIDString</a><br />
-<a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
-<a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
-<a href="html/libvirt-libvirt.html#virDomainLookupByID">virDomainLookupByID</a><br />
-<a href="html/libvirt-libvirt.html#virDomainLookupByName">virDomainLookupByName</a><br />
-<a href="html/libvirt-libvirt.html#virDomainLookupByUUID">virDomainLookupByUUID</a><br />
-<a href="html/libvirt-libvirt.html#virDomainLookupByUUIDString">virDomainLookupByUUIDString</a><br />
-<a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
-<a href="html/libvirt-libvirt.html#virDomainReboot">virDomainReboot</a><br />
-<a href="html/libvirt-libvirt.html#virDomainResume">virDomainResume</a><br />
-<a href="html/libvirt-libvirt.html#virDomainSave">virDomainSave</a><br />
-<a href="html/libvirt-libvirt.html#virDomainSetMaxMemory">virDomainSetMaxMemory</a><br />
-<a href="html/libvirt-libvirt.html#virDomainSetMemory">virDomainSetMemory</a><br />
-<a href="html/libvirt-libvirt.html#virDomainSetVcpus">virDomainSetVcpus</a><br />
-<a href="html/libvirt-libvirt.html#virDomainShutdown">virDomainShutdown</a><br />
-<a href="html/libvirt-libvirt.html#virDomainSuspend">virDomainSuspend</a><br />
-</dd><dt>occured</dt><dd><a href="html/libvirt-virterror.html#virConnGetLastError">virConnGetLastError</a><br />
+</h2><h2>Letter o:</h2><dl><dt>occured</dt><dd><a href="html/libvirt-virterror.html#virConnGetLastError">virConnGetLastError</a><br />
 <a href="html/libvirt-virterror.html#virGetLastError">virGetLastError</a><br />
 </dd><dt>offline</dt><dd><a href="html/libvirt-libvirt.html#_virVcpuInfo">_virVcpuInfo</a><br />
 </dd><dt>one</dt><dd><a href="html/libvirt-libvirt.html#_virDomainInfo">_virDomainInfo</a><br />
 <a href="">maplen</a><br />
+<a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
 <a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 </dd><dt>only</dt><dd><a href="html/libvirt-libvirt.html#virConnectGetVersion">virConnectGetVersion</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
@@ -63,7 +40,8 @@
 </dd><dt>pass</dt><dd><a href="html/libvirt-virterror.html#virConnSetErrorFunc">virConnSetErrorFunc</a><br />
 <a href="html/libvirt-libvirt.html#virConnectOpen">virConnectOpen</a><br />
 <a href="html/libvirt-libvirt.html#virConnectOpenReadOnly">virConnectOpenReadOnly</a><br />
-</dd><dt>path</dt><dd><a href="html/libvirt-libvirt.html#virDomainRestore">virDomainRestore</a><br />
+</dd><dt>path</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
+<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="html/libvirt-libvirt.html#VIR_CPU_MAPLEN">VIR_CPU_MAPLEN</a><br />
 </dd><dt>relaunch</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetXMLDesc">virDomainGetXMLDesc</a><br />
 </dd><dt>release</dt><dd><a href="html/libvirt-libvirt.html#virConnectGetVersion">virConnectGetVersion</a><br />
 <a href="html/libvirt-libvirt.html#virGetVersion">virGetVersion</a><br />
+</dd><dt>remote</dt><dd><a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 </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>structures</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 </dd><dt>succeed</dt><dd><a href="html/libvirt-libvirt.html#virDomainCreate">virDomainCreate</a><br />
 </dd><dt>success</dt><dd><a href="html/libvirt-libvirt.html#virConnectClose">virConnectClose</a><br />
+<a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 <a href="html/libvirt-libvirt.html#virDomainCreate">virDomainCreate</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 <a href="html/libvirt-libvirt.html#virDomainFree">virDomainFree</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetUUID">virDomainGetUUID</a><br />
index 1aaa27d398bdcff5de901b4fc7f89206a470dfc2..f233b4ade014347c3bbd49d6fdb4957f8f03229c 100644 (file)
@@ -13,6 +13,7 @@
 </dd><dt>that</dt><dd><a href="html/libvirt-virterror.html#virConnCopyLastError">virConnCopyLastError</a><br />
 <a href="html/libvirt-virterror.html#virConnGetLastError">virConnGetLastError</a><br />
 <a href="html/libvirt-virterror.html#virConnResetLastError">virConnResetLastError</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetName">virDomainGetName</a><br />
 <a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
@@ -59,6 +60,7 @@
 </dd><dt>unsigned</dt><dd><a href="html/libvirt-libvirt.html#virDomainGetID">virDomainGetID</a><br />
 </dd><dt>unused</dt><dd><a href="html/libvirt-libvirt.html#virConnectOpen">virConnectOpen</a><br />
 <a href="html/libvirt-libvirt.html#virConnectOpenReadOnly">virConnectOpenReadOnly</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 </dd><dt>usable</dt><dd><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 />
 <a href="html/libvirt-libvirt.html#_virDomainInfo">_virDomainInfo</a><br />
 <a href="html/libvirt-libvirt.html#_virVcpuInfo">_virVcpuInfo</a><br />
 <a href="">vcpu</a><br />
+<a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetVcpus">virDomainGetVcpus</a><br />
 <a href="html/libvirt-libvirt.html#virDomainPinVcpu">virDomainPinVcpu</a><br />
 <a href="html/libvirt-libvirt.html#virDomainSetVcpus">virDomainSetVcpus</a><br />
 </dd><dt>will</dt><dd><a href="html/libvirt-virterror.html#virConnCopyLastError">virConnCopyLastError</a><br />
 <a href="html/libvirt-virterror.html#virConnSetErrorFunc">virConnSetErrorFunc</a><br />
 <a href="html/libvirt-virterror.html#virCopyLastError">virCopyLastError</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetName">virDomainGetName</a><br />
 <a href="html/libvirt-libvirt.html#virDomainRestore">virDomainRestore</a><br />
 <a href="html/libvirt-libvirt.html#virDomainSave">virDomainSave</a><br />
index 1eead3da9479de80909aecb9885465d60959e5c3..d0cb108fba94387446cd3414668a5e6913842f3e 100644 (file)
 <a href="html/libvirt-libvirt.html#virConnectPtr">virConnectPtr</a><br />
 <a href="html/libvirt-libvirt.html#virDeviceMode">virDeviceMode</a><br />
 <a href="html/libvirt-libvirt.html#virDomain">virDomain</a><br />
+<a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 <a href="html/libvirt-libvirt.html#virDomainCreate">virDomainCreate</a><br />
 <a href="html/libvirt-libvirt.html#virDomainCreateFlags">virDomainCreateFlags</a><br />
 <a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDefineXML">virDomainDefineXML</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 <a href="html/libvirt-libvirt.html#virDomainFree">virDomainFree</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetID">virDomainGetID</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
index 31019e17d56e2ed78247cbf2d90686d0e356f4d0..9db433eae654cff0fc66dcee9f6185ca43e728eb 100644 (file)
 <a href="html/libvirt-libvirt.html#virDomainRestore">virDomainRestore</a><br />
 <a href="html/libvirt-libvirt.html#virNodeGetInfo">virNodeGetInfo</a><br />
 </p><h2>Type virDomainInfoPtr:</h2><p><a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
-</p><h2>Type virDomainPtr:</h2><p><a href="html/libvirt-libvirt.html#virDomainCreate">virDomainCreate</a><br />
+</p><h2>Type virDomainPtr:</h2><p><a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCreate">virDomainCreate</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 <a href="html/libvirt-libvirt.html#virDomainFree">virDomainFree</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetID">virDomainGetID</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
index ea9c24136883c45eb10651bf4f24685110c5a7f3..ff9a9ee7ff5a223fd7100c739c27a37e742d5368 100644 (file)
 <a href="html/libvirt-virterror.html#virDefaultErrorFunc">virDefaultErrorFunc</a><br />
 <a href="html/libvirt-libvirt.html#virDeviceMode">virDeviceMode</a><br />
 <a href="html/libvirt-libvirt.html#virDomain">virDomain</a><br />
+<a href="html/libvirt-libvirt.html#virDomainAttachDevice">virDomainAttachDevice</a><br />
+<a href="html/libvirt-libvirt.html#virDomainCoreDump">virDomainCoreDump</a><br />
 <a href="html/libvirt-libvirt.html#virDomainCreate">virDomainCreate</a><br />
 <a href="html/libvirt-libvirt.html#virDomainCreateFlags">virDomainCreateFlags</a><br />
 <a href="html/libvirt-libvirt.html#virDomainCreateLinux">virDomainCreateLinux</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDefineXML">virDomainDefineXML</a><br />
 <a href="html/libvirt-libvirt.html#virDomainDestroy">virDomainDestroy</a><br />
+<a href="html/libvirt-libvirt.html#virDomainDetachDevice">virDomainDetachDevice</a><br />
 <a href="html/libvirt-libvirt.html#virDomainFree">virDomainFree</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetID">virDomainGetID</a><br />
 <a href="html/libvirt-libvirt.html#virDomainGetInfo">virDomainGetInfo</a><br />
index 4feb42e6417fca30f1070727eb51c48529ba41d8..c7b18487ab6b96234581274b0413eea5389b4a11 100755 (executable)
@@ -31,6 +31,8 @@ ignored_files = {
   "xen_internal.c": "internal code",
   "xs_internal.h": "internal includes and defines",
   "xs_internal.c": "internal code",
+  "xm_internal.h": "internal code",
+  "xm_internal.c": "internal code",
   "sexpr.h": "internal includes and defines",
   "sexpr.c": "internal code",
   "xml.h": "internal includes and defines",
index 0aab728ca00ffc6efa362c84e028f80c0e2e42c7..ff90a02815861bed47458180ff8dcf5730f2d729 100644 (file)
@@ -76,6 +76,7 @@ const char *  <a href="#virConnectGetType">virConnectGetType</a>      (<a href="libvir
 int    <a href="#virDomainSave">virDomainSave</a>                      (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      const char * to);
 int    <a href="#virDomainCreate">virDomainCreate</a>                  (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain);
 int    <a href="#virConnectListDomains">virConnectListDomains</a>              (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br/>                                      int * ids, <br/>                                        int maxids);
+int    <a href="#virDomainCoreDump">virDomainCoreDump</a>              (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      const char * to, <br/>                                  int flags);
 <a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a>   <a href="#virDomainLookupByUUID">virDomainLookupByUUID</a>      (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br/>                                      const unsigned char * uuid);
 <a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a>   <a href="#virDomainLookupByUUIDString">virDomainLookupByUUIDString</a>  (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br/>                                              const char * uuidstr);
 <a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a>   <a href="#virDomainLookupByID">virDomainLookupByID</a>  (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br/>                                      int id);
@@ -84,8 +85,8 @@ int   <a href="#virNodeGetInfo">virNodeGetInfo</a>                    (<a href="libvirt-libvirt.htm
 int    <a href="#virDomainGetUUID">virDomainGetUUID</a>                (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      unsigned char * uuid);
 int    <a href="#virConnectNumOfDomains">virConnectNumOfDomains</a>            (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn);
 int    <a href="#virDomainGetUUIDString">virDomainGetUUIDString</a>            (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      char * buf);
-int    <a href="#virDomainGetVcpus">virDomainGetVcpus</a>              (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      <a href="libvirt-libvirt.html#virVcpuInfoPtr">virVcpuInfoPtr</a> info, <br/>                                    int maxinfo, <br/>                                      unsigned char * cpumaps, <br/>                                  int maplen);
-int    <a href="#virConnectGetVersion">virConnectGetVersion</a>                (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br/>                                      unsigned long * hvVer);
+unsigned long  <a href="#virDomainGetMaxMemory">virDomainGetMaxMemory</a>      (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain);
+int    <a href="#virDomainAttachDevice">virDomainAttachDevice</a>              (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      char * xml);
 int    <a href="#virDomainSetMaxMemory">virDomainSetMaxMemory</a>              (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      unsigned long memory);
 int    <a href="#virDomainFree">virDomainFree</a>                      (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain);
 <a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> <a href="#virConnectOpen">virConnectOpen</a>            (const char * name);
@@ -100,8 +101,10 @@ int        <a href="#virDomainResume">virDomainResume</a>                  (<a href="libvirt-libvirt.h
 <a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a>   <a href="#virDomainCreateLinux">virDomainCreateLinux</a>        (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br/>                                      const char * xmlDesc, <br/>                                     unsigned int flags);
 int    <a href="#virDomainSetMemory">virDomainSetMemory</a>            (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      unsigned long memory);
 int    <a href="#virDomainDestroy">virDomainDestroy</a>                (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain);
-unsigned long  <a href="#virDomainGetMaxMemory">virDomainGetMaxMemory</a>      (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain);
+int    <a href="#virDomainDetachDevice">virDomainDetachDevice</a>              (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      char * xml);
+int    <a href="#virDomainGetVcpus">virDomainGetVcpus</a>              (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      <a href="libvirt-libvirt.html#virVcpuInfoPtr">virVcpuInfoPtr</a> info, <br/>                                    int maxinfo, <br/>                                      unsigned char * cpumaps, <br/>                                  int maplen);
 char * <a href="#virDomainGetXMLDesc">virDomainGetXMLDesc</a>          (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      int flags);
+int    <a href="#virConnectGetVersion">virConnectGetVersion</a>                (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br/>                                      unsigned long * hvVer);
 const char *   <a href="#virDomainGetName">virDomainGetName</a>        (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain);
 <a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> <a href="#virConnectOpenReadOnly">virConnectOpenReadOnly</a>    (const char * name);
 </pre>
@@ -300,6 +303,14 @@ The content of this structure is not made public by the API.
         <div class="refsect2" lang="en"><h3><a name="virConnectOpenReadOnly"/>virConnectOpenReadOnly ()</h3><pre class="programlisting"><a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> virConnectOpenReadOnly  (const char * name)<br/>
 </pre><p>This function should be called first to get a restricted connection to the libbrary functionalities. The set of APIs usable are then restricted on the available methods to control the domains.</p>
 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>optional argument currently unused, pass NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the hypervisor connection or NULL in case of error</td></tr></tbody></table></div></div>
+        <hr/>
+        <div class="refsect2" lang="en"><h3><a name="virDomainAttachDevice"/>virDomainAttachDevice ()</h3><pre class="programlisting">int      virDomainAttachDevice           (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      char * xml)<br/>
+</pre><p>Create a virtual device attachment to backend.</p>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>pointer to domain object</td></tr><tr><td><span class="term"><i><tt>xml</tt></i>:</span></td><td>pointer to XML description of one device</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of failure.</td></tr></tbody></table></div></div>
+        <hr/>
+        <div class="refsect2" lang="en"><h3><a name="virDomainCoreDump"/>virDomainCoreDump ()</h3><pre class="programlisting">int      virDomainCoreDump               (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      const char * to, <br/>                                  int flags)<br/>
+</pre><p>This method will dump the core of a domain on a given file for analysis. Note that for remote Xen Daemon the file path will be interpreted in the remote host.</p>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>a domain object</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>path for the core file</td></tr><tr><td><span class="term"><i><tt>flags</tt></i>:</span></td><td>extra flags, currently unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of failure.</td></tr></tbody></table></div></div>
         <hr/>
         <div class="refsect2" lang="en"><h3><a name="virDomainCreate"/>virDomainCreate ()</h3><pre class="programlisting">int  virDomainCreate                 (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)<br/>
 </pre><p>launch a defined domain. If the call succeed the domain moves from the defined to the running domains pools.</p>
@@ -316,6 +327,10 @@ The content of this structure is not made public by the API.
         <div class="refsect2" lang="en"><h3><a name="virDomainDestroy"/>virDomainDestroy ()</h3><pre class="programlisting">int        virDomainDestroy                (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)<br/>
 </pre><p>Destroy the domain object. The running instance is shutdown if not down already and all resources used by it are given back to the hypervisor. The data structure is freed and should not be used thereafter if the call does not return an error. This function may requires priviledged access</p>
 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>a domain object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of failure.</td></tr></tbody></table></div></div>
+        <hr/>
+        <div class="refsect2" lang="en"><h3><a name="virDomainDetachDevice"/>virDomainDetachDevice ()</h3><pre class="programlisting">int      virDomainDetachDevice           (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br/>                                      char * xml)<br/>
+</pre><p>Destroy a virtual device attachment to backend.</p>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>pointer to domain object</td></tr><tr><td><span class="term"><i><tt>xml</tt></i>:</span></td><td>pointer to XML description of one device</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of failure.</td></tr></tbody></table></div></div>
         <hr/>
         <div class="refsect2" lang="en"><h3><a name="virDomainFree"/>virDomainFree ()</h3><pre class="programlisting">int      virDomainFree                   (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)<br/>
 </pre><p>Free the domain object. The running instance is kept alive. The data structure is freed and should not be used thereafter.</p>
index 60c30eeb96eae569edcaf5531c69ec1c78f60c01..33525e611a532237ea68b54f2eb917b970ea3117 100644 (file)
@@ -28,10 +28,13 @@ The content of this structure is not made public by the API.
 <pre class="programlisting">int        <a href="#virConnectNumOfDomains">virConnectNumOfDomains</a>            (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn)</pre>
 <pre class="programlisting"><a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a>     <a href="#virConnectOpen">virConnectOpen</a>            (const char * name)</pre>
 <pre class="programlisting"><a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a>     <a href="#virConnectOpenReadOnly">virConnectOpenReadOnly</a>    (const char * name)</pre>
+<pre class="programlisting">int        <a href="#virDomainAttachDevice">virDomainAttachDevice</a>              (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br />                                     char * xml)</pre>
+<pre class="programlisting">int        <a href="#virDomainCoreDump">virDomainCoreDump</a>              (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br />                                     const char * to, <br />                                         int flags)</pre>
 <pre class="programlisting">int        <a href="#virDomainCreate">virDomainCreate</a>                  (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)</pre>
 <pre class="programlisting"><a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a>       <a href="#virDomainCreateLinux">virDomainCreateLinux</a>        (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br />                                     const char * xmlDesc, <br />                                    unsigned int flags)</pre>
 <pre class="programlisting"><a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a>       <a href="#virDomainDefineXML">virDomainDefineXML</a>    (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br />                                     const char * xml)</pre>
 <pre class="programlisting">int        <a href="#virDomainDestroy">virDomainDestroy</a>                (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)</pre>
+<pre class="programlisting">int        <a href="#virDomainDetachDevice">virDomainDetachDevice</a>              (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br />                                     char * xml)</pre>
 <pre class="programlisting">int        <a href="#virDomainFree">virDomainFree</a>                      (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)</pre>
 <pre class="programlisting">unsigned int       <a href="#virDomainGetID">virDomainGetID</a>            (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)</pre>
 <pre class="programlisting">int        <a href="#virDomainGetInfo">virDomainGetInfo</a>                (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br />                                     <a href="libvirt-libvirt.html#virDomainInfoPtr">virDomainInfoPtr</a> info)</pre>
@@ -155,7 +158,11 @@ The content of this structure is not made public by the API.
 </pre><p>This function should be called first to get a connection to the Hypervisor and xen store</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>optional argument currently unused, pass NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the hypervisor connection or NULL in case of error</td></tr></tbody></table></div><h3><a name="virConnectOpenReadOnly" id="virConnectOpenReadOnly"></a>Function: virConnectOpenReadOnly</h3><pre class="programlisting"><a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a>   virConnectOpenReadOnly  (const char * name)<br />
 </pre><p>This function should be called first to get a restricted connection to the libbrary functionalities. The set of APIs usable are then restricted on the available methods to control the domains.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>optional argument currently unused, pass NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the hypervisor connection or NULL in case of error</td></tr></tbody></table></div><h3><a name="virDomainCreate" id="virDomainCreate"></a>Function: virDomainCreate</h3><pre class="programlisting">int   virDomainCreate                 (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>optional argument currently unused, pass NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the hypervisor connection or NULL in case of error</td></tr></tbody></table></div><h3><a name="virDomainAttachDevice" id="virDomainAttachDevice"></a>Function: virDomainAttachDevice</h3><pre class="programlisting">int virDomainAttachDevice           (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br />                                     char * xml)<br />
+</pre><p>Create a virtual device attachment to backend.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>pointer to domain object</td></tr><tr><td><span class="term"><i><tt>xml</tt></i>:</span></td><td>pointer to XML description of one device</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of failure.</td></tr></tbody></table></div><h3><a name="virDomainCoreDump" id="virDomainCoreDump"></a>Function: virDomainCoreDump</h3><pre class="programlisting">int  virDomainCoreDump               (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br />                                     const char * to, <br />                                         int flags)<br />
+</pre><p>This method will dump the core of a domain on a given file for analysis. Note that for remote Xen Daemon the file path will be interpreted in the remote host.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>a domain object</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>path for the core file</td></tr><tr><td><span class="term"><i><tt>flags</tt></i>:</span></td><td>extra flags, currently unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of failure.</td></tr></tbody></table></div><h3><a name="virDomainCreate" id="virDomainCreate"></a>Function: virDomainCreate</h3><pre class="programlisting">int virDomainCreate                 (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)<br />
 </pre><p>launch a defined domain. If the call succeed the domain moves from the defined to the running domains pools.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>pointer to a defined domain</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="virDomainCreateLinux" id="virDomainCreateLinux"></a>Function: virDomainCreateLinux</h3><pre class="programlisting"><a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> virDomainCreateLinux    (<a href="libvirt-libvirt.html#virConnectPtr">virConnectPtr</a> conn, <br />                                     const char * xmlDesc, <br />                                    unsigned int flags)<br />
 </pre><p>Launch a new Linux guest domain, based on an XML description similar to the one returned by virDomainGetXMLDesc() This function may requires priviledged access to the hypervisor.</p>
@@ -163,7 +170,9 @@ The content of this structure is not made public by the API.
 </pre><p>define a domain, but does not start it</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>conn</tt></i>:</span></td><td>pointer to the hypervisor connection</td></tr><tr><td><span class="term"><i><tt>xml</tt></i>:</span></td><td>the XML description for the domain, preferably in UTF-8</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL in case of error, a pointer to the domain otherwise</td></tr></tbody></table></div><h3><a name="virDomainDestroy" id="virDomainDestroy"></a>Function: virDomainDestroy</h3><pre class="programlisting">int        virDomainDestroy                (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)<br />
 </pre><p>Destroy the domain object. The running instance is shutdown if not down already and all resources used by it are given back to the hypervisor. The data structure is freed and should not be used thereafter if the call does not return an error. This function may requires priviledged access</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>a domain object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of failure.</td></tr></tbody></table></div><h3><a name="virDomainFree" id="virDomainFree"></a>Function: virDomainFree</h3><pre class="programlisting">int     virDomainFree                   (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>a domain object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of failure.</td></tr></tbody></table></div><h3><a name="virDomainDetachDevice" id="virDomainDetachDevice"></a>Function: virDomainDetachDevice</h3><pre class="programlisting">int     virDomainDetachDevice           (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain, <br />                                     char * xml)<br />
+</pre><p>Destroy a virtual device attachment to backend.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>pointer to domain object</td></tr><tr><td><span class="term"><i><tt>xml</tt></i>:</span></td><td>pointer to XML description of one device</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of failure.</td></tr></tbody></table></div><h3><a name="virDomainFree" id="virDomainFree"></a>Function: virDomainFree</h3><pre class="programlisting">int      virDomainFree                   (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)<br />
 </pre><p>Free the domain object. The running instance is kept alive. The data structure is freed and should not be used thereafter.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>domain</tt></i>:</span></td><td>a domain object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of failure.</td></tr></tbody></table></div><h3><a name="virDomainGetID" id="virDomainGetID"></a>Function: virDomainGetID</h3><pre class="programlisting">unsigned int virDomainGetID          (<a href="libvirt-libvirt.html#virDomainPtr">virDomainPtr</a> domain)<br />
 </pre><p>Get the hypervisor ID number for the domain</p>
index e813633d07b65938f93b1ad2021128e1ee53bb5e..ca65bcf94e87c28332bf6544e8031b07054dce38 100644 (file)
@@ -84,6 +84,7 @@ void  <a href="#virErrorFunc">virErrorFunc</a>                        (void * userData, <br />                                         <a
     <a name="VIR_ERR_PARSE_FAILED" id="VIR_ERR_PARSE_FAILED">VIR_ERR_PARSE_FAILED</a> = 32 : failed to parse a conf file
     <a name="VIR_ERR_CONF_SYNTAX" id="VIR_ERR_CONF_SYNTAX">VIR_ERR_CONF_SYNTAX</a> = 33 : failed to parse the syntax of a conf file
     <a name="VIR_ERR_WRITE_FAILED" id="VIR_ERR_WRITE_FAILED">VIR_ERR_WRITE_FAILED</a> = 34 : failed to write a conf file
+    <a name="VIR_ERR_XML_DETAIL" id="VIR_ERR_XML_DETAIL">VIR_ERR_XML_DETAIL</a> = 35 : detail of an XML error
 }
 </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>
index f88b00658a1be383373d82724a9a747da1d9d2ca..856b3725bb3eb6ac9dd4e39ccd5eda8ed0b83b81 100644 (file)
@@ -66,6 +66,7 @@
      <exports symbol='virDomainSave' type='function'/>
      <exports symbol='virDomainCreate' type='function'/>
      <exports symbol='virConnectListDomains' type='function'/>
+     <exports symbol='virDomainCoreDump' type='function'/>
      <exports symbol='virDomainLookupByUUID' type='function'/>
      <exports symbol='virDomainLookupByUUIDString' type='function'/>
      <exports symbol='virDomainLookupByID' type='function'/>
@@ -74,8 +75,8 @@
      <exports symbol='virDomainGetUUID' type='function'/>
      <exports symbol='virConnectNumOfDomains' type='function'/>
      <exports symbol='virDomainGetUUIDString' type='function'/>
-     <exports symbol='virDomainGetVcpus' type='function'/>
-     <exports symbol='virConnectGetVersion' type='function'/>
+     <exports symbol='virDomainGetMaxMemory' type='function'/>
+     <exports symbol='virDomainAttachDevice' type='function'/>
      <exports symbol='virDomainSetMaxMemory' type='function'/>
      <exports symbol='virDomainFree' type='function'/>
      <exports symbol='virConnectOpen' type='function'/>
      <exports symbol='virDomainCreateLinux' type='function'/>
      <exports symbol='virDomainSetMemory' type='function'/>
      <exports symbol='virDomainDestroy' type='function'/>
-     <exports symbol='virDomainGetMaxMemory' type='function'/>
+     <exports symbol='virDomainDetachDevice' type='function'/>
+     <exports symbol='virDomainGetVcpus' type='function'/>
      <exports symbol='virDomainGetXMLDesc' type='function'/>
+     <exports symbol='virConnectGetVersion' type='function'/>
      <exports symbol='virDomainGetName' type='function'/>
      <exports symbol='virConnectOpenReadOnly' type='function'/>
     </file>
       <return type='void'/>
       <arg name='err' type='virErrorPtr' info='pointer to the error.'/>
     </function>
+    <function name='virDomainAttachDevice' file='libvirt' module='libvirt'>
+      <info>Create a virtual device attachment to backend.</info>
+      <return type='int' info='0 in case of success, -1 in case of failure.'/>
+      <arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
+      <arg name='xml' type='char *' info='pointer to XML description of one device'/>
+    </function>
+    <function name='virDomainCoreDump' file='libvirt' module='libvirt'>
+      <info>This method will dump the core of a domain on a given file for analysis. Note that for remote Xen Daemon the file path will be interpreted in the remote host.</info>
+      <return type='int' info='0 in case of success and -1 in case of failure.'/>
+      <arg name='domain' type='virDomainPtr' info='a domain object'/>
+      <arg name='to' type='const char *' info='path for the core file'/>
+      <arg name='flags' type='int' info='extra flags, currently unused'/>
+    </function>
     <function name='virDomainCreate' file='libvirt' module='libvirt'>
       <info>launch a defined domain. If the call succeed the domain moves from the defined to the running domains pools.</info>
       <return type='int' info='0 in case of success, -1 in case of error'/>
       <return type='int' info='0 in case of success and -1 in case of failure.'/>
       <arg name='domain' type='virDomainPtr' info='a domain object'/>
     </function>
+    <function name='virDomainDetachDevice' file='libvirt' module='libvirt'>
+      <info>Destroy a virtual device attachment to backend.</info>
+      <return type='int' info='0 in case of success, -1 in case of failure.'/>
+      <arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
+      <arg name='xml' type='char *' info='pointer to XML description of one device'/>
+    </function>
     <function name='virDomainFree' file='libvirt' module='libvirt'>
       <info>Free the domain object. The running instance is kept alive. The data structure is freed and should not be used thereafter.</info>
       <return type='int' info='0 in case of success and -1 in case of failure.'/>
index b46d24e91fa504e38e6cf6b5fbbd1731a551146b..47aee2391f0df83809d91ada8aeb9704f0569c5e 100644 (file)
     <reference name='virDefaultErrorFunc' href='html/libvirt-virterror.html#virDefaultErrorFunc'/>
     <reference name='virDeviceMode' href='html/libvirt-libvirt.html#virDeviceMode'/>
     <reference name='virDomain' href='html/libvirt-libvirt.html#virDomain'/>
+    <reference name='virDomainAttachDevice' href='html/libvirt-libvirt.html#virDomainAttachDevice'/>
+    <reference name='virDomainCoreDump' href='html/libvirt-libvirt.html#virDomainCoreDump'/>
     <reference name='virDomainCreate' href='html/libvirt-libvirt.html#virDomainCreate'/>
     <reference name='virDomainCreateFlags' href='html/libvirt-libvirt.html#virDomainCreateFlags'/>
     <reference name='virDomainCreateLinux' href='html/libvirt-libvirt.html#virDomainCreateLinux'/>
     <reference name='virDomainDefineXML' href='html/libvirt-libvirt.html#virDomainDefineXML'/>
     <reference name='virDomainDestroy' href='html/libvirt-libvirt.html#virDomainDestroy'/>
+    <reference name='virDomainDetachDevice' href='html/libvirt-libvirt.html#virDomainDetachDevice'/>
     <reference name='virDomainFree' href='html/libvirt-libvirt.html#virDomainFree'/>
     <reference name='virDomainGetID' href='html/libvirt-libvirt.html#virDomainGetID'/>
     <reference name='virDomainGetInfo' href='html/libvirt-libvirt.html#virDomainGetInfo'/>
       <ref name='virDefaultErrorFunc'/>
       <ref name='virDeviceMode'/>
       <ref name='virDomain'/>
+      <ref name='virDomainAttachDevice'/>
+      <ref name='virDomainCoreDump'/>
       <ref name='virDomainCreate'/>
       <ref name='virDomainCreateFlags'/>
       <ref name='virDomainCreateLinux'/>
       <ref name='virDomainDefineXML'/>
       <ref name='virDomainDestroy'/>
+      <ref name='virDomainDetachDevice'/>
       <ref name='virDomainFree'/>
       <ref name='virDomainGetID'/>
       <ref name='virDomainGetInfo'/>
       <ref name='virDomainGetInfo'/>
     </type>
     <type name='virDomainPtr'>
+      <ref name='virDomainAttachDevice'/>
+      <ref name='virDomainCoreDump'/>
       <ref name='virDomainCreate'/>
       <ref name='virDomainDestroy'/>
+      <ref name='virDomainDetachDevice'/>
       <ref name='virDomainFree'/>
       <ref name='virDomainGetID'/>
       <ref name='virDomainGetInfo'/>
       <ref name='virConnectPtr'/>
       <ref name='virDeviceMode'/>
       <ref name='virDomain'/>
+      <ref name='virDomainAttachDevice'/>
+      <ref name='virDomainCoreDump'/>
       <ref name='virDomainCreate'/>
       <ref name='virDomainCreateFlags'/>
       <ref name='virDomainCreateLinux'/>
       <ref name='virDomainDefineXML'/>
       <ref name='virDomainDestroy'/>
+      <ref name='virDomainDetachDevice'/>
       <ref name='virDomainFree'/>
       <ref name='virDomainGetID'/>
       <ref name='virDomainGetInfo'/>
           <ref name='virConnCopyLastError'/>
           <ref name='virCopyLastError'/>
         </word>
+        <word name='Create'>
+          <ref name='virDomainAttachDevice'/>
+        </word>
       </letter>
       <letter name='D'>
+        <word name='Daemon'>
+          <ref name='virDomainCoreDump'/>
+        </word>
         <word name='Default'>
           <ref name='virDefaultErrorFunc'/>
         </word>
         <word name='Destroy'>
           <ref name='virDomainDestroy'/>
+          <ref name='virDomainDetachDevice'/>
         </word>
         <word name='Domain0'>
           <ref name='virDomainGetMaxMemory'/>
           <ref name='_virNodeInfo'/>
         </word>
         <word name='Note'>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainGetInfo'/>
           <ref name='virDomainReboot'/>
           <ref name='virDomainSetVcpus'/>
           <ref name='virConnectGetVersion'/>
           <ref name='virConnectOpen'/>
           <ref name='virConnectOpenReadOnly'/>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainCreateLinux'/>
           <ref name='virDomainDestroy'/>
           <ref name='virDomainPinVcpu'/>
       </letter>
       <letter name='X'>
         <word name='XML'>
+          <ref name='virDomainAttachDevice'/>
           <ref name='virDomainCreateLinux'/>
           <ref name='virDomainDefineXML'/>
+          <ref name='virDomainDetachDevice'/>
           <ref name='virDomainGetXMLDesc'/>
         </word>
         <word name='Xen'>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainGetVcpus'/>
           <ref name='virDomainPinVcpu'/>
           <ref name='virGetVersion'/>
           <ref name='virDomainSetMaxMemory'/>
           <ref name='virDomainSetMemory'/>
         </word>
+        <word name='analysis'>
+          <ref name='virDomainCoreDump'/>
+        </word>
         <word name='anymore'>
           <ref name='virDomainSave'/>
         </word>
           <ref name='virDomainGetVcpus'/>
           <ref name='virGetVersion'/>
         </word>
+        <word name='attachment'>
+          <ref name='virDomainAttachDevice'/>
+          <ref name='virDomainDetachDevice'/>
+        </word>
         <word name='available'>
           <ref name='_virError'/>
           <ref name='virConnectOpenReadOnly'/>
           <ref name='virDomainDestroy'/>
           <ref name='virGetVersion'/>
         </word>
+        <word name='backend'>
+          <ref name='virDomainAttachDevice'/>
+          <ref name='virDomainDetachDevice'/>
+        </word>
         <word name='based'>
           <ref name='virDomainCreateLinux'/>
           <ref name='virDomainLookupByID'/>
         </word>
         <word name='core'>
           <ref name='_virNodeInfo'/>
+          <ref name='virDomainCoreDump'/>
         </word>
         <word name='corresponding'>
           <ref name='virDomainPinVcpu'/>
         <word name='currently'>
           <ref name='virConnectOpen'/>
           <ref name='virConnectOpenReadOnly'/>
+          <ref name='virDomainCoreDump'/>
         </word>
       </letter>
       <letter name='d'>
           <ref name='virDomainGetVcpus'/>
         </word>
         <word name='description'>
+          <ref name='virDomainAttachDevice'/>
           <ref name='virDomainCreateLinux'/>
           <ref name='virDomainDefineXML'/>
+          <ref name='virDomainDetachDevice'/>
           <ref name='virDomainGetXMLDesc'/>
         </word>
         <word name='device'>
           <ref name='_virDomainKernel'/>
+          <ref name='virDomainAttachDevice'/>
+          <ref name='virDomainDetachDevice'/>
         </word>
         <word name='disk'>
           <ref name='virDomainRestore'/>
         <word name='driver'>
           <ref name='virGetVersion'/>
         </word>
+        <word name='dump'>
+          <ref name='virDomainCoreDump'/>
+        </word>
       </letter>
       <letter name='e'>
         <word name='each'>
         </word>
         <word name='extra'>
           <ref name='_virError'/>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainReboot'/>
         </word>
         <word name='extract'>
           <ref name='virDomainSetVcpus'/>
         </word>
         <word name='failure'>
+          <ref name='virDomainAttachDevice'/>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainCreateLinux'/>
           <ref name='virDomainDestroy'/>
+          <ref name='virDomainDetachDevice'/>
           <ref name='virDomainFree'/>
           <ref name='virDomainGetInfo'/>
           <ref name='virDomainGetVcpus'/>
           <ref name='virNodeGetInfo'/>
         </word>
         <word name='file'>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainSave'/>
         </word>
         <word name='filename'>
           <ref name='virConnectOpenReadOnly'/>
         </word>
         <word name='flags'>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainGetXMLDesc'/>
           <ref name='virDomainReboot'/>
         </word>
           <ref name='_virNodeInfo'/>
           <ref name='virConnGetLastError'/>
           <ref name='virConnectGetVersion'/>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainDefineXML'/>
           <ref name='virDomainGetID'/>
           <ref name='virDomainGetName'/>
           <ref name='virSetErrorFunc'/>
         </word>
         <word name='given'>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainDestroy'/>
           <ref name='virDomainLookupByName'/>
           <ref name='virDomainLookupByUUID'/>
         </word>
         <word name='host'>
           <ref name='VIR_NODEINFO_MAXCPUS'/>
+          <ref name='virDomainCoreDump'/>
         </word>
         <word name='how'>
           <ref name='_virError'/>
         <word name='interaction'>
           <ref name='virConnectClose'/>
         </word>
+        <word name='interpreted'>
+          <ref name='virDomainCoreDump'/>
+        </word>
         <word name='into'>
           <ref name='VIR_COPY_CPUMAP'/>
         </word>
           <ref name='_virError'/>
         </word>
         <word name='method'>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainRestore'/>
           <ref name='virDomainSave'/>
         </word>
     </chunk>
     <chunk name='chunk3'>
       <letter name='o'>
-        <word name='object'>
-          <ref name='virDomainCreateLinux'/>
-          <ref name='virDomainDestroy'/>
-          <ref name='virDomainFree'/>
-          <ref name='virDomainGetID'/>
-          <ref name='virDomainGetInfo'/>
-          <ref name='virDomainGetMaxMemory'/>
-          <ref name='virDomainGetName'/>
-          <ref name='virDomainGetOSType'/>
-          <ref name='virDomainGetUUID'/>
-          <ref name='virDomainGetUUIDString'/>
-          <ref name='virDomainGetVcpus'/>
-          <ref name='virDomainGetXMLDesc'/>
-          <ref name='virDomainLookupByID'/>
-          <ref name='virDomainLookupByName'/>
-          <ref name='virDomainLookupByUUID'/>
-          <ref name='virDomainLookupByUUIDString'/>
-          <ref name='virDomainPinVcpu'/>
-          <ref name='virDomainReboot'/>
-          <ref name='virDomainResume'/>
-          <ref name='virDomainSave'/>
-          <ref name='virDomainSetMaxMemory'/>
-          <ref name='virDomainSetMemory'/>
-          <ref name='virDomainSetVcpus'/>
-          <ref name='virDomainShutdown'/>
-          <ref name='virDomainSuspend'/>
-        </word>
         <word name='occured'>
           <ref name='virConnGetLastError'/>
           <ref name='virGetLastError'/>
         <word name='one'>
           <ref name='_virDomainInfo'/>
           <ref name='maplen'/>
+          <ref name='virDomainAttachDevice'/>
           <ref name='virDomainCreateLinux'/>
+          <ref name='virDomainDetachDevice'/>
           <ref name='virDomainGetVcpus'/>
         </word>
         <word name='only'>
           <ref name='virConnectOpenReadOnly'/>
         </word>
         <word name='path'>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainRestore'/>
           <ref name='virDomainSave'/>
         </word>
           <ref name='virConnectGetVersion'/>
           <ref name='virGetVersion'/>
         </word>
+        <word name='remote'>
+          <ref name='virDomainCoreDump'/>
+        </word>
         <word name='reporting'>
           <ref name='virDefaultErrorFunc'/>
         </word>
         </word>
         <word name='success'>
           <ref name='virConnectClose'/>
+          <ref name='virDomainAttachDevice'/>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainCreate'/>
           <ref name='virDomainDestroy'/>
+          <ref name='virDomainDetachDevice'/>
           <ref name='virDomainFree'/>
           <ref name='virDomainGetInfo'/>
           <ref name='virDomainGetUUID'/>
           <ref name='virConnCopyLastError'/>
           <ref name='virConnGetLastError'/>
           <ref name='virConnResetLastError'/>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainGetInfo'/>
           <ref name='virDomainGetName'/>
           <ref name='virDomainPinVcpu'/>
         <word name='unused'>
           <ref name='virConnectOpen'/>
           <ref name='virConnectOpenReadOnly'/>
+          <ref name='virDomainCoreDump'/>
         </word>
         <word name='usable'>
           <ref name='VIR_CPU_USABLE'/>
           <ref name='_virDomainInfo'/>
           <ref name='_virVcpuInfo'/>
           <ref name='vcpu'/>
+          <ref name='virDomainAttachDevice'/>
+          <ref name='virDomainDetachDevice'/>
           <ref name='virDomainGetVcpus'/>
           <ref name='virDomainPinVcpu'/>
           <ref name='virDomainSetVcpus'/>
           <ref name='virConnCopyLastError'/>
           <ref name='virConnSetErrorFunc'/>
           <ref name='virCopyLastError'/>
+          <ref name='virDomainCoreDump'/>
           <ref name='virDomainGetName'/>
           <ref name='virDomainRestore'/>
           <ref name='virDomainSave'/>
index dabe35ceb1fc4d52ac81a3ccea0b5958b1044311..3d1e566b6856091926363f9e19cf8e17b348ec52 100644 (file)
@@ -264,6 +264,13 @@ int                        virDomainSave           (virDomainPtr domain,
 int                    virDomainRestore        (virConnectPtr conn,
                                                 const char *from);
 
+/*
+ * Domain core dump
+ */
+int                    virDomainCoreDump       (virDomainPtr domain,
+                                                const char *to,
+                                                int flags);
+
 /*
  * Domain runtime informations
  */
index 92f1feb906b6479c2677bbabc25dec0e3f485ec8..aa0e93d31521ad2eeda2333d5921c65b6c62ccd2 100644 (file)
@@ -264,6 +264,13 @@ int                        virDomainSave           (virDomainPtr domain,
 int                    virDomainRestore        (virConnectPtr conn,
                                                 const char *from);
 
+/*
+ * Domain core dump
+ */
+int                    virDomainCoreDump       (virDomainPtr domain,
+                                                const char *to,
+                                                int flags);
+
 /*
  * Domain runtime informations
  */
index 329240631a06c654e9a27a8ead0fc2742c3c305d..9027ff985bee9df055a7cafe2ab52ee5aca3aa09 100644 (file)
@@ -105,6 +105,10 @@ typedef int
 typedef int
        (*virDrvDomainRestore)          (virConnectPtr conn,
                                         const char *from);
+typedef int
+       (*virDrvDomainCoreDump)         (virDomainPtr domain,
+                                        const char *to,
+                                        int flags);
 typedef char *
        (*virDrvDomainDumpXML)          (virDomainPtr dom,
                                         int flags);
@@ -182,6 +186,7 @@ struct _virDriver {
        virDrvDomainGetInfo             domainGetInfo;
        virDrvDomainSave                domainSave;
        virDrvDomainRestore             domainRestore;
+       virDrvDomainCoreDump            domainCoreDump;
        virDrvDomainSetVcpus            domainSetVcpus;
        virDrvDomainPinVcpu             domainPinVcpu;
        virDrvDomainGetVcpus            domainGetVcpus;
index 9b4cd86dc70c80feffcc97d93bb3a7a9d494b9ee..5f0489ad222e979f236b5332043632fbafa3c2fe 100644 (file)
@@ -1025,6 +1025,72 @@ virDomainRestore(virConnectPtr conn, const char *from)
     return (-1);
 }
 
+/**
+ * virDomainCoreDump:
+ * @domain: a domain object
+ * @to: path for the core file
+ * @flags: extra flags, currently unused
+ *
+ * This method will dump the core of a domain on a given file for analysis.
+ * Note that for remote Xen Daemon the file path will be interpreted in
+ * the remote host.
+ *
+ * Returns 0 in case of success and -1 in case of failure.
+ */
+int
+virDomainCoreDump(virDomainPtr domain, const char *to, int flags)
+{
+    int ret, i;
+    char filepath[4096];
+    virConnectPtr conn;
+
+    if (!VIR_IS_CONNECTED_DOMAIN(domain)) {
+        virLibDomainError(domain, VIR_ERR_INVALID_DOMAIN, __FUNCTION__);
+        return (-1);
+    }
+    if (domain->conn->flags & VIR_CONNECT_RO) {
+        virLibDomainError(domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
+       return (-1);
+    }
+    conn = domain->conn;
+    if (to == NULL) {
+        virLibDomainError(domain, VIR_ERR_INVALID_ARG, __FUNCTION__);
+        return (-1);
+    }
+
+    /*
+     * We must absolutize the file path as the save is done out of process
+     * TODO: check for URI when libxml2 is linked in.
+     */
+    if (to[0] != '/') {
+        unsigned int len, t;
+
+        t = strlen(to);
+        if (getcwd(filepath, sizeof(filepath) - (t + 3)) == NULL)
+            return (-1);
+        len = strlen(filepath);
+        /* that should be covered by getcwd() semantic, but be 100% sure */
+        if (len > sizeof(filepath) - (t + 3))
+            return (-1);
+        filepath[len] = '/';
+        strcpy(&filepath[len + 1], to);
+        to = &filepath[0];
+
+    }
+
+    /* Go though the driver registered entry points */
+    for (i = 0;i < conn->nb_drivers;i++) {
+       if ((conn->drivers[i] != NULL) &&
+           (conn->drivers[i]->domainCoreDump != NULL)) {
+           ret = conn->drivers[i]->domainCoreDump(domain, to, flags);
+           if (ret == 0)
+               return(0);
+       }
+    }
+    virLibConnError(conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+    return (-1);
+}
+
 /**
  * virDomainShutdown:
  * @domain: a domain object
index ce8d96b60452b09a0c4ac8fe0581dd4a38ac06b0..aade2308c12073520f46923d808d41612b7ada7c 100644 (file)
@@ -74,6 +74,7 @@ static virDriver xenProxyDriver = {
     xenProxyDomainGetInfo, /* domainGetInfo */
     NULL, /* domainSave */
     NULL, /* domainRestore */
+    NULL, /* domainCoreDump */
     NULL, /* domainSetVcpus */
     NULL, /* domainPinVcpu */
     NULL, /* domainGetVcpus */
index 51ba18a572ececc2602ae7b9d1ae4b785c822039..c69f1ce54afba60047290cf2dc664b3442fa79cc 100644 (file)
@@ -54,6 +54,7 @@ static virDriver testDriver = {
   testGetDomainInfo, /* domainGetInfo */
   NULL, /* domainSave */
   NULL, /* domainRestore */
+  NULL, /* domainCoreDump */
   testSetVcpus, /* domainSetVcpus */
   NULL, /* domainPinVcpu */
   NULL, /* domainGetVcpus */
index 03ea811d337526924d7a21c82f2372afa3a5aafa..30b5c6b1de5df3a185f53a49e9d0b14586cca4a7 100644 (file)
@@ -804,6 +804,51 @@ cmdRestore(vshControl * ctl, vshCmd * cmd)
     return ret;
 }
 
+/*
+ * "dump" command
+ */
+static vshCmdInfo info_dump[] = {
+    {"syntax", "dump <domain> <file>"},
+    {"help", gettext_noop("dump the core of a domain to a file for analysis")},
+    {"desc", gettext_noop("Core dump a domain.")},
+    {NULL, NULL}
+};
+
+static vshCmdOptDef opts_dump[] = {
+    {"domain", VSH_OT_DATA, VSH_OFLAG_REQ, gettext_noop("domain name, id or uuid")},
+    {"file", VSH_OT_DATA, VSH_OFLAG_REQ, gettext_noop("where to dump the core")},
+    {NULL, 0, 0, NULL}
+};
+
+static int
+cmdDump(vshControl * ctl, vshCmd * cmd)
+{
+    virDomainPtr dom;
+    char *name;
+    char *to;
+    int ret = TRUE;
+
+    if (!vshConnectionUsability(ctl, ctl->conn, TRUE))
+        return FALSE;
+
+    if (!(to = vshCommandOptString(cmd, "file", NULL)))
+        return FALSE;
+
+    if (!(dom = vshCommandOptDomain(ctl, cmd, "domain", &name)))
+        return FALSE;
+
+    if (virDomainCoreDump(dom, to, 0) == 0) {
+        vshPrint(ctl, _("Domain %s dumpd to %s\n"), name, to);
+    } else {
+        vshError(ctl, FALSE, _("Failed to core dump domain %s to %s"),
+                 name, to);
+        ret = FALSE;
+    }
+
+    virDomainFree(dom);
+    return ret;
+}
+
 /*
  * "resume" command
  */
@@ -1623,6 +1668,7 @@ static vshCmdDef commands[] = {
     {"restore", cmdRestore, opts_restore, info_restore},
     {"resume", cmdResume, opts_resume, info_resume},
     {"save", cmdSave, opts_save, info_save},
+    {"dump", cmdDump, opts_dump, info_dump},
     {"shutdown", cmdShutdown, opts_shutdown, info_shutdown},
     {"setmem", cmdSetmem, opts_setmem, info_setmem},
     {"setmaxmem", cmdSetmaxmem, opts_setmaxmem, info_setmaxmem},
index abbf75c31415928e6bb8a69af533ba6828e8b94a..f1b9b334e5786c0368cbd306264e4f7672639b72 100644 (file)
@@ -449,6 +449,7 @@ static virDriver xenHypervisorDriver = {
     xenHypervisorGetDomainInfo, /* domainGetInfo */
     NULL, /* domainSave */
     NULL, /* domainRestore */
+    NULL, /* domainCoreDump */
     xenHypervisorSetVcpus, /* domainSetVcpus */
     xenHypervisorPinVcpu, /* domainPinVcpu */
     xenHypervisorGetVcpus, /* domainGetVcpus */
index 9e73faaed634a4d6f3687f29730d771930bfe137..2f1fb5bf4953bda14d61d4303daeff24ce5c72f9 100644 (file)
@@ -49,6 +49,8 @@ static virDomainPtr xenDaemonCreateLinux(virConnectPtr conn,
                                         unsigned int flags);
 static int xenDaemonAttachDevice(virDomainPtr domain, char *xml);
 static int xenDaemonDetachDevice(virDomainPtr domain, char *xml);
+static int xenDaemonDomainCoreDump(virDomainPtr domain, const char *filename,
+                                   int flags);
 #endif /* PROXY */
 
 #ifndef PROXY
@@ -86,6 +88,7 @@ static virDriver xenDaemonDriver = {
     xenDaemonDomainGetInfo, /* domainGetInfo */
     xenDaemonDomainSave, /* domainSave */
     xenDaemonDomainRestore, /* domainRestore */
+    xenDaemonDomainCoreDump, /* domainCoreDump */
     xenDaemonDomainSetVcpus, /* domainSetVcpus */
     xenDaemonDomainPinVcpu, /* domainPinVcpu */
     xenDaemonDomainGetVcpus, /* domainGetVcpus */
@@ -2206,6 +2209,34 @@ xenDaemonDomainSave(virDomainPtr domain, const char *filename)
     return xend_op(domain->conn, domain->name, "op", "save", "file", filename, NULL);
 }
 
+/**
+ * xenDaemonDomainCoreDump:
+ * @domain: pointer to the Domain block
+ * @filename: path for the output file
+ * @flags: extra flags, currently unused
+ *
+ * This method will dump the core of a domain on a given file for analysis.
+ * Note that for remote Xen Daemon the file path will be interpreted in
+ * the remote host.
+ *
+ * Returns 0 in case of success, -1 in case of error.
+ */
+static int
+xenDaemonDomainCoreDump(virDomainPtr domain, const char *filename,
+                        int flags ATTRIBUTE_UNUSED)
+{
+    if ((domain == NULL) || (domain->conn == NULL) || (domain->name == NULL) ||
+        (filename == NULL)) {
+        virXendError((domain ? domain->conn : NULL), VIR_ERR_INVALID_ARG,
+                    __FUNCTION__);
+        return(-1);
+    }
+    if (domain->handle < 0)
+        return(-1);
+    return xend_op(domain->conn, domain->name, "op", "dump", "file", filename,
+                   "live", "1", "crash", "0", NULL);
+}
+
 /**
  * xenDaemonDomainRestore:
  * @conn: pointer to the Xem Daemon block
index c1910f923b1b1f80c48d304008b0424e05db0fbb..530c6f8ec7e115d1461c61803dabac673f566465 100644 (file)
@@ -84,6 +84,7 @@ static virDriver xenXMDriver = {
     xenXMDomainGetInfo, /* domainGetInfo */
     NULL, /* domainSave */
     NULL, /* domainRestore */
+    NULL, /* domainCoreDump */
     xenXMDomainSetVcpus, /* domainSetVcpus */
     NULL, /* domainPinVcpu */
     NULL, /* domainGetVcpus */
index 36f615a1841d63df13c161e8b333d39532b36b5c..70ef0c770f1d0bf98e5beda9060a5670803d1f35 100644 (file)
@@ -68,6 +68,7 @@ static virDriver xenStoreDriver = {
     xenStoreGetDomainInfo, /* domainGetInfo */
     NULL, /* domainSave */
     NULL, /* domainRestore */
+    NULL, /* domainCoreDump */
     NULL, /* domainSetVcpus */
     NULL, /* domainPinVcpu */
     NULL, /* domainGetVcpus */