<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libvirt-python.git, branch v1.2.6</title>
<subtitle>libvirt.org: git/libvirt-python.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/'/>
<entry>
<title>Implement new virNetworkGetDHCPLeases API</title>
<updated>2014-06-27T08:39:19+00:00</updated>
<author>
<name>Nehal J Wani</name>
<email>nehaljw.kkd1@gmail.com</email>
</author>
<published>2014-06-25T22:45:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/commit/?id=bdb64c7641ba158e5bf0344d2386959ff6b21fc4'/>
<id>bdb64c7641ba158e5bf0344d2386959ff6b21fc4</id>
<content type='text'>
This API returns a list of DHCP leases for all network interfaces
connected to the given virtual network or limited output just for one
interface if mac is specified.

Example Output:
[{'iface': 'virbr3', 'ipaddr': '192.168.150.181', 'hostname': 'ubuntu14',
    'expirytime': 1403737495L, 'prefix': 24, 'clientid': None,
    'mac': '52:54:00:e8:73:eb', 'iaid': None, 'type': 0},
 {'iface': 'virbr3', 'ipaddr': '2001:db8:ca2:2:1::bd', 'hostname': 'fedora20-test',
    'expirytime': 1403738587L, 'prefix': 64, 'clientid': '00:04:b1:d8:86:42:e1:6a:aa:cf:d5:86:94:23:6f:94:04:cd',
    'mac': '52:54:00:5b:40:98', 'iaid': '5980312', 'type': 1}]

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This API returns a list of DHCP leases for all network interfaces
connected to the given virtual network or limited output just for one
interface if mac is specified.

Example Output:
[{'iface': 'virbr3', 'ipaddr': '192.168.150.181', 'hostname': 'ubuntu14',
    'expirytime': 1403737495L, 'prefix': 24, 'clientid': None,
    'mac': '52:54:00:e8:73:eb', 'iaid': None, 'type': 0},
 {'iface': 'virbr3', 'ipaddr': '2001:db8:ca2:2:1::bd', 'hostname': 'fedora20-test',
    'expirytime': 1403738587L, 'prefix': 64, 'clientid': '00:04:b1:d8:86:42:e1:6a:aa:cf:d5:86:94:23:6f:94:04:cd',
    'mac': '52:54:00:5b:40:98', 'iaid': '5980312', 'type': 1}]

Signed-off-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>maint: document development against uninstalled libvirt</title>
<updated>2014-06-25T16:52:53+00:00</updated>
<author>
<name>Eric Blake</name>
<email>eblake@redhat.com</email>
</author>
<published>2014-06-25T16:52:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/commit/?id=724df7f11b515507dce0f91dfa5b2e37db21d3c0'/>
<id>724df7f11b515507dce0f91dfa5b2e37db21d3c0</id>
<content type='text'>
Thanks to Dan's recent work in libvirt.git, it is much easier to
develop against uninstalled libvirt.  Mention how.

* README: More details.

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Thanks to Dan's recent work in libvirt.git, it is much easier to
develop against uninstalled libvirt.  Mention how.

* README: More details.

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>build: use correct int conversion in NodeGetFreePages</title>
<updated>2014-06-25T16:45:07+00:00</updated>
<author>
<name>Nehal J Wani</name>
<email>nehaljw.kkd1@gmail.com</email>
</author>
<published>2014-06-25T16:18:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/commit/?id=e272f51b362cc008c3234c5c9862f7f51c0d01dd'/>
<id>e272f51b362cc008c3234c5c9862f7f51c0d01dd</id>
<content type='text'>
Commit c8ba859bc7 introduced a compiler warning while un-wrapping
a python object to uint in libvirt_virNodeGetFreePages.

On compiling libvirt-python against libvirt 1.2.6, we get:

libvirt-override.c: In function ‘libvirt_virNodeGetFreePages’:
libvirt-override.c:7811:9: warning: pointer targets in passing argument 2 of ‘libvirt_intUnwrap’ differ in signedness [-Wpointer-sign]
         if (libvirt_intUnwrap(tmp, &amp;pages[i]) &lt; 0)
         ^
In file included from libvirt-override.c:24:0:
typewrappers.h:169:5: note: expected ‘int *’ but argument is of type ‘unsigned int *’
 int libvirt_intUnwrap(PyObject *obj, int *val);
     ^

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Commit c8ba859bc7 introduced a compiler warning while un-wrapping
a python object to uint in libvirt_virNodeGetFreePages.

