提交 a9ce8590 编写于 作者: B bellard

info vnc command (Anthony Liguori)


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2391 c046a42c-6fe2-441c-8c8c-71466251a162
上级 564c337e
...@@ -1297,6 +1297,8 @@ static term_cmd_t info_cmds[] = { ...@@ -1297,6 +1297,8 @@ static term_cmd_t info_cmds[] = {
"", "show the currently saved VM snapshots" }, "", "show the currently saved VM snapshots" },
{ "mice", "", do_info_mice, { "mice", "", do_info_mice,
"", "show which guest mouse is receiving events" }, "", "show which guest mouse is receiving events" },
{ "vnc", "", do_info_vnc,
"", "show the vnc server status"},
{ NULL, NULL, }, { NULL, NULL, },
}; };
......
...@@ -909,6 +909,7 @@ void cocoa_display_init(DisplayState *ds, int full_screen); ...@@ -909,6 +909,7 @@ void cocoa_display_init(DisplayState *ds, int full_screen);
/* vnc.c */ /* vnc.c */
void vnc_display_init(DisplayState *ds, const char *display); void vnc_display_init(DisplayState *ds, const char *display);
void do_info_vnc(void);
/* x_keymap.c */ /* x_keymap.c */
extern uint8_t _translate_keycode(const int key); extern uint8_t _translate_keycode(const int key);
......
...@@ -73,6 +73,8 @@ struct VncState ...@@ -73,6 +73,8 @@ struct VncState
int last_x; int last_x;
int last_y; int last_y;
const char *display;
Buffer output; Buffer output;
Buffer input; Buffer input;
kbd_layout_t *kbd_layout; kbd_layout_t *kbd_layout;
...@@ -90,6 +92,24 @@ struct VncState ...@@ -90,6 +92,24 @@ struct VncState
uint8_t modifiers_state[256]; uint8_t modifiers_state[256];
}; };
static VncState *vnc_state; /* needed for info vnc */
void do_info_vnc(void)
{
if (vnc_state == NULL)
term_printf("VNC server disabled\n");
else {
term_printf("VNC server active on: ");
term_print_filename(vnc_state->display);
term_printf("\n");
if (vnc_state->csock == -1)
term_printf("No client connected\n");
else
term_printf("Client connected\n");
}
}
/* TODO /* TODO
1) Get the queue working for IO. 1) Get the queue working for IO.
2) there is some weirdness when using the -S option (the screen is grey 2) there is some weirdness when using the -S option (the screen is grey
...@@ -1150,6 +1170,8 @@ void vnc_display_init(DisplayState *ds, const char *arg) ...@@ -1150,6 +1170,8 @@ void vnc_display_init(DisplayState *ds, const char *arg)
exit(1); exit(1);
ds->opaque = vs; ds->opaque = vs;
vnc_state = vs;
vs->display = arg;
vs->lsock = -1; vs->lsock = -1;
vs->csock = -1; vs->csock = -1;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册