From 77d1c3c63fb18c3675d8c80262bbd172f646556a Mon Sep 17 00:00:00 2001 From: Martin Kletzander Date: Sat, 1 Feb 2014 12:52:42 +0100 Subject: qmp: expose list of supported character device backends Introduce 'query-chardev-backends' QMP command which lists all supported character device backends. Signed-off-by: Martin Kletzander Reviewed-by: Eric Blake Signed-off-by: Luiz Capitulino --- qemu-char.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'qemu-char.c') diff --git a/qemu-char.c b/qemu-char.c index d0b4ac5ffd..4d50838b3b 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -3432,6 +3432,25 @@ ChardevInfoList *qmp_query_chardev(Error **errp) return chr_list; } +ChardevBackendInfoList *qmp_query_chardev_backends(Error **errp) +{ + ChardevBackendInfoList *backend_list = NULL; + CharDriver *c = NULL; + GSList *i = NULL; + + for (i = backends; i; i = i->next) { + ChardevBackendInfoList *info = g_malloc0(sizeof(*info)); + c = i->data; + info->value = g_malloc0(sizeof(*info->value)); + info->value->name = g_strdup(c->name); + + info->next = backend_list; + backend_list = info; + } + + return backend_list; +} + CharDriverState *qemu_chr_find(const char *name) { CharDriverState *chr; -- cgit v1.2.1