qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 2/2] net: Dump client type 'info network'


From: Jan Kiszka
Subject: [Qemu-devel] [PATCH 2/2] net: Dump client type 'info network'
Date: Tue, 17 May 2011 19:05:41 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666

Include the client type name into the output of 'info network'. The
result looks like this:

(qemu) info network
VLAN 0 devices:
  rtl8139.0 (NIC): model=rtl8139,macaddr=52:54:00:12:34:57
Devices not on any VLAN:
  virtio-net-pci.0 (NIC): model=virtio-net-pci,macaddr=52:54:00:12:34:56
   \ network1 (tap): fd=5

Signed-off-by: Jan Kiszka <address@hidden>
---
 net.c |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/net.c b/net.c
index 606ce70..a4ee6b1 100644
--- a/net.c
+++ b/net.c
@@ -1223,6 +1223,15 @@ int do_netdev_del(Monitor *mon, const QDict *qdict, 
QObject **ret_data)
 
 void do_info_network(Monitor *mon)
 {
+    static const char *typename[] = {
+        [NET_CLIENT_TYPE_NONE]   = "none",
+        [NET_CLIENT_TYPE_NIC]    = "NIC",
+        [NET_CLIENT_TYPE_SLIRP]  = "user IPv4",
+        [NET_CLIENT_TYPE_TAP]    = "tap",
+        [NET_CLIENT_TYPE_SOCKET] = "socket",
+        [NET_CLIENT_TYPE_VDE]    = "VDE",
+        [NET_CLIENT_TYPE_DUMP]   = "dump",
+    };
     VLANState *vlan;
     VLANClientState *vc, *peer;
     net_client_type type;
@@ -1231,7 +1240,8 @@ void do_info_network(Monitor *mon)
         monitor_printf(mon, "VLAN %d devices:\n", vlan->id);
 
         QTAILQ_FOREACH(vc, &vlan->clients, next) {
-            monitor_printf(mon, "  %s: %s\n", vc->name, vc->info_str);
+            monitor_printf(mon, "  %s (%s): %s\n", vc->name,
+                           typename[vc->info->type], vc->info_str);
         }
     }
     monitor_printf(mon, "Devices not on any VLAN:\n");
@@ -1239,10 +1249,12 @@ void do_info_network(Monitor *mon)
         peer = vc->peer;
         type = vc->info->type;
         if (!peer || type == NET_CLIENT_TYPE_NIC) {
-            monitor_printf(mon, "  %s: %s\n", vc->name, vc->info_str);
+            monitor_printf(mon, "  %s (%s): %s\n", vc->name, typename[type],
+                           vc->info_str);
         }
         if (peer && type == NET_CLIENT_TYPE_NIC) {
-            monitor_printf(mon, "   \\ %s: %s\n", peer->name, peer->info_str);
+            monitor_printf(mon, "   \\ %s (%s): %s\n", peer->name,
+                           typename[peer->info->type], peer->info_str);
         }
     }
 }
-- 
1.7.1



reply via email to

[Prev in Thread] Current Thread [Next in Thread]