summaryrefslogtreecommitdiff
path: root/spice-qemu-char.c
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2016-10-21 16:07:45 +0300
committerPaolo Bonzini <pbonzini@redhat.com>2017-01-27 18:07:58 +0100
commit0b812f31925f2ed50eb54d2be6ac9291bf67b890 (patch)
tree8a51007dff4c1b2d7a6d004a06ac53a6059c0358 /spice-qemu-char.c
parentbd1caa3f8e8e63b9ac4cbcbee5a2dee3587fd852 (diff)
downloadqemu-0b812f31925f2ed50eb54d2be6ac9291bf67b890.tar.gz
char: use a const CharDriver
No need to allocate & copy fields, let's use static const struct instead. Add an alias field to the CharDriver structure to cover the cases where we previously registered a driver twice under two names. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'spice-qemu-char.c')
-rw-r--r--spice-qemu-char.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/spice-qemu-char.c b/spice-qemu-char.c
index 276c4aef68..30db420e2f 100644
--- a/spice-qemu-char.c
+++ b/spice-qemu-char.c
@@ -389,10 +389,18 @@ static void qemu_chr_parse_spice_port(QemuOpts *opts, ChardevBackend *backend,
static void register_types(void)
{
- register_char_driver("spicevmc", CHARDEV_BACKEND_KIND_SPICEVMC,
- qemu_chr_parse_spice_vmc, qemu_chr_open_spice_vmc);
- register_char_driver("spiceport", CHARDEV_BACKEND_KIND_SPICEPORT,
- qemu_chr_parse_spice_port, qemu_chr_open_spice_port);
+ static const CharDriver vmc_driver = {
+ .kind = CHARDEV_BACKEND_KIND_SPICEVMC,
+ .parse = qemu_chr_parse_spice_vmc,
+ .create = qemu_chr_open_spice_vmc,
+ };
+ static const CharDriver port_driver = {
+ .kind = CHARDEV_BACKEND_KIND_SPICEPORT,
+ .parse = qemu_chr_parse_spice_port,
+ .create = qemu_chr_open_spice_port,
+ };
+ register_char_driver(&vmc_driver);
+ register_char_driver(&port_driver);
}
type_init(register_types);