mirror of https://github.com/xemu-project/xemu.git
add qemu_chr_set_echo
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
d55dbc3acd
commit
c48855e140
|
@ -5175,6 +5175,7 @@ void monitor_init(CharDriverState *chr, int flags)
|
||||||
/* Control mode requires special handlers */
|
/* Control mode requires special handlers */
|
||||||
qemu_chr_add_handlers(chr, monitor_can_read, monitor_control_read,
|
qemu_chr_add_handlers(chr, monitor_can_read, monitor_control_read,
|
||||||
monitor_control_event, mon);
|
monitor_control_event, mon);
|
||||||
|
qemu_chr_set_echo(chr, true);
|
||||||
} else {
|
} else {
|
||||||
qemu_chr_add_handlers(chr, monitor_can_read, monitor_read,
|
qemu_chr_add_handlers(chr, monitor_can_read, monitor_read,
|
||||||
monitor_event, mon);
|
monitor_event, mon);
|
||||||
|
|
|
@ -2558,6 +2558,13 @@ CharDriverState *qemu_chr_open(const char *label, const char *filename, void (*i
|
||||||
return chr;
|
return chr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void qemu_chr_set_echo(struct CharDriverState *chr, bool echo)
|
||||||
|
{
|
||||||
|
if (chr->chr_set_echo) {
|
||||||
|
chr->chr_set_echo(chr, echo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void qemu_chr_close(CharDriverState *chr)
|
void qemu_chr_close(CharDriverState *chr)
|
||||||
{
|
{
|
||||||
QTAILQ_REMOVE(&chardevs, chr, next);
|
QTAILQ_REMOVE(&chardevs, chr, next);
|
||||||
|
|
|
@ -64,6 +64,7 @@ struct CharDriverState {
|
||||||
void (*chr_send_event)(struct CharDriverState *chr, int event);
|
void (*chr_send_event)(struct CharDriverState *chr, int event);
|
||||||
void (*chr_close)(struct CharDriverState *chr);
|
void (*chr_close)(struct CharDriverState *chr);
|
||||||
void (*chr_accept_input)(struct CharDriverState *chr);
|
void (*chr_accept_input)(struct CharDriverState *chr);
|
||||||
|
void (*chr_set_echo)(struct CharDriverState *chr, bool echo);
|
||||||
void *opaque;
|
void *opaque;
|
||||||
QEMUBH *bh;
|
QEMUBH *bh;
|
||||||
char *label;
|
char *label;
|
||||||
|
@ -76,6 +77,7 @@ QemuOpts *qemu_chr_parse_compat(const char *label, const char *filename);
|
||||||
CharDriverState *qemu_chr_open_opts(QemuOpts *opts,
|
CharDriverState *qemu_chr_open_opts(QemuOpts *opts,
|
||||||
void (*init)(struct CharDriverState *s));
|
void (*init)(struct CharDriverState *s));
|
||||||
CharDriverState *qemu_chr_open(const char *label, const char *filename, void (*init)(struct CharDriverState *s));
|
CharDriverState *qemu_chr_open(const char *label, const char *filename, void (*init)(struct CharDriverState *s));
|
||||||
|
void qemu_chr_set_echo(struct CharDriverState *chr, bool echo);
|
||||||
void qemu_chr_close(CharDriverState *chr);
|
void qemu_chr_close(CharDriverState *chr);
|
||||||
void qemu_chr_printf(CharDriverState *s, const char *fmt, ...)
|
void qemu_chr_printf(CharDriverState *s, const char *fmt, ...)
|
||||||
GCC_FMT_ATTR(2, 3);
|
GCC_FMT_ATTR(2, 3);
|
||||||
|
|
Loading…
Reference in New Issue