summaryrefslogtreecommitdiff
path: root/net-wireless/compat-wireless/files/linville-aircrack-ng.patch
diff options
context:
space:
mode:
authorBlackNoxis <steven.darklight@gmail.com>2014-02-15 23:40:10 +0200
committerBlackNoxis <steven.darklight@gmail.com>2014-02-15 23:40:10 +0200
commit20a107748317091d1ac003f1cbb045928d07e684 (patch)
treebb7c9d0d400d06cf3abc0ba06830d587655c9c85 /net-wireless/compat-wireless/files/linville-aircrack-ng.patch
parent377b452f12024d39dd04b33d4376bf311607f806 (diff)
No audit programs here. deleting this sequence of ebuilds. will replace with compat and broadcom in a few moments
Diffstat (limited to 'net-wireless/compat-wireless/files/linville-aircrack-ng.patch')
-rw-r--r--net-wireless/compat-wireless/files/linville-aircrack-ng.patch61
1 files changed, 0 insertions, 61 deletions
diff --git a/net-wireless/compat-wireless/files/linville-aircrack-ng.patch b/net-wireless/compat-wireless/files/linville-aircrack-ng.patch
deleted file mode 100644
index 935b437e..00000000
--- a/net-wireless/compat-wireless/files/linville-aircrack-ng.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-This is the latest attempt to address the long-standing complaint from
-the aircrack-ng folks about being unable to change the channel on
-monitor interfaces. This version checks for the existance of other
-"active" interfaces and refuses the channel change if they are present.
-
- https://bugzilla.redhat.com/show_bug.cgi?id=654344
-
-Signed-off-by: John W. Linville <linville@tuxdriver.com>
----
- net/wireless/chan.c | 29 +++++++++++++++++++++++++++--
- 1 files changed, 27 insertions(+), 2 deletions(-)
-
-diff --git a/net/wireless/chan.c b/net/wireless/chan.c
-index 17cd0c0..d4add34 100644
---- a/net/wireless/chan.c
-+++ b/net/wireless/chan.c
-@@ -81,10 +81,32 @@ int cfg80211_set_freq(struct cfg80211_registered_device *rdev,
- enum nl80211_channel_type channel_type)
- {
- struct ieee80211_channel *chan;
-- int result;
-+ int result, active_intf_present = 0;
-+ struct wireless_dev *mon_wdev = NULL;
-+
-+ if (wdev && wdev->iftype == NL80211_IFTYPE_MONITOR) {
-+ mon_wdev = wdev;
-+
-+ ASSERT_RDEV_LOCK(rdev);
-+
-+ /* rdev->devlist_mtx locked by callers */
-+ list_for_each_entry(wdev, &rdev->netdev_list, list) {
-+ if (wdev && wdev != mon_wdev &&
-+ (wdev->iftype == NL80211_IFTYPE_ADHOC ||
-+ wdev->iftype == NL80211_IFTYPE_AP ||
-+ wdev->iftype == NL80211_IFTYPE_AP_VLAN ||
-+ wdev->iftype == NL80211_IFTYPE_MESH_POINT ||
-+ wdev->iftype == NL80211_IFTYPE_P2P_GO)) {
-+ active_intf_present = 1;
-+ break;
-+ }
-+ }
-+
-+ if (active_intf_present)
-+ return -EINVAL;
-
-- if (wdev && wdev->iftype == NL80211_IFTYPE_MONITOR)
- wdev = NULL;
-+ }
-
- if (wdev) {
- ASSERT_WDEV_LOCK(wdev);
-@@ -131,5 +153,8 @@ int cfg80211_set_freq(struct cfg80211_registered_device *rdev,
- if (wdev)
- wdev->channel = chan;
-
-+ if (mon_wdev)
-+ mon_wdev->channel = chan;
-+
- return 0;
- }
-