From 57f9ef173d940ec5c2d04a9d1a37b4c86c9f5b27 Mon Sep 17 00:00:00 2001 From: Mark McLoughlin Date: Wed, 25 Nov 2009 18:49:31 +0000 Subject: net: add qemu_foreach_nic() Signed-off-by: Mark McLoughlin Signed-off-by: Anthony Liguori --- net.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'net.c') diff --git a/net.c b/net.c index a1ec2437fc..c71699de29 100644 --- a/net.c +++ b/net.c @@ -326,6 +326,26 @@ qemu_find_vlan_client_by_name(Monitor *mon, int vlan_id, return vc; } +void qemu_foreach_nic(qemu_nic_foreach func, void *opaque) +{ + VLANClientState *nc; + VLANState *vlan; + + QTAILQ_FOREACH(nc, &non_vlan_clients, next) { + if (nc->info->type == NET_CLIENT_TYPE_NIC) { + func(DO_UPCAST(NICState, nc, nc), opaque); + } + } + + QTAILQ_FOREACH(vlan, &vlans, next) { + QTAILQ_FOREACH(nc, &vlan->clients, next) { + if (nc->info->type == NET_CLIENT_TYPE_NIC) { + func(DO_UPCAST(NICState, nc, nc), opaque); + } + } + } +} + int qemu_can_send_packet(VLANClientState *sender) { VLANState *vlan = sender->vlan; -- cgit v1.2.1