[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 1/6] monitor: return length of printed string via mo
From: |
Jan Kiszka |
Subject: |
[Qemu-devel] [PATCH 1/6] monitor: return length of printed string via monitor_[v]printf |
Date: |
Fri, 26 Aug 2011 16:48:11 +0200 |
This simply forwards the result of the internal vsnprintf to the callers
of monitor_printf and monitor_vprintf. When invoked over a QMP session
or in absence of an active monitor, -1 is returned.
CC: Luiz Capitulino <address@hidden>
Signed-off-by: Jan Kiszka <address@hidden>
---
monitor.c | 23 +++++++++++++++--------
monitor.h | 4 ++--
qemu-tool.c | 6 ++++--
3 files changed, 21 insertions(+), 12 deletions(-)
diff --git a/monitor.c b/monitor.c
index ada51d0..a1bba27 100644
--- a/monitor.c
+++ b/monitor.c
@@ -270,29 +270,36 @@ static void monitor_puts(Monitor *mon, const char *str)
}
}
-void monitor_vprintf(Monitor *mon, const char *fmt, va_list ap)
+int monitor_vprintf(Monitor *mon, const char *fmt, va_list ap)
{
char buf[4096];
+ int ret;
- if (!mon)
- return;
-
+ if (!mon) {
+ return -1;
+ }
mon_print_count_inc(mon);
if (monitor_ctrl_mode(mon)) {
- return;
+ return -1;
}
- vsnprintf(buf, sizeof(buf), fmt, ap);
+ ret = vsnprintf(buf, sizeof(buf), fmt, ap);
monitor_puts(mon, buf);
+
+ return ret;
}
-void monitor_printf(Monitor *mon, const char *fmt, ...)
+int monitor_printf(Monitor *mon, const char *fmt, ...)
{
va_list ap;
+ int ret;
+
va_start(ap, fmt);
- monitor_vprintf(mon, fmt, ap);
+ ret = monitor_vprintf(mon, fmt, ap);
va_end(ap);
+
+ return ret;
}
void monitor_print_filename(Monitor *mon, const char *filename)
diff --git a/monitor.h b/monitor.h
index 4f2d328..873ba22 100644
--- a/monitor.h
+++ b/monitor.h
@@ -52,9 +52,9 @@ int monitor_read_bdrv_key_start(Monitor *mon,
BlockDriverState *bs,
int monitor_get_fd(Monitor *mon, const char *fdname);
-void monitor_vprintf(Monitor *mon, const char *fmt, va_list ap)
+int monitor_vprintf(Monitor *mon, const char *fmt, va_list ap)
GCC_FMT_ATTR(2, 0);
-void monitor_printf(Monitor *mon, const char *fmt, ...) GCC_FMT_ATTR(2, 3);
+int monitor_printf(Monitor *mon, const char *fmt, ...) GCC_FMT_ATTR(2, 3);
void monitor_print_filename(Monitor *mon, const char *filename);
void monitor_flush(Monitor *mon);
diff --git a/qemu-tool.c b/qemu-tool.c
index eb89fe0..b0a032d7b 100644
--- a/qemu-tool.c
+++ b/qemu-tool.c
@@ -44,12 +44,14 @@ void monitor_set_error(Monitor *mon, QError *qerror)
{
}
-void monitor_vprintf(Monitor *mon, const char *fmt, va_list ap)
+int monitor_vprintf(Monitor *mon, const char *fmt, va_list ap)
{
+ return -1;
}
-void monitor_printf(Monitor *mon, const char *fmt, ...)
+int monitor_printf(Monitor *mon, const char *fmt, ...)
{
+ return -1;
}
void monitor_print_filename(Monitor *mon, const char *filename)
--
1.7.3.4
[Qemu-devel] [PATCH 5/6] monitor: Add basic device state visualization, Jan Kiszka, 2011/08/26
[Qemu-devel] [PATCH 6/6] qdev: Generate IDs for anonymous devices, Jan Kiszka, 2011/08/26