diff mbox

[13/18] net: insert event-tap to qemu_send_packet() and qemu_sendv_packet_async().

Message ID 1303729257-9034-14-git-send-email-ohmura.kei@lab.ntt.co.jp
State New
Headers show

Commit Message

OHMURA Kei April 25, 2011, 11 a.m. UTC
From: Yoshiaki Tamura <tamura.yoshiaki@lab.ntt.co.jp>

event-tap function is called only when it is on.

Signed-off-by: Yoshiaki Tamura <tamura.yoshiaki@lab.ntt.co.jp>
Signed-off-by: OHMURA Kei <ohmura.kei@lab.ntt.co.jp>
---
 net.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)
diff mbox

Patch

diff --git a/net.c b/net.c
index 4f777c3..8bcc504 100644
--- a/net.c
+++ b/net.c
@@ -36,6 +36,7 @@ 
 #include "qemu_socket.h"
 #include "hw/qdev.h"
 #include "iov.h"
+#include "event-tap.h"
 
 static QTAILQ_HEAD(, VLANState) vlans;
 static QTAILQ_HEAD(, VLANClientState) non_vlan_clients;
@@ -518,6 +519,10 @@  ssize_t qemu_send_packet_async(VLANClientState *sender,
 
 void qemu_send_packet(VLANClientState *vc, const uint8_t *buf, int size)
 {
+    if (event_tap_is_on()) {
+        return event_tap_send_packet(vc, buf, size);
+    }
+
     qemu_send_packet_async(vc, buf, size, NULL);
 }
 
@@ -599,6 +604,10 @@  ssize_t qemu_sendv_packet_async(VLANClientState *sender,
 {
     NetQueue *queue;
 
+    if (event_tap_is_on()) {
+        return event_tap_sendv_packet_async(sender, iov, iovcnt, sent_cb);
+    }
+
     if (sender->link_down || (!sender->peer && !sender->vlan)) {
         return iov_size(iov, iovcnt);
     }