Monitor: Convert do_info() to cmd_new_ret()

Note that this function only fails in QMP, in the user Monitor
it prints the help text instead.

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Luiz Capitulino 2010-02-10 23:50:00 -02:00 committed by Anthony Liguori
parent fe38a32acc
commit 4fdc94b406
2 changed files with 6 additions and 4 deletions

View File

@ -556,7 +556,7 @@ static void user_async_info_handler(Monitor *mon, const mon_cmd_t *cmd)
}
}
static void do_info(Monitor *mon, const QDict *qdict, QObject **ret_data)
static int do_info(Monitor *mon, const QDict *qdict, QObject **ret_data)
{
const mon_cmd_t *cmd;
const char *item = qdict_get_try_str(qdict, "item");
@ -574,7 +574,7 @@ static void do_info(Monitor *mon, const QDict *qdict, QObject **ret_data)
if (cmd->name == NULL) {
if (monitor_ctrl_mode(mon)) {
qemu_error_new(QERR_COMMAND_NOT_FOUND, item);
return;
return -1;
}
goto help;
}
@ -606,15 +606,17 @@ static void do_info(Monitor *mon, const QDict *qdict, QObject **ret_data)
if (monitor_ctrl_mode(mon)) {
/* handler not converted yet */
qemu_error_new(QERR_COMMAND_NOT_FOUND, item);
return -1;
} else {
cmd->mhandler.info(mon);
}
}
return;
return 0;
help:
help_cmd(mon, "info");
return 0;
}
static void do_info_version_print(Monitor *mon, const QObject *data)

View File

@ -43,7 +43,7 @@ ETEXI
.params = "[subcommand]",
.help = "show various information about the system state",
.user_print = monitor_user_noop,
.mhandler.cmd_new = do_info,
.cmd_new_ret = do_info,
},
STEXI