summaryrefslogtreecommitdiff
path: root/migration.h
diff options
context:
space:
mode:
authorChris Lalancette <clalance@redhat.com>2009-08-05 17:24:29 +0200
committerAnthony Liguori <aliguori@us.ibm.com>2009-08-24 08:01:42 -0500
commit0cc5ba790657e7aa32da10b7181ffcc990634fd3 (patch)
tree33116b194215a2e693e732eb02aefd37fb373557 /migration.h
parent868c31557166b897101ff5056f39feaa5bfde95c (diff)
downloadqemu-0cc5ba790657e7aa32da10b7181ffcc990634fd3.tar.gz
qemu-0cc5ba790657e7aa32da10b7181ffcc990634fd3.tar.bz2
qemu-0cc5ba790657e7aa32da10b7181ffcc990634fd3.zip
Migration via unix sockets.
Implement migration via unix sockets. While you can fake this using exec and netcat, this involves forking another process and is generally not very nice. By doing this directly in qemu, we can avoid the copy through the external nc command. This is useful for implementations (such as libvirt) that want to do "secure" migration; we pipe the data on the sending side into the unix socket, libvirt picks it up, encrypts it, and transports it, and then on the remote side libvirt decrypts it, dumps it to another unix socket, and feeds it into qemu. The implementation is straightforward and looks very similar to migration-exec.c and migration-tcp.c Signed-off-by: Chris Lalancette <clalance@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'migration.h')
-rw-r--r--migration.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/migration.h b/migration.h
index 37c7f8e158..0ed1fcb515 100644
--- a/migration.h
+++ b/migration.h
@@ -73,6 +73,12 @@ MigrationState *tcp_start_outgoing_migration(const char *host_port,
int64_t bandwidth_limit,
int detach);
+int unix_start_incoming_migration(const char *path);
+
+MigrationState *unix_start_outgoing_migration(const char *path,
+ int64_t bandwidth_limit,
+ int detach);
+
void migrate_fd_monitor_suspend(FdMigrationState *s);
void migrate_fd_error(FdMigrationState *s);