<feed xmlns='http://www.w3.org/2005/Atom'>
<title>libvirt-python-v6.git, branch v0.8.2</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/'/>
<entry>
<title>Add missing parameter in python Disk IO error callback</title>
<updated>2010-06-25T13:39:37+00:00</updated>
<author>
<name>Daniel P. Berrange</name>
<email>berrange@redhat.com</email>
</author>
<published>2010-06-23T14:05:52+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/commit/?id=bc184d51ae6e5e0ef5dab09963b75b86a7c05940'/>
<id>bc184d51ae6e5e0ef5dab09963b75b86a7c05940</id>
<content type='text'>
The IO error callback was forgetting to pass the action
parameter, causing a stack trace when IO errors arrive

* python/libvirt-override-virConnect.py: Add missing action
  parameter in IO error callback
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The IO error callback was forgetting to pass the action
parameter, causing a stack trace when IO errors arrive

* python/libvirt-override-virConnect.py: Add missing action
  parameter in IO error callback
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix description of virStorageVolGetInfo()</title>
<updated>2010-06-18T10:57:54+00:00</updated>
<author>
<name>Philipp Hahn</name>
<email>hahn@univention.de</email>
</author>
<published>2010-06-15T09:44:13+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/commit/?id=c20044cdbffb24f8ee7ed5fa88679eadb70d573b'/>
<id>c20044cdbffb24f8ee7ed5fa88679eadb70d573b</id>
<content type='text'>
Probably a copy-paste-bug in python/libvirt-override-api.xml:
virStorageVolGetInfo() extracts information about a "storage volume",
not the "storage pool" as virStoragePoolGetInfo() does.

Signed-off-by: Philipp Hahn &lt;hahn@univention.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Probably a copy-paste-bug in python/libvirt-override-api.xml:
virStorageVolGetInfo() extracts information about a "storage volume",
not the "storage pool" as virStoragePoolGetInfo() does.

Signed-off-by: Philipp Hahn &lt;hahn@univention.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>maint: simplify some ignore files</title>
<updated>2010-06-15T13:31:10+00:00</updated>
<author>
<name>Eric Blake</name>
<email>eblake@redhat.com</email>
</author>
<published>2010-06-09T19:52:36+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/commit/?id=f4b8284f4746241962fd7adcb5e95fe58f899f21'/>
<id>f4b8284f4746241962fd7adcb5e95fe58f899f21</id>
<content type='text'>
* .hgignore: Delete, no longer used.
* examples/python/.gitignore: Delete, covered globally.
* include/.gitignore: Likewise.
* python/tests/.gitignore: Likewise.
* docs/schemas/.gitignore: Likewise.
* tests/xml2sexprdata/.gitignore: Likewise.
* tests/sexpr2xmldata/.gitignore: Likewise.
* tests/confdata/.gitignore: Likewise.
* tests/xencapsdata/.gitignore: Likewise.
* tests/xmconfigdata/.gitignore: Likewise.
* tests/xml2sexprdata/.gitignore: Likewise.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* .hgignore: Delete, no longer used.
* examples/python/.gitignore: Delete, covered globally.
* include/.gitignore: Likewise.
* python/tests/.gitignore: Likewise.
* docs/schemas/.gitignore: Likewise.
* tests/xml2sexprdata/.gitignore: Likewise.
* tests/sexpr2xmldata/.gitignore: Likewise.
* tests/confdata/.gitignore: Likewise.
* tests/xencapsdata/.gitignore: Likewise.
* tests/xmconfigdata/.gitignore: Likewise.
* tests/xml2sexprdata/.gitignore: Likewise.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix up the python bindings for snapshotting.</title>
<updated>2010-05-20T17:49:38+00:00</updated>
<author>
<name>Chris Lalancette</name>
<email>clalance@redhat.com</email>
</author>
<published>2010-05-19T13:02:30+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/commit/?id=a4079e7ec63c7ecdc5fcd23b33831c58e3679d46'/>
<id>a4079e7ec63c7ecdc5fcd23b33831c58e3679d46</id>
<content type='text'>
This involved a few fixes.  To start with,
an virDomainSnapshot object is really tied to a
domain, not a connection, so we have to generate
a slightly different object so that we can get
at self._dom for the object.

Next, we had to "dummy" up an override piece of
XML with a bogus argument that the function doesn't
actually take.  That's so that the generator places
virDomainRevertToSnapshot underneath the correct
class (namely, the virDomain class).

Finally, we had to hand-implement the
virDomainRevertToSnapshot implementation, ignoring the
bogus pointer we are being passed.

With all of this in place, I was able to successfully
take a snapshot and revert to it using only the
Python bindings.

