File 0001-Do-not-leak-sockets-in-NetworkInterface-isWireless.patch of Package kdelibs4.openSUSE_12.3_Update
From 6e3827c37add0cb92cd5a05319911a0d175c1228 Mon Sep 17 00:00:00 2001
From: "Lamarque V. Souza" <lamarque@kde.org>
Date: Sun, 22 Sep 2013 09:32:24 -0300
Subject: [PATCH 1/1] Do not leak sockets in NetworkInterface::isWireless().
BUG: 324954
REVIEW: 112869
FIXED-IN: 4.11.2
(cherry picked from commit 0fe1144113042e6e5bea49b112bedae91f60d78b)
---
solid/solid/backends/udev/udevnetworkinterface.cpp | 3 +++
1 file changed, 3 insertions(+)
diff --git a/solid/solid/backends/udev/udevnetworkinterface.cpp b/solid/solid/backends/udev/udevnetworkinterface.cpp
index 06dc907..cf9c737 100644
--- a/solid/solid/backends/udev/udevnetworkinterface.cpp
+++ b/solid/solid/backends/udev/udevnetworkinterface.cpp
@@ -25,6 +25,7 @@
#include <sys/socket.h>
#include <sys/ioctl.h>
#include <sys/stat.h>
+#include <unistd.h>
#include <linux/if_arp.h>
#include <linux/wireless.h>
@@ -67,8 +68,10 @@ bool NetworkInterface::isWireless() const
QFileInfo phyDir(m_device->deviceName() + "/phy80211");
if ((ioctl (ioctl_fd, SIOCGIWNAME, &iwr) == 0) || phyDir.isDir()) {
+ close(ioctl_fd);
return true;
}
+ close(ioctl_fd);
}
return false;
}
--
1.8.4.1