From: Giuseppe Lettieri Date: Fri, 28 Sep 2012 16:07:10 +0000 (+0200) Subject: fix file descriptor leakages X-Git-Tag: sliver-openvswitch-1.8.90-4~2 X-Git-Url: http://git.onelab.eu/?p=sliver-openvswitch.git;a=commitdiff_plain;h=cce22fcf537256177e59ecd492002cb58f77bd25 fix file descriptor leakages --- diff --git a/lib/netdev-pltap.c b/lib/netdev-pltap.c index c9252e50e..6c36e96d8 100644 --- a/lib/netdev-pltap.c +++ b/lib/netdev-pltap.c @@ -467,6 +467,7 @@ get_etheraddr(const char *netdev_name, uint8_t ea[ETH_ADDR_LEN]) VLOG(errno == ENODEV ? VLL_INFO : VLL_ERR, "ioctl(SIOCGIFHWADDR) on %s device failed: %s", netdev_name, strerror(errno)); + close(af_inet_sock); return errno; } hwaddr_family = ifr.ifr_hwaddr.sa_family; @@ -475,6 +476,7 @@ get_etheraddr(const char *netdev_name, uint8_t ea[ETH_ADDR_LEN]) netdev_name, hwaddr_family); } memcpy(ea, ifr.ifr_hwaddr.sa_data, ETH_ADDR_LEN); + close(af_inet_sock); return 0; } diff --git a/lib/tunalloc.c b/lib/tunalloc.c index 1f083e517..4cb2f8e61 100644 --- a/lib/tunalloc.c +++ b/lib/tunalloc.c @@ -97,5 +97,8 @@ int tun_alloc(int iftype, char *if_name) } remotefd = receive_vif_fd(control_fd, if_name); + + close(control_fd); + return remotefd; }