spice-qemu-char: register spicevmc ports during qemu_spice_init()

Do the delayed registration of spicevmc ports after Spice server is
initialized.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
master
Marc-André Lureau 2012-12-05 16:15:36 +01:00 committed by Gerd Hoffmann
parent 7a5448ce6e
commit afd0b4091f
3 changed files with 17 additions and 0 deletions

View File

@ -293,4 +293,16 @@ CharDriverState *qemu_chr_open_spice_port(QemuOpts *opts)
return chr;
}
void qemu_spice_register_ports(void)
{
SpiceCharDriver *s;
QLIST_FOREACH(s, &spice_chars, next) {
if (s->sin.portname == NULL) {
continue;
}
vmc_register_interface(s);
}
}
#endif

View File

@ -48,6 +48,7 @@ void do_info_spice(Monitor *mon, QObject **ret_data);
CharDriverState *qemu_chr_open_spice(QemuOpts *opts);
#if SPICE_SERVER_VERSION >= 0x000c02
CharDriverState *qemu_chr_open_spice_port(QemuOpts *opts);
void qemu_spice_register_ports(void);
#endif
#else /* CONFIG_SPICE */

View File

@ -714,6 +714,10 @@ void qemu_spice_init(void)
g_free(x509_key_file);
g_free(x509_cert_file);
g_free(x509_cacert_file);
#if SPICE_SERVER_VERSION >= 0x000c02
qemu_spice_register_ports();
#endif
}
int qemu_spice_add_interface(SpiceBaseInstance *sin)