From 5320c3dd1742668e9de7311d6cfe185b2292f26f Mon Sep 17 00:00:00 2001 From: Giuseppe Lettieri Date: Tue, 1 May 2012 10:25:59 +0000 Subject: [PATCH] tap_pl: fixed behaviour in send Open vSwitch checks for type "tap" sometimes by string comparison of the class name and sometimes by equality of class pointers. I missed one of the latter. --- lib/netdev-linux.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c index a8d743814..e0d749f0b 100644 --- a/lib/netdev-linux.c +++ b/lib/netdev-linux.c @@ -866,7 +866,8 @@ netdev_linux_recv(struct netdev *netdev_, void *data, size_t size) for (;;) { ssize_t retval; - retval = (netdev_->netdev_dev->netdev_class == &netdev_tap_class + retval = ((netdev_->netdev_dev->netdev_class == &netdev_tap_class || + netdev_->netdev_dev->netdev_class == &netdev_tap_pl_class) ? read(netdev->fd, data, size) : recv(netdev->fd, data, size, MSG_TRUNC)); if (retval >= 0) { -- 2.43.0