[Libvir] [PATCH] Python bindings: Use virDomain/NetworkGetConnect instead of storing connection in domain/network object

Richard W.M. Jones rjones at redhat.com
Mon Jul 23 16:11:09 UTC 2007


This is my test case:

------------------------------------------
#!/usr/bin/python

import libvirt

def get_dom():
     conn = libvirt.open ("xen");
     dom = conn.lookupByName ("debian32fv");
     return dom

dom = get_dom()
print "name = %s\n" % dom.name()
------------------------------------------

I modified src/hash.c to add a little bit of debug of the state of 
conn->uses in virGetConnect, virFreeConnect, virGetDomain, 
virFreeDomain.  When running the program I see:

------------------------------------------
libvirt: virInitialize ()
libvirt: virInitialize ()
libvirt: virInitialize ()
libvirt: virInitialize ()
libvirt: virInitialize ()
libvirt: virInitialize ()
libvirt: virInitialize ()
libvirt: virInitialize ()
libvirt: virConnectOpen (name=xen)
conn(0x6748c0) uses = 1
libvirt: do_open: proceeding with name=xen:///
libvirt: do_open: trying driver 0 (Test) ...
libvirt: do_open: driver 0 returned DECLINED
libvirt: do_open: trying driver 1 (QEMU) ...
libvirt: do_open: driver 1 returned DECLINED
libvirt: do_open: trying driver 2 (Xen) ...
libvirt: do_open: driver 2 returned SUCCESS
libvir: Remote error : Connection refused
libvir: warning : Failed to find the network: Is the daemon running ?
libvirt: virDomainLookupByName (conn=0x6748c0, name=debian32fv)
new domain: conn(0x6748c0) uses = 2
libvirt: virConnectClose (conn=0x6748c0)
conn(0x6748c0) uses = 1
libvirt: virDomainGetName (domain=0x679e20)
name = debian32fv

libvirt: virDomainFree (domain=0x679e20)
free domain: conn(0x6748c0) uses = 0
------------------------------------------

I would say that it's working as intended.

Rich.




More information about the libvir-list mailing list