[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v4 14/23] monitor: return length of printed string v
From: |
Jan Kiszka |
Subject: |
[Qemu-devel] [PATCH v4 14/23] monitor: return length of printed string via monitor_[v]printf |
Date: |
Wed, 16 Jun 2010 00:38:38 +0200 |
From: Jan Kiszka <address@hidden>
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.
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 7139c4e..aa0bdd6 100644
--- a/monitor.c
+++ b/monitor.c
@@ -263,29 +263,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 ea15469..32c0170 100644
--- a/monitor.h
+++ b/monitor.h
@@ -45,8 +45,8 @@ 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);
-void monitor_printf(Monitor *mon, const char *fmt, ...)
+int monitor_vprintf(Monitor *mon, const char *fmt, va_list ap);
+int monitor_printf(Monitor *mon, const char *fmt, ...)
__attribute__ ((__format__ (__printf__, 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 b39af86..f6ce6cd 100644
--- a/qemu-tool.c
+++ b/qemu-tool.c
@@ -43,12 +43,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.6.0.2
- [Qemu-devel] [PATCH v4 11/23] monitor: Add completion support for option lists, (continued)
- [Qemu-devel] [PATCH v4 11/23] monitor: Add completion support for option lists, Jan Kiszka, 2010/06/15
- Re: [Qemu-devel] [PATCH v4 11/23] monitor: Add completion support for option lists, Markus Armbruster, 2010/06/23
- Re: [Qemu-devel] [PATCH v4 11/23] monitor: Add completion support for option lists, Jan Kiszka, 2010/06/23
- Re: [Qemu-devel] [PATCH v4 11/23] monitor: Add completion support for option lists, Markus Armbruster, 2010/06/23
- Re: [Qemu-devel] [PATCH v4 11/23] monitor: Add completion support for option lists, Luiz Capitulino, 2010/06/28
- Re: [Qemu-devel] [PATCH v4 11/23] monitor: Add completion support for option lists, Jan Kiszka, 2010/06/28
- Re: [Qemu-devel] [PATCH v4 11/23] monitor: Add completion support for option lists, Luiz Capitulino, 2010/06/28
- [Qemu-devel] [PATCH] monitor: Allow to exclude commands from QMP, Jan Kiszka, 2010/06/28
[Qemu-devel] [PATCH v4 15/23] monitor: Establish cmd flags and convert the async tag, Jan Kiszka, 2010/06/15
[Qemu-devel] [PATCH v4 16/23] monitor: Allow to exclude commands from QMP, Jan Kiszka, 2010/06/15
[Qemu-devel] [PATCH v4 14/23] monitor: return length of printed string via monitor_[v]printf,
Jan Kiszka <=
[Qemu-devel] [PATCH v4 17/23] Add base64 encoder/decoder, Jan Kiszka, 2010/06/15
[Qemu-devel] [PATCH v4 21/23] QMP: Teach basic capability negotiation to python example, Jan Kiszka, 2010/06/15
[Qemu-devel] [PATCH v4 12/23] monitor: Add completion for qdev paths, Jan Kiszka, 2010/06/15
[Qemu-devel] [PATCH v4 19/23] QMP: Add QBuffer, Jan Kiszka, 2010/06/15
[Qemu-devel] [PATCH v4 18/23] QMP: Reserve namespace for complex object classes, Jan Kiszka, 2010/06/15
[Qemu-devel] [PATCH v4 22/23] QMP: Fix python helper /wrt long return strings, Jan Kiszka, 2010/06/15
[Qemu-devel] [PATCH v4 23/23] QMP: Add support for buffer class to qmp python helper, Jan Kiszka, 2010/06/15
[Qemu-devel] [PATCH v4 20/23] monitor: Add basic device state visualization, Jan Kiszka, 2010/06/15