tunnel: fix warning
[sliver-openvswitch.git] / lib / netdev-tunnel.c
index b197e53..5443a2d 100644 (file)
@@ -121,7 +121,8 @@ netdev_tunnel_construct(struct netdev *netdev_)
     netdev->connected = false;
 
 
-    netdev->sockfd = inet_open_passive(SOCK_DGRAM, "", 0, &netdev->local_addr, 0);
+    netdev->sockfd = inet_open_passive(SOCK_DGRAM, "", 0,
+        (struct sockaddr_storage *)&netdev->local_addr, 0);
     if (netdev->sockfd < 0) {
        return netdev->sockfd;
     }
@@ -271,7 +272,7 @@ netdev_tunnel_rx_recv(struct netdev_rx *rx_, struct ofpbuf *buffer)
     struct netdev_tunnel *netdev =
         netdev_tunnel_cast(rx_->netdev);
     if (!netdev->connected)
-        return -EAGAIN;
+        return EAGAIN;
     for (;;) {
         ssize_t retval;
         retval = recv(rx->fd, buffer->data, size, MSG_TRUNC);
@@ -281,11 +282,12 @@ netdev_tunnel_rx_recv(struct netdev_rx *rx_, struct ofpbuf *buffer)
                netdev->stats.rx_packets++;
                netdev->stats.rx_bytes += retval;
             if (retval <= size) {
-                   return retval;
+                buffer->size += retval;
+                   return 0;
             } else {
                 netdev->stats.rx_errors++;
                 netdev->stats.rx_length_errors++;
-                return -EMSGSIZE;
+                return EMSGSIZE;
             }
         } else if (errno != EINTR) {
             if (errno != EAGAIN) {
@@ -293,7 +295,7 @@ netdev_tunnel_rx_recv(struct netdev_rx *rx_, struct ofpbuf *buffer)
                     netdev_rx_get_name(rx_), ovs_strerror(errno));
                    netdev->stats.rx_errors++;
             }
-            return -errno;
+            return errno;
         }
     }
 }
@@ -452,18 +454,6 @@ out:
     return error;
 }
 
-static unsigned int
-netdev_tunnel_change_seq(const struct netdev *netdev_)
-{
-    struct netdev_tunnel *netdev = netdev_tunnel_cast(netdev_);
-    unsigned int change_seq;
-
-
-    ovs_mutex_lock(&netdev->mutex);
-    change_seq = netdev->change_seq;
-    ovs_mutex_unlock(&netdev->mutex);
-    return change_seq;
-}
 \f
 /* Helper functions. */