Signed-off-by: Chris Lalancette &lt;clalance@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This involved a few fixes.  To start with,
an virDomainSnapshot object is really tied to a
domain, not a connection, so we have to generate
a slightly different object so that we can get
at self._dom for the object.

Next, we had to "dummy" up an override piece of
XML with a bogus argument that the function doesn't
actually take.  That's so that the generator places
virDomainRevertToSnapshot underneath the correct
class (namely, the virDomain class).

Finally, we had to hand-implement the
virDomainRevertToSnapshot implementation, ignoring the
bogus pointer we are being passed.

With all of this in place, I was able to successfully
take a snapshot and revert to it using only the
Python bindings.

Signed-off-by: Chris Lalancette &lt;clalance@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>python: don't ignore virInitialize failure in module initialization</title>
<updated>2010-05-18T17:23:33+00:00</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2010-05-18T11:46:27+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/commit/?id=a6daa0108e072db02855e4203b7cd6066ddc2b39'/>
<id>a6daa0108e072db02855e4203b7cd6066ddc2b39</id>
<content type='text'>
* python/libvirt-override.c (initlibvirtmod): Upon virInitialize
failure, skip the Py_InitModule call.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* python/libvirt-override.c (initlibvirtmod): Upon virInitialize
failure, skip the Py_InitModule call.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for another explicit IO error event</title>
<updated>2010-04-30T14:52:59+00:00</updated>
<author>
<name>Daniel P. Berrange</name>
<email>berrange@redhat.com</email>
</author>
<published>2010-03-18T19:37:44+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/commit/?id=99d0d2371deb18d969fdbf7fb7805540b7c4517e'/>
<id>99d0d2371deb18d969fdbf7fb7805540b7c4517e</id>
<content type='text'>
This introduces a new event type

   VIR_DOMAIN_EVENT_ID_IO_ERROR_REASON

This event is the same as the previous VIR_DOMAIN_ID_IO_ERROR
event, but also includes a string describing the cause of
the event.

Thus there is a new callback definition for this event type

typedef void (*virConnectDomainEventIOErrorReasonCallback)(virConnectPtr conn,
                                                           virDomainPtr dom,
                                                           const char *srcPath,
                                                           const char *devAlias,
                                                           int action,
                                                           const char *reason,
                                                           void *opaque);

This is currently wired up to the QEMU block IO error events

* daemon/remote.c: Dispatch IO error events to client
* examples/domain-events/events-c/event-test.c: Watch for
  IO error events
* include/libvirt/libvirt.h.in: Define new IO error event ID
  and callback signature
* src/conf/domain_event.c, src/conf/domain_event.h,
  src/libvirt_private.syms: Extend API to handle IO error events
* src/qemu/qemu_driver.c: Connect to the QEMU monitor event
  for block IO errors and emit a libvirt IO error event
* src/remote/remote_driver.c: Receive and dispatch IO error
  events to application
* src/remote/remote_protocol.x: Wire protocol definition for
  IO error events
* src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h,
  src/qemu/qemu_monitor_json.c: Watch for BLOCK_IO_ERROR event
  from QEMU monitor
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This introduces a new event type

   VIR_DOMAIN_EVENT_ID_IO_ERROR_REASON

This event is the same as the previous VIR_DOMAIN_ID_IO_ERROR
event, but also includes a string describing the cause of
the event.

Thus there is a new callback definition for this event type

typedef void (*virConnectDomainEventIOErrorReasonCallback)(virConnectPtr conn,
                                                           virDomainPtr dom,
                                                           const char *srcPath,
                                                           const char *devAlias,
                                                           int action,
                                                           const char *reason,
                                                           void *opaque);

This is currently wired up to the QEMU block IO error events

* daemon/remote.c: Dispatch IO error events to client
* examples/domain-events/events-c/event-test.c: Watch for
  IO error events
* include/libvirt/libvirt.h.in: Define new IO error event ID
  and callback signature
* src/conf/domain_event.c, src/conf/domain_event.h,
  src/libvirt_private.syms: Extend API to handle IO error events
* src/qemu/qemu_driver.c: Connect to the QEMU monitor event
  for block IO errors and emit a libvirt IO error event
* src/remote/remote_driver.c: Receive and dispatch IO error
  events to application
* src/remote/remote_protocol.x: Wire protocol definition for
  IO error events
* src/qemu/qemu_monitor.c, src/qemu/qemu_monitor.h,
  src/qemu/qemu_monitor_json.c: Watch for BLOCK_IO_ERROR event
  from QEMU monitor
</pre>
</div>
</content>
</entry>
<entry>
<title>Implement python binding for virDomainGetBlockInfo</title>
<updated>2010-04-29T16:21:32+00:00</updated>
<author>
<name>Daniel P. Berrange</name>
<email>berrange@redhat.com</email>
</author>
<published>2010-04-28T12:42:13+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/commit/?id=5c99e3b35c5546f46e6c7666fe506bdb29ab738e'/>
<id>5c99e3b35c5546f46e6c7666fe506bdb29ab738e</id>
<content type='text'>
This binds the virDomainGetBlockInfo API to python's blockInfo
method on the domain object

