aboutsummaryrefslogtreecommitdiff
path: root/chardev
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2019-04-17 21:06:40 +0200
committerMarkus Armbruster <armbru@redhat.com>2019-04-18 22:18:59 +0200
commit6ade45f2ac936114d82a18ed10df1fb717f4a584 (patch)
treed397da946db5fbba5e51844f7227fdc1b0275d5f /chardev
parentef2fd6f1d1e5333eacaebc8466ed5dbed0d55b8b (diff)
char-pty: Print "char device redirected" message to stdout
char_pty_open() prints a "char device redirected to PTY_NAME (label LABEL)" message to the current monitor or else to stderr. This is not an error, so it shouldn't go to stderr. Print it to stdout instead. Why is it even printed? No other ChardevClass::open() prints anything on success. It's because you need to know PTY_NAME to actually use this char device, e.g. like e.g. "socat STDIO,cfmakeraw FILE:PTY_NAME" to use the monitor's readline interface. You can get PTY_NAME with "info chardev" (a.k.a. query-chardev for QMP), but only if you already have a monitor. Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20190417190641.26814-15-armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com>
Diffstat (limited to 'chardev')
-rw-r--r--chardev/char-pty.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/chardev/char-pty.c b/chardev/char-pty.c
index b034332edd..04759b0ef9 100644
--- a/chardev/char-pty.c
+++ b/chardev/char-pty.c
@@ -28,6 +28,7 @@
#include "io/channel-file.h"
#include "qemu/sockets.h"
#include "qemu/error-report.h"
+#include "qemu/qemu-print.h"
#include "chardev/char-io.h"
@@ -211,8 +212,8 @@ static void char_pty_open(Chardev *chr,
qemu_set_nonblock(master_fd);
chr->filename = g_strdup_printf("pty:%s", pty_name);
- error_printf("char device redirected to %s (label %s)\n",
- pty_name, chr->label);
+ qemu_printf("char device redirected to %s (label %s)\n",
+ pty_name, chr->label);
s = PTY_CHARDEV(chr);
s->ioc = QIO_CHANNEL(qio_channel_file_new_fd(master_fd));