updated on Thu Jan 26 00:18:00 UTC 2012
[aur-mirror.git] / wlassistant / wlassistant-0.5.7-fd_cloexec.patch
blob1706b9505ddb17b1bf6beea9617e0701c0e002dd
1 diff -up wlassistant-0.5.7/src/watools.cpp.BAD wlassistant-0.5.7/src/watools.cpp
2 --- wlassistant-0.5.7/src/watools.cpp.BAD 2007-07-23 10:13:15.000000000 -0500
3 +++ wlassistant-0.5.7/src/watools.cpp 2007-07-23 10:16:48.000000000 -0500
4 @@ -23,6 +23,7 @@
5 #include <unistd.h> //provides readlink
6 #include <dirent.h>
7 #include <stdio.h> //to get values from /sys
8 +#include <fcntl.h>
9 #include <sys/types.h>
10 #include <sys/socket.h>
11 #include <arpa/inet.h> //inet_ntoa
12 @@ -178,6 +179,13 @@ int WATools::availableNetworks( const ch
13 _ifname = ifname;
14 if (iw_socket<0)
15 iw_socket = iw_sockets_open(); //get kernel socket
16 + int flags;
17 + flags = fcntl(iw_socket, F_GETFD);
18 + if (flags == -1)
19 + return 0;
20 + flags |= FD_CLOEXEC;
21 + if (fcntl(iw_socket, F_SETFD, flags) == -1)
22 + return 0;
23 if (iw_socket<0)
24 return 0;
26 @@ -264,6 +272,13 @@ int WATools::doRequest( int request, str
27 _ifname = ifname;
28 if (iw_socket<0)
29 iw_socket = iw_sockets_open(); //get kernel socket
30 + int flags;
31 + flags = fcntl(iw_socket, F_GETFD);
32 + if (flags == -1)
33 + return 0;
34 + flags |= FD_CLOEXEC;
35 + if (fcntl(iw_socket, F_SETFD, flags) == -1)
36 + return 0;
37 if (iw_socket<0)
38 return 0;
40 @@ -278,6 +293,13 @@ int WATools::doWirelessRequest( int requ
41 _ifname = ifname;
42 if (iw_socket<0)
43 iw_socket = iw_sockets_open(); //get kernel socket
44 + int flags;
45 + flags = fcntl(iw_socket, F_GETFD);
46 + if (flags == -1)
47 + return 0;
48 + flags |= FD_CLOEXEC;
49 + if (fcntl(iw_socket, F_SETFD, flags) == -1)
50 + return 0;
51 if (iw_socket<0)
52 return 0;
54 @@ -292,6 +314,13 @@ int WATools::doWirelessStatisticsRequest
55 _ifname = ifname;
56 if (iw_socket<0)
57 iw_socket = iw_sockets_open();//get kernel socket
58 + int flags;
59 + flags = fcntl(iw_socket, F_GETFD);
60 + if (flags == -1)
61 + return 0;
62 + flags |= FD_CLOEXEC;
63 + if (fcntl(iw_socket, F_SETFD, flags) == -1)
64 + return 0;
65 if (iw_socket<0)
66 return 0;