&gt;&gt;&gt; c = libvirt.openReadOnly('qemu:///session')
&gt;&gt;&gt; d = c.lookupByName('demo')
&gt;&gt;&gt; f = d.blockInfo("/dev/loop0", 0)
&gt;&gt;&gt; print f
[1048576000L, 104857600L, 104857600L]

* python/libvirt-override-api.xml: Define override signature
* python/generator.py: Skip C impl generator for virDomainGetBlockInfo
* python/libvirt-override.c: Manual impl of virDomainGetBlockInfo
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This binds the virDomainGetBlockInfo API to python's blockInfo
method on the domain object

&gt;&gt;&gt; c = libvirt.openReadOnly('qemu:///session')
&gt;&gt;&gt; d = c.lookupByName('demo')
&gt;&gt;&gt; f = d.blockInfo("/dev/loop0", 0)
&gt;&gt;&gt; print f
[1048576000L, 104857600L, 104857600L]

* python/libvirt-override-api.xml: Define override signature
* python/generator.py: Skip C impl generator for virDomainGetBlockInfo
* python/libvirt-override.c: Manual impl of virDomainGetBlockInfo
</pre>
</div>
</content>
</entry>
<entry>
<title>nwfilter: python bindings for nwfilter</title>
<updated>2010-04-29T10:46:01+00:00</updated>
<author>
<name>Stefan Berger</name>
<email>stefanb@us.ibm.com</email>
</author>
<published>2010-04-29T10:46:01+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/commit/?id=626e52010b6151cbae01e91aa0b94dae8490537c'/>
<id>626e52010b6151cbae01e91aa0b94dae8490537c</id>
<content type='text'>
I have primarily followed the pattern of the 'secret' driver to provide
support for the missing python bindings for the network filter API.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I have primarily followed the pattern of the 'secret' driver to provide
support for the missing python bindings for the network filter API.
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't ship generated python/libvirt.? files.</title>
<updated>2010-04-20T14:13:06+00:00</updated>
<author>
<name>Philipp Hahn</name>
<email>hahn@univention.de</email>
</author>
<published>2010-04-15T10:49:33+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/commit/?id=e4affdfbc19a6bd2778acf0e64a947cecd7eea83'/>
<id>e4affdfbc19a6bd2778acf0e64a947cecd7eea83</id>
<content type='text'>
libvirt.c and libvirt.h are auto-generated files. Mentioning their names
in *_SOURCES includes them in the distribution. During an out-of-tree
build these shipped files are included instead of the auto-generated
version, potentially breaking the build (as it happend in 0.8.0, because
the shipped libvirt.h was missing the declaration for
'libvirt_virDomainUpdateDeviceFlags')

Use the nodist_*_SOURCES automake variable instead.

Signed-off-by: Philipp Hahn &lt;hahn@univention.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
libvirt.c and libvirt.h are auto-generated files. Mentioning their names
in *_SOURCES includes them in the distribution. During an out-of-tree
build these shipped files are included instead of the auto-generated
version, potentially breaking the build (as it happend in 0.8.0, because
the shipped libvirt.h was missing the declaration for
'libvirt_virDomainUpdateDeviceFlags')

Use the nodist_*_SOURCES automake variable instead.

Signed-off-by: Philipp Hahn &lt;hahn@univention.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixup python binding for virDomainSnapshot APIs</title>
<updated>2010-04-20T09:49:27+00:00</updated>
<author>
<name>Daniel P. Berrange</name>
<email>berrange@redhat.com</email>
</author>
<published>2010-04-20T09:49:27+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/berrange/public_git/libvirt-python-v6.git/commit/?id=37f24b06c0f96539f8964e0b41010f4ebe514f5f'/>
<id>37f24b06c0f96539f8964e0b41010f4ebe514f5f</id>
<content type='text'>
The generator code was totally wrong for the virDomainSnapshot
APIs, not generating the wrapper class, and giving methods the
wrong names

* generator.py: Set metadata for virDomainSnapshot type &amp; APIs
* libvirt-override-api.xml, libvirt-override.c: Hand-code the
  virDomainSnapshotListNames glue layer
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The generator code was totally wrong for the virDomainSnapshot
APIs, not generating the wrapper class, and giving methods the
wrong names

* generator.py: Set metadata for virDomainSnapshot type &amp; APIs
* libvirt-override-api.xml, libvirt-override.c: Hand-code the
  virDomainSnapshotListNames glue layer
</pre>
</div>
</content>
</entry>
</feed>
