From 23f23a43be71413869333dbd9f3f503f2e4ed892 Mon Sep 17 00:00:00 2001
From: Markus Armbruster <armbru@redhat.com>
Date: Wed, 31 Mar 2010 13:24:50 -0300
Subject: [PATCH 35/66] monitor: New monitor_cur_is_qmp()

RH-Author: Markus Armbruster <armbru@redhat.com>
Message-id: <1270041921-28969-36-git-send-email-armbru@redhat.com>
Patchwork-id: 8260
O-Subject: [PATCH 35/66] monitor: New monitor_cur_is_qmp()
Bugzilla: 579470
RH-Acked-by: Kevin Wolf <kwolf@redhat.com>
RH-Acked-by: Juan Quintela <quintela@redhat.com>
RH-Acked-by: Luiz Capitulino <lcapitulino@redhat.com>

(cherry picked from commit 6620d3ce9ee44c01c7d715322be7879ad3d98c7a)
---
 monitor.c |    6 ++++++
 monitor.h |    2 ++
 2 files changed, 8 insertions(+), 0 deletions(-)

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
 monitor.c |    6 ++++++
 monitor.h |    2 ++
 2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/monitor.c b/monitor.c
index 048c043..c8eb626 100644
--- a/monitor.c
+++ b/monitor.c
@@ -201,6 +201,12 @@ static inline int monitor_ctrl_mode(const Monitor *mon)
     return (mon->flags & MONITOR_USE_CONTROL);
 }
 
+/* Return non-zero iff we have a current monitor, and it is in QMP mode.  */
+int monitor_cur_is_qmp(void)
+{
+    return cur_mon && monitor_ctrl_mode(cur_mon);
+}
+
 static void monitor_read_command(Monitor *mon, int show_prompt)
 {
     if (!mon->rs)
diff --git a/monitor.h b/monitor.h
index d8cfcb4..42664d0 100644
--- a/monitor.h
+++ b/monitor.h
@@ -33,6 +33,8 @@ typedef enum MonitorEvent {
     QEVENT_MAX,
 } MonitorEvent;
 
+int monitor_cur_is_qmp(void);
+
 void monitor_protocol_event(MonitorEvent event, QObject *data);
 void monitor_init(CharDriverState *chr, int flags);
 
-- 
1.7.0.3

