summary refs log tree commit diff stats
path: root/net.c
diff options
context:
space:
mode:
authorAnthony Liguori <aliguori@us.ibm.com>2011-12-12 10:08:08 -0600
committerAnthony Liguori <aliguori@us.ibm.com>2011-12-12 10:08:08 -0600
commit9bf4896e5d565785316d2c179be91fba11fbf3fb (patch)
tree4ac5f38e5f88949dbded2562db95ddb9253c28a2 /net.c
parent774d5c5b1604b8443a8e42048b370b6c95dbfc40 (diff)
parent3dc853832db7bf8ac3878e0666c639d3bc02b587 (diff)
downloadfocaccia-qemu-9bf4896e5d565785316d2c179be91fba11fbf3fb.tar.gz
focaccia-qemu-9bf4896e5d565785316d2c179be91fba11fbf3fb.zip
Merge remote-tracking branch 'qmp/queue/qmp' into staging
Diffstat (limited to 'net.c')
-rw-r--r--net.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/net.c b/net.c
index cb52050bfd..f7bebf8cc4 100644
--- a/net.c
+++ b/net.c
@@ -34,6 +34,7 @@
 #include "monitor.h"
 #include "qemu-common.h"
 #include "qemu_socket.h"
+#include "qmp-commands.h"
 #include "hw/qdev.h"
 #include "iov.h"
 
@@ -1258,12 +1259,10 @@ void do_info_network(Monitor *mon)
     }
 }
 
-int do_set_link(Monitor *mon, const QDict *qdict, QObject **ret_data)
+void qmp_set_link(const char *name, bool up, Error **errp)
 {
     VLANState *vlan;
     VLANClientState *vc = NULL;
-    const char *name = qdict_get_str(qdict, "name");
-    int up = qdict_get_bool(qdict, "up");
 
     QTAILQ_FOREACH(vlan, &vlans, next) {
         QTAILQ_FOREACH(vc, &vlan->clients, next) {
@@ -1280,8 +1279,8 @@ int do_set_link(Monitor *mon, const QDict *qdict, QObject **ret_data)
 done:
 
     if (!vc) {
-        qerror_report(QERR_DEVICE_NOT_FOUND, name);
-        return -1;
+        error_set(errp, QERR_DEVICE_NOT_FOUND, name);
+        return;
     }
 
     vc->link_down = !up;
@@ -1300,7 +1299,6 @@ done:
     if (vc->peer && vc->peer->info->link_status_changed) {
         vc->peer->info->link_status_changed(vc->peer);
     }
-    return 0;
 }
 
 void net_cleanup(void)