* python/libvir.c: call the initialize entry point

* src/libvirt_sym.version: add initialize entry point
* src/libvirt.c: make sure we always initialize the lib
* python/tests/*.py: start updating exemple for exception
  handling as pointed by Jim Meyering
Daniel
This commit is contained in:
Daniel Veillard 2006-03-28 14:41:04 +00:00
parent 7743c7a7b1
commit 538686f9c0
7 changed files with 41 additions and 8 deletions

View File

@ -1,3 +1,11 @@
Tue Mar 28 16:40:08 CEST 2006 Daniel Veillard <veillard@redhat.com>
* python/libvir.c: call the initialize entry point
* src/libvirt_sym.version: add initialize entry point
* src/libvirt.c: make sure we always initialize the lib
* python/tests/*.py: start updating exemple for exception
handling as pointed by Jim Meyering
Tue Mar 28 11:49:59 CEST 2006 Daniel Veillard <veillard@redhat.com>
* doc/site.xsl doc/libvir.html doc/*: added informations about

View File

@ -269,6 +269,8 @@ initlibvirtmod(void)
if (initialized != 0)
return;
virInitialize();
/* intialize the python extension module */
Py_InitModule((char *) "libvirtmod", libvirtMethods);

View File

@ -14,8 +14,9 @@ if conn == None:
# print conn
dom0 = conn.lookupByName("Domain-0")
if dom0 == None:
try:
dom0 = conn.lookupByName("Domain-0")
except:
print 'Failed to find the main domain'
sys.exit(1)

View File

@ -115,13 +115,20 @@ time.sleep(10)
print "shutdown of test domain"
if dom.shutdown() != 0:
okay = 0
print 'Failed to shutdown domain test'
i = 0
while i < 30:
time.sleep(1)
i = i + 1
t = dom.info()[4]
try:
t = dom.info()[4]
except:
okay = 0
t = -1
break;
if t == 0:
break

View File

@ -19,16 +19,18 @@ if ids == None or len(ids) == 0:
id = ids[-1]
dom = conn.lookupByID(id)
if dom == None:
try:
dom = conn.lookupByID(id)
except:
print 'Failed to find the domain %d'
sys.exit(1)
name0 = dom.name()
uuid = dom.UUID()
print "Using domain %s" % (name0)
dom2 = conn.lookupByUUID(uuid)
if dom2 == None:
try:
dom2 = conn.lookupByUUID(uuid)
except:
print 'Failed to lookup domain %d based on its UUID'
sys.exit(1)
if dom2.name() != name0:

View File

@ -57,6 +57,7 @@ virInitialize(void)
if (initialized)
return(0);
initialized = 1;
/*
* should not be needed but...
@ -70,7 +71,6 @@ virInitialize(void)
xenHypervisorRegister();
xenDaemonRegister();
xenStoreRegister();
initialized = 1;
return(0);
}
@ -136,6 +136,9 @@ virRegisterDriver(virDriverPtr driver)
{
int i;
if (!initialized)
virInitialize();
if (driver == NULL) {
virLibConnError(NULL, VIR_ERR_INVALID_ARG, __FUNCTION__);
return(-1);
@ -173,6 +176,9 @@ int
virGetVersion(unsigned long *libVer, const char *type,
unsigned long *typeVer)
{
if (!initialized)
virInitialize();
if (libVer == NULL)
return (-1);
*libVer = LIBVIR_VERSION_NUMBER;
@ -212,6 +218,9 @@ virConnectOpen(const char *name)
{
virConnectPtr ret = NULL;
if (!initialized)
virInitialize();
/* we can only talk to the local Xen supervisor ATM */
if (name != NULL) {
virLibConnError(NULL, VIR_ERR_NO_SUPPORT, name);
@ -270,6 +279,9 @@ virConnectOpenReadOnly(const char *name)
int res;
virConnectPtr ret = NULL;
if (!initialized)
virInitialize();
/* we can only talk to the local Xen supervisor ATM */
if (name != NULL) {
virLibConnError(NULL, VIR_ERR_NO_SUPPORT, name);

View File

@ -1,5 +1,6 @@
{
global:
virInitialize;
virConnectClose;
virConnectGetType;
virConnectGetVersion;