convert windows console chardev to QemuOpts.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Gerd Hoffmann 2009-09-10 10:58:47 +02:00 committed by Anthony Liguori
parent dc1c21e60c
commit d6c983cdad
1 changed files with 6 additions and 4 deletions

View File

@ -1701,7 +1701,7 @@ static CharDriverState *qemu_chr_open_win_file(HANDLE fd_out)
return chr; return chr;
} }
static CharDriverState *qemu_chr_open_win_con(const char *filename) static CharDriverState *qemu_chr_open_win_con(QemuOpts *opts)
{ {
return qemu_chr_open_win_file(GetStdHandle(STD_OUTPUT_HANDLE)); return qemu_chr_open_win_file(GetStdHandle(STD_OUTPUT_HANDLE));
} }
@ -2234,6 +2234,10 @@ static QemuOpts *qemu_chr_parse_compat(const char *label, const char *filename)
qemu_opt_set(opts, "backend", filename); qemu_opt_set(opts, "backend", filename);
return opts; return opts;
} }
if (strcmp(filename, "con:") == 0) {
qemu_opt_set(opts, "backend", "console");
return opts;
}
if (strstart(filename, "file:", &p)) { if (strstart(filename, "file:", &p)) {
qemu_opt_set(opts, "backend", "file"); qemu_opt_set(opts, "backend", "file");
qemu_opt_set(opts, "path", p); qemu_opt_set(opts, "path", p);
@ -2285,6 +2289,7 @@ static const struct {
#ifdef _WIN32 #ifdef _WIN32
{ .name = "file", .open = qemu_chr_open_win_file_out }, { .name = "file", .open = qemu_chr_open_win_file_out },
{ .name = "pipe", .open = qemu_chr_open_win_pipe }, { .name = "pipe", .open = qemu_chr_open_win_pipe },
{ .name = "console", .open = qemu_chr_open_win_con },
#else #else
{ .name = "file", .open = qemu_chr_open_file_out }, { .name = "file", .open = qemu_chr_open_file_out },
{ .name = "pipe", .open = qemu_chr_open_pipe }, { .name = "pipe", .open = qemu_chr_open_pipe },
@ -2381,9 +2386,6 @@ CharDriverState *qemu_chr_open(const char *label, const char *filename, void (*i
if (strstart(filename, "COM", NULL)) { if (strstart(filename, "COM", NULL)) {
chr = qemu_chr_open_win(filename); chr = qemu_chr_open_win(filename);
} else } else
if (strstart(filename, "con:", NULL)) {
chr = qemu_chr_open_win_con(filename);
} else
#endif #endif
{ {
chr = NULL; chr = NULL;