mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-13 00:46:03 -06:00
report error when specifying wrong desturi
When we do peer2peer migration, the dest uri is an address of the target host as seen from the source machine. So we must specify the ip or hostname of target host in dest uri. If we do not specify it, report an error to the user. Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
This commit is contained in:
parent
0444ce1b00
commit
59d13aae32
@ -3571,12 +3571,29 @@ virDomainMigratePeer2Peer (virDomainPtr domain,
|
||||
const char *uri,
|
||||
unsigned long bandwidth)
|
||||
{
|
||||
xmlURIPtr tempuri = NULL;
|
||||
|
||||
if (!domain->conn->driver->domainMigratePerform) {
|
||||
virLibConnError (domain->conn, VIR_ERR_NO_SUPPORT, __FUNCTION__);
|
||||
virDispatchError(domain->conn);
|
||||
return -1;
|
||||
}
|
||||
|
||||
tempuri = xmlParseURI(uri);
|
||||
if (!tempuri) {
|
||||
virLibConnError (domain->conn, VIR_ERR_INVALID_ARG, __FUNCTION__);
|
||||
virDispatchError(domain->conn);
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (!tempuri->server || STRPREFIX(tempuri->server, "localhost")) {
|
||||
virLibConnError(domain->conn, VIR_ERR_INVALID_ARG, __FUNCTION__);
|
||||
virDispatchError(domain->conn);
|
||||
xmlFreeURI(tempuri);
|
||||
return -1;
|
||||
}
|
||||
xmlFreeURI(tempuri);
|
||||
|
||||
/* Perform the migration. The driver isn't supposed to return
|
||||
* until the migration is complete.
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user