On compiling libvirt-python against libvirt 1.2.6, we get:

libvirt-override.c: In function ‘libvirt_virNodeGetFreePages’:
libvirt-override.c:7811:9: warning: pointer targets in passing argument 2 of ‘libvirt_intUnwrap’ differ in signedness [-Wpointer-sign]
         if (libvirt_intUnwrap(tmp, &amp;pages[i]) &lt; 0)
         ^
In file included from libvirt-override.c:24:0:
typewrappers.h:169:5: note: expected ‘int *’ but argument is of type ‘unsigned int *’
 int libvirt_intUnwrap(PyObject *obj, int *val);
     ^

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Implement new virNodeGetFreePages API</title>
<updated>2014-06-20T07:08:39+00:00</updated>
<author>
<name>Michal Privoznik</name>
<email>mprivozn@redhat.com</email>
</author>
<published>2014-06-20T07:08:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/commit/?id=c8ba859bc78f5e3b0ed2590f4e8a7fa6c26ac08f'/>
<id>c8ba859bc78f5e3b0ed2590f4e8a7fa6c26ac08f</id>
<content type='text'>
The API expose information on host's free pages counts. For easier
access, in python this API returns a dictionary such as:

In [4]: conn.getFreePages([2048,1*1024*1024], -1, 5)
Out[4]:
{-1: {2048: 114, 1048576: 4},
 0: {2048: 3, 1048576: 1},
 1: {2048: 100, 1048576: 1},
 2: {2048: 10, 1048576: 1},
 3: {2048: 1, 1048576: 1}}

At the top level of the returned dictionary there's a pair of &lt;NUMA
node&gt; and another dictionary that contains detailed information on
each supported page size. The information then consists of fairs of
&lt;page size&gt; and &lt;count of free pages&gt;.

Signed-off-by: Michal Privoznik &lt;mprivozn@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The API expose information on host's free pages counts. For easier
access, in python this API returns a dictionary such as:

In [4]: conn.getFreePages([2048,1*1024*1024], -1, 5)
Out[4]:
{-1: {2048: 114, 1048576: 4},
 0: {2048: 3, 1048576: 1},
 1: {2048: 100, 1048576: 1},
 2: {2048: 10, 1048576: 1},
 3: {2048: 1, 1048576: 1}}

At the top level of the returned dictionary there's a pair of &lt;NUMA
node&gt; and another dictionary that contains detailed information on
each supported page size. The information then consists of fairs of
&lt;page size&gt; and &lt;count of free pages&gt;.

Signed-off-by: Michal Privoznik &lt;mprivozn@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Correct virDomainMigrateToURI3 definition</title>
<updated>2014-06-19T13:44:00+00:00</updated>
<author>
<name>Jason Andryuk</name>
<email>andryuk@aero.org</email>
</author>
<published>2014-06-05T15:43:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/commit/?id=98a1ae0f1f6156343fa87fce01db2c5838700920'/>
<id>98a1ae0f1f6156343fa87fce01db2c5838700920</id>
<content type='text'>
dconnuri is a string, so update the definition to match.  Without this,
the generated python would fail when passed a string.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
dconnuri is a string, so update the definition to match.  Without this,
the generated python would fail when passed a string.
</pre>
</div>
</content>
</entry>
<entry>
<title>build: provide wrapper makefile</title>
<updated>2014-06-18T19:19:30+00:00</updated>
<author>
<name>Eric Blake</name>
<email>eblake@redhat.com</email>
</author>
<published>2014-06-18T19:17:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/commit/?id=4db97751bd00752d125cd4e42fb1c936b574504f'/>
<id>4db97751bd00752d125cd4e42fb1c936b574504f</id>
<content type='text'>
After years of finger training, I'm so used to 'make check' just
working, that I lose quite a bit of time re-learning that in this
project, it is spelled 'python setup.py build check'.  A shim
makefile bridges the gap.

* Makefile: New file.

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
After years of finger training, I'm so used to 'make check' just
working, that I lose quite a bit of time re-learning that in this
project, it is spelled 'python setup.py build check'.  A shim
makefile bridges the gap.

* Makefile: New file.

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>event-test: add missing events</title>
<updated>2014-06-18T19:01:52+00:00</updated>
<author>
<name>Eric Blake</name>
<email>eblake@redhat.com</email>
</author>
<published>2014-06-18T19:01:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/commit/?id=87b0d9793757030a16d1355cb0e2641f87726d06'/>
<id>87b0d9793757030a16d1355cb0e2641f87726d06</id>
<content type='text'>
Update the example to be able to trace all events.

