virtio-serial: Consolidate guest_open/guest_close into set_guest_connected

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Message-id: 1364292483-16564-10-git-send-email-hdegoede@redhat.com
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Hans de Goede 2013-03-26 11:08:01 +01:00 committed by Anthony Liguori
parent a59bcd31c9
commit b2c1394af1
3 changed files with 12 additions and 32 deletions

View file

@ -66,26 +66,15 @@ static ssize_t flush_buf(VirtIOSerialPort *port, const uint8_t *buf, size_t len)
return ret;
}
/* Callback function that's called when the guest opens the port */
static void guest_open(VirtIOSerialPort *port)
/* Callback function that's called when the guest opens/closes the port */
static void set_guest_connected(VirtIOSerialPort *port, int guest_connected)
{
VirtConsole *vcon = DO_UPCAST(VirtConsole, port, port);
if (!vcon->chr) {
return;
}
qemu_chr_fe_set_open(vcon->chr, 1);
}
/* Callback function that's called when the guest closes the port */
static void guest_close(VirtIOSerialPort *port)
{
VirtConsole *vcon = DO_UPCAST(VirtConsole, port, port);
if (!vcon->chr) {
return;
}
qemu_chr_fe_set_open(vcon->chr, 0);
qemu_chr_fe_set_open(vcon->chr, guest_connected);
}
/* Readiness of the guest to accept data on a port */
@ -152,8 +141,7 @@ static void virtconsole_class_init(ObjectClass *klass, void *data)
k->is_console = true;
k->init = virtconsole_initfn;
k->have_data = flush_buf;
k->guest_open = guest_open;
k->guest_close = guest_close;
k->set_guest_connected = set_guest_connected;
dc->props = virtconsole_properties;
}
@ -176,8 +164,7 @@ static void virtserialport_class_init(ObjectClass *klass, void *data)
k->init = virtconsole_initfn;
k->have_data = flush_buf;
k->guest_open = guest_open;
k->guest_close = guest_close;
k->set_guest_connected = set_guest_connected;
dc->props = virtserialport_properties;
}