}
if (!ret->driver) {
- virLibConnError (NULL, VIR_ERR_NO_SUPPORT, name);
+ /* If we reach here, then all drivers declined the connection. */
+ virLibConnError (NULL, VIR_ERR_NO_CONNECT, name);
goto failed;
}
/**
* virConnectOpen:
- * @name: optional argument currently unused, pass NULL
+ * @name: URI of the hypervisor
*
* This function should be called first to get a connection to the
* Hypervisor and xen store
*
* Returns a pointer to the hypervisor connection or NULL in case of error
+ *
+ * URIs are documented at http://libvirt.org/uri.html
*/
virConnectPtr
virConnectOpen (const char *name)
/**
* virConnectOpenReadOnly:
- * @name: optional argument currently unused, pass NULL
+ * @name: URI of the hypervisor
*
* 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.
*
* Returns a pointer to the hypervisor connection or NULL in case of error
+ *
+ * URIs are documented at http://libvirt.org/uri.html
*/
virConnectPtr
virConnectOpenReadOnly(const char *name)
if (conn->driver->domainSave)
return conn->driver->domainSave (domain, to);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainRestore)
return conn->driver->domainRestore (conn, from);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainCoreDump)
return conn->driver->domainCoreDump (domain, to, flags);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainShutdown)
return conn->driver->domainShutdown (domain);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainReboot)
return conn->driver->domainReboot (domain, flags);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainGetOSType)
return conn->driver->domainGetOSType (domain);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
if (conn->driver->domainGetMaxMemory)
return conn->driver->domainGetMaxMemory (domain);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return 0;
}
if (conn->driver->domainSetMaxMemory)
return conn->driver->domainSetMaxMemory (domain, memory);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainSetMemory)
return conn->driver->domainSetMemory (domain, memory);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainGetInfo)
return conn->driver->domainGetInfo (domain, info);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainDumpXML)
return conn->driver->domainDumpXML (domain, flags);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
if (conn->driver->nodeGetInfo)
return conn->driver->nodeGetInfo (conn, info);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->getCapabilities)
return conn->driver->getCapabilities (conn);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
return schedtype;
}
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
if (conn->driver->domainGetSchedulerParameters)
return conn->driver->domainGetSchedulerParameters (domain, params, nparams);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainSetSchedulerParameters)
return conn->driver->domainSetSchedulerParameters (domain, params, nparams);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainDefineXML)
return conn->driver->domainDefineXML (conn, xml);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
if (conn->driver->domainUndefine)
return conn->driver->domainUndefine (domain);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->numOfDefinedDomains)
return conn->driver->numOfDefinedDomains (conn);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->listDefinedDomains)
return conn->driver->listDefinedDomains (conn, names, maxnames);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainCreate)
return conn->driver->domainCreate (domain);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainGetAutostart)
return conn->driver->domainGetAutostart (domain, autostart);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainSetAutostart)
return conn->driver->domainSetAutostart (domain, autostart);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainSetVcpus)
return conn->driver->domainSetVcpus (domain, nvcpus);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainPinVcpu)
return conn->driver->domainPinVcpu (domain, vcpu, cpumap, maplen);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
return conn->driver->domainGetVcpus (domain, info, maxinfo,
cpumaps, maplen);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainGetMaxVcpus)
return conn->driver->domainGetMaxVcpus (domain);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainAttachDevice)
return conn->driver->domainAttachDevice (domain, xml);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->driver->domainDetachDevice)
return conn->driver->domainDetachDevice (domain, xml);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->networkDriver && conn->networkDriver->numOfNetworks)
return conn->networkDriver->numOfNetworks (conn);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->networkDriver && conn->networkDriver->listNetworks)
return conn->networkDriver->listNetworks (conn, names, maxnames);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->networkDriver && conn->networkDriver->numOfDefinedNetworks)
return conn->networkDriver->numOfDefinedNetworks (conn);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
return conn->networkDriver->listDefinedNetworks (conn,
names, maxnames);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->networkDriver && conn->networkDriver->networkLookupByName)
return conn->networkDriver->networkLookupByName (conn, name);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
if (conn->networkDriver && conn->networkDriver->networkLookupByUUID)
return conn->networkDriver->networkLookupByUUID (conn, uuid);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
if (conn->networkDriver && conn->networkDriver->networkCreateXML)
return conn->networkDriver->networkCreateXML (conn, xmlDesc);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
if (conn->networkDriver && conn->networkDriver->networkDefineXML)
return conn->networkDriver->networkDefineXML (conn, xml);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
if (conn->networkDriver && conn->networkDriver->networkUndefine)
return conn->networkDriver->networkUndefine (network);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->networkDriver && conn->networkDriver->networkCreate)
return conn->networkDriver->networkCreate (network);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->networkDriver && conn->networkDriver->networkDestroy)
return conn->networkDriver->networkDestroy (network);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->networkDriver && conn->networkDriver->networkDumpXML)
return conn->networkDriver->networkDumpXML (network, flags);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
if (conn->networkDriver && conn->networkDriver->networkGetBridgeName)
return conn->networkDriver->networkGetBridgeName (network);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return NULL;
}
if (conn->networkDriver && conn->networkDriver->networkGetAutostart)
return conn->networkDriver->networkGetAutostart (network, autostart);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}
if (conn->networkDriver && conn->networkDriver->networkSetAutostart)
return conn->networkDriver->networkSetAutostart (network, autostart);
- virLibConnError (conn, VIR_ERR_CALL_FAILED, __FUNCTION__);
+ virLibConnError (conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
return -1;
}