* examples/event-test.py (main): Match full list of domain events.
(myDomainEventIOErrorReasonCallback)
(myDomainEventControlErrorCallback)
(myDomainEventBlockJobCallback, myDomainEventBlockJob2Callback)
(blockJobTypeToString, blockJobStatusToString): New functions.

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Update the example to be able to trace all events.

* examples/event-test.py (main): Match full list of domain events.
(myDomainEventIOErrorReasonCallback)
(myDomainEventControlErrorCallback)
(myDomainEventBlockJobCallback, myDomainEventBlockJob2Callback)
(blockJobTypeToString, blockJobStatusToString): New functions.

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>blockjob: support new BLOCK_JOB_2 event</title>
<updated>2014-06-18T16:49:27+00:00</updated>
<author>
<name>Eric Blake</name>
<email>eblake@redhat.com</email>
</author>
<published>2014-06-18T16:49:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/commit/?id=09a14b5d5e530e92c4c5f518b1188215140785b8'/>
<id>09a14b5d5e530e92c4c5f518b1188215140785b8</id>
<content type='text'>
Libvirt 1.2.6 is introducing a new block job event that passes disk
information by target device rather than host file name.  At the
python level, we are just a passthrough, so we can reuse all the
existing code and just wire up the new enum value.

* libvirt-override-virConnect.py
(_dispatchDomainEventBlockPullCallback): Rename...
(_dispatchDomainEventBlockJobCallback): ...to this, and make
generic to both events.
* libvirt-override.c
(libvirt_virConnectDomainEventBlockJobCallback): Match naming.
(libvirt_virConnectDomainEventRegisterAny): Allow new registration.

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Libvirt 1.2.6 is introducing a new block job event that passes disk
information by target device rather than host file name.  At the
python level, we are just a passthrough, so we can reuse all the
existing code and just wire up the new enum value.

* libvirt-override-virConnect.py
(_dispatchDomainEventBlockPullCallback): Rename...
(_dispatchDomainEventBlockJobCallback): ...to this, and make
generic to both events.
* libvirt-override.c
(libvirt_virConnectDomainEventBlockJobCallback): Match naming.
(libvirt_virConnectDomainEventRegisterAny): Allow new registration.

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bump version to 1.2.6 for new dev cycle</title>
<updated>2014-06-02T04:55:47+00:00</updated>
<author>
<name>Martin Kletzander</name>
<email>mkletzan@redhat.com</email>
</author>
<published>2014-06-02T04:54:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/commit/?id=b5e36a39581dbb8f64a9891fcd976c58af7f1e1e'/>
<id>b5e36a39581dbb8f64a9891fcd976c58af7f1e1e</id>
<content type='text'>
Signed-off-by: Martin Kletzander &lt;mkletzan@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Martin Kletzander &lt;mkletzan@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fix leak in memoryStats with older python</title>
<updated>2014-05-27T15:33:44+00:00</updated>
<author>
<name>Martin Kletzander</name>
<email>mkletzan@redhat.com</email>
</author>
<published>2014-05-27T09:40:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libvirt-python.git/commit/?id=28386e476e5a7a6c030ccdd610b9145d6040acde'/>
<id>28386e476e5a7a6c030ccdd610b9145d6040acde</id>
<content type='text'>
libvirt_virDomainMemoryStats() function creates a dictionary without
any checks whether the additions were successful, whether the python
objects were created and, most importantly, without decrementing the
reference count on the objects added to the dictionary.  This is
somehow not an issue with current upstream versions, however with
python 2.6 this exposes a leak in our bindings.  The following patch
works on both old and new CPython versions and is already used in
other parts of the code, so it's also most straightforward.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1099860

Signed-off-by: Martin Kletzander &lt;mkletzan@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
libvirt_virDomainMemoryStats() function creates a dictionary without
any checks whether the additions were successful, whether the python
objects were created and, most importantly, without decrementing the
reference count on the objects added to the dictionary.  This is
somehow not an issue with current upstream versions, however with
python 2.6 this exposes a leak in our bindings.  The following patch
works on both old and new CPython versions and is already used in
other parts of the code, so it's also most straightforward.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1099860

Signed-off-by: Martin Kletzander &lt;mkletzan@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
