From: Markus Armbruster Date: Fri, 26 Mar 2010 08:07:11 +0000 (+0100) Subject: monitor: Convert do_set_link() to QObject, QError X-Git-Tag: v0.13.0-rc0~763 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5369e3c0b8997210a2558191d8451775f7643683;p=thirdparty%2Fqemu.git monitor: Convert do_set_link() to QObject, QError Signed-off-by: Markus Armbruster Signed-off-by: Luiz Capitulino --- diff --git a/net.c b/net.c index cdba8f3571c..378edfccd0f 100644 --- a/net.c +++ b/net.c @@ -1271,7 +1271,7 @@ void do_info_network(Monitor *mon) } } -void do_set_link(Monitor *mon, const QDict *qdict) +int do_set_link(Monitor *mon, const QDict *qdict, QObject **ret_data) { VLANState *vlan; VLANClientState *vc = NULL; @@ -1289,8 +1289,8 @@ void do_set_link(Monitor *mon, const QDict *qdict) done: if (!vc) { - monitor_printf(mon, "could not find network device '%s'\n", name); - return; + qerror_report(QERR_DEVICE_NOT_FOUND, name); + return -1; } vc->link_down = !up; @@ -1298,6 +1298,7 @@ done: if (vc->info->link_status_changed) { vc->info->link_status_changed(vc); } + return 0; } void net_cleanup(void) diff --git a/net.h b/net.h index 9f3c82fed58..b83f6153466 100644 --- a/net.h +++ b/net.h @@ -118,7 +118,7 @@ int qemu_find_nic_model(NICInfo *nd, const char * const *models, const char *default_model); void do_info_network(Monitor *mon); -void do_set_link(Monitor *mon, const QDict *qdict); +int do_set_link(Monitor *mon, const QDict *qdict, QObject **ret_data); /* NIC info */ diff --git a/qemu-monitor.hx b/qemu-monitor.hx index 7b7dcf545ab..62fa3465b3d 100644 --- a/qemu-monitor.hx +++ b/qemu-monitor.hx @@ -989,7 +989,8 @@ ETEXI .args_type = "name:s,up:b", .params = "name on|off", .help = "change the link status of a network adapter", - .mhandler.cmd = do_set_link, + .user_print = monitor_user_noop, + .mhandler.cmd_new = do_set_link, }, STEXI