[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 06/18] qapi: Support unregistering QMP commands
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PULL 06/18] qapi: Support unregistering QMP commands |
Date: |
Mon, 19 Sep 2016 18:41:22 +0200 |
Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
---
include/qapi/qmp/dispatch.h | 1 +
qapi/qmp-registry.c | 8 ++++++++
2 files changed, 9 insertions(+)
diff --git a/include/qapi/qmp/dispatch.h b/include/qapi/qmp/dispatch.h
index 48c11b6..57651ea 100644
--- a/include/qapi/qmp/dispatch.h
+++ b/include/qapi/qmp/dispatch.h
@@ -36,6 +36,7 @@ typedef struct QmpCommand
void qmp_register_command(const char *name, QmpCommandFunc *fn,
QmpCommandOptions options);
+void qmp_unregister_command(const char *name);
QmpCommand *qmp_find_command(const char *name);
QObject *qmp_dispatch(QObject *request);
void qmp_disable_command(const char *name);
diff --git a/qapi/qmp-registry.c b/qapi/qmp-registry.c
index 68b24c9..e805368 100644
--- a/qapi/qmp-registry.c
+++ b/qapi/qmp-registry.c
@@ -30,6 +30,14 @@ void qmp_register_command(const char *name, QmpCommandFunc
*fn,
QTAILQ_INSERT_TAIL(&qmp_commands, cmd, node);
}
+void qmp_unregister_command(const char *name)
+{
+ QmpCommand *cmd = qmp_find_command(name);
+
+ QTAILQ_REMOVE(&qmp_commands, cmd, node);
+ g_free(cmd);
+}
+
QmpCommand *qmp_find_command(const char *name)
{
QmpCommand *cmd;
--
2.5.5
- [Qemu-devel] [PULL 00/18] QAPI patches for 2016-09-19, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 03/18] qapi-schema: add 'device_add', Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 05/18] monitor: register gen:false commands manually, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 08/18] qapi: export the marshallers, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 10/18] monitor: implement 'qmp_query_commands' without qmp_cmds, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 13/18] qapi: check invalid arguments on no-args commands, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 14/18] tests: add a test to check invalid args, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 04/18] monitor: simplify invalid_qmp_mode(), Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 01/18] build-sys: define QEMU_VERSION_{MAJOR, MINOR, MICRO}, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 06/18] qapi: Support unregistering QMP commands,
Markus Armbruster <=
- [Qemu-devel] [PULL 02/18] qapi-schema: use generated marshaller for 'qmp_capabilities', Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 17/18] qmp-commands.hx: fix some styling, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 16/18] build-sys: remove qmp-commands-old.h, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 12/18] qapi: remove the "middle" mode, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 18/18] Replace qmp-commands.hx by docs/qmp-commands.txt, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 07/18] qmp: Hack to keep commands configuration-specific, Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 09/18] monitor: use qmp_find_command() (using generated qapi code), Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 15/18] monitor: use qmp_dispatch(), Markus Armbruster, 2016/09/19
- [Qemu-devel] [PULL 11/18] monitor: remove mhandler.cmd_new, Markus Armbruster, 2016/09/19
- Re: [Qemu-devel] [PULL 00/18] QAPI patches for 2016-09-19, Peter Maydell, 2016/09/19