diff mbox

[10/15] qapi: add QMP quit command

Message ID 1299884745-521-11-git-send-email-aliguori@us.ibm.com
State New
Headers show

Commit Message

Anthony Liguori March 11, 2011, 11:05 p.m. UTC
This is needed by the test suite.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
diff mbox

Patch

diff --git a/qmp-schema.json b/qmp-schema.json
index e72bc18..d19cf73 100644
--- a/qmp-schema.json
+++ b/qmp-schema.json
@@ -88,3 +88,15 @@ 
 # Since: 0.14.0
 ##
 { 'command': 'query-version', 'returns': 'VersionInfo' }
+
+##
+# @quit:
+#
+# This command will cause the QEMU process to exit gracefully.  While every
+# attempt is made to send the QMP response before terminating, this is not
+# guaranteed.  When using this interface, a premature EOF would not be
+# unexpected.
+#
+# Since: 0.14.0
+##
+{ 'command': 'quit' }
diff --git a/qmp.c b/qmp.c
index 7b626f5..837ac95 100644
--- a/qmp.c
+++ b/qmp.c
@@ -12,6 +12,7 @@ 
 #include "qemu-common.h"
 #include "qmp-core.h"
 #include "qmp.h"
+#include "sysemu.h"
 
 VersionInfo *qmp_query_version(Error **err)
 {
@@ -29,3 +30,8 @@  VersionInfo *qmp_query_version(Error **err)
     return info;
 }
 
+void qmp_quit(Error **err)
+{
+    no_shutdown = 0;
+    qemu_system_shutdown_request();
+}