From 24954b1c13e839c211ca12ab64e84da68fe22659 Mon Sep 17 00:00:00 2001
From: James Meyer <james.meyer@operamail.com>
Date: Sun, 16 Feb 2014 18:02:46 -0600
Subject: wireless_tools, wpa_actiond, wpa_supplicant: update binary path to
 /usr/bin refs #961

---
 abs/core/wireless_tools/PKGBUILD    | 23 +++++++-----
 abs/core/wireless_tools/dense.patch | 49 +++++++++++++++++++++++++
 abs/core/wpa_actiond/PKGBUILD       | 14 ++++----
 abs/core/wpa_supplicant/PKGBUILD    | 22 ++++++------
 abs/core/wpa_supplicant/config      | 71 +++++++++++++++++++++++++++++++++++--
 5 files changed, 150 insertions(+), 29 deletions(-)
 create mode 100644 abs/core/wireless_tools/dense.patch

diff --git a/abs/core/wireless_tools/PKGBUILD b/abs/core/wireless_tools/PKGBUILD
index cb6de3c..57ba757 100644
--- a/abs/core/wireless_tools/PKGBUILD
+++ b/abs/core/wireless_tools/PKGBUILD
@@ -1,27 +1,34 @@
-# $Id: PKGBUILD 147661 2012-01-26 03:32:18Z bisson $
+# $Id: PKGBUILD 186266 2013-05-23 06:41:05Z bisson $
 # Maintainer: Gaetan Bisson <bisson@archlinux.org>
 # Contributor: Giovanni Scafora <giovanni@archlinux.org>
 # Contributor: Jason Chu <jchu@xentac.net>
 
 pkgname=wireless_tools
 pkgver=29
-pkgrel=6
-pkgdesc='Wireless Tools'
+pkgrel=8
+pkgdesc='Tools allowing to manipulate the Wireless Extensions'
 url='http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html'
-arch=('i686' 'x86_64')
 license=('GPL')
-source=("http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/${pkgname}.${pkgver}.tar.gz")
-sha1sums=('22040ac1497f4c5f8ddeca365591b01ae3475710')
+arch=('i686' 'x86_64')
+source=("http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/${pkgname}.${pkgver}.tar.gz"
+        'dense.patch')
+sha1sums=('22040ac1497f4c5f8ddeca365591b01ae3475710'
+          '5c297c7dff1ec1d2a3d918c20622ab3c6daf5b72')
+
+prepare() {
+	cd "${srcdir}/${pkgname}.${pkgver}"
+	patch -p1 -i ../dense.patch # FS#15363
+}
 
 build() {
 	cd "${srcdir}/${pkgname}.${pkgver}"
-	make CFLAGS="${CFLAGS} -Wall -Wextra -I." LDFLAGS="${LDFLAGS}"
+	make CFLAGS="${CFLAGS} -I." LDFLAGS="${LDFLAGS}"
 }
 
 package() {
 	cd "${srcdir}/${pkgname}.${pkgver}"
 	make \
-		INSTALL_DIR="${pkgdir}/usr/sbin" \
+		INSTALL_DIR="${pkgdir}/usr/bin" \
 		INSTALL_LIB="${pkgdir}/usr/lib" \
 		INSTALL_INC="${pkgdir}/usr/include" \
 		INSTALL_MAN="${pkgdir}/usr/share/man" \
diff --git a/abs/core/wireless_tools/dense.patch b/abs/core/wireless_tools/dense.patch
new file mode 100644
index 0000000..85182cd
--- /dev/null
+++ b/abs/core/wireless_tools/dense.patch
@@ -0,0 +1,49 @@
+The length field of wext data (iw_point.data) is 16 bits. The largest
+value is thus 65535. During the attempts to increase buffer size the
+buffer starts at 4096 and is doubled after each failure to fill. From the
+time this length reaches 65536 it is effectively zero. We thus loose all
+potential space from 32768 to 65535.
+
+This problem is clear when scanning in a RF dense environment.
+
+Without this patch:
+~$ iwlist wlan0 scan
+print_scanning_info: Allocation failed
+
+With this patch:
+~$ iwlist wlan0 scan | grep Cell | wc -l
+86
+
+Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
+
+---
+A similar patch was recently created to fix wpa_supplicant.
+
+I could not find a source code repo for this code and created this patch
+against version 30-pre7 downloaded from 
+http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
+
+diff -uprN wireless_tools_org/wireless_tools.30/iwlist.c wireless_tools.30/iwlist.c
+--- wireless_tools_org/wireless_tools.30/iwlist.c	2008-01-16 17:45:41.000000000 -0800
++++ wireless_tools.30/iwlist.c	2009-02-12 14:16:48.000000000 -0800
+@@ -800,7 +800,7 @@ print_scanning_info(int		skfd,
+ 	  if(iw_get_ext(skfd, ifname, SIOCGIWSCAN, &wrq) < 0)
+ 	    {
+ 	      /* Check if buffer was too small (WE-17 only) */
+-	      if((errno == E2BIG) && (range.we_version_compiled > 16))
++	      if((errno == E2BIG) && (range.we_version_compiled > 16) && (buflen < 65535))
+ 		{
+ 		  /* Some driver may return very large scan results, either
+ 		   * because there are many cells, or because they have many
+@@ -816,6 +816,10 @@ print_scanning_info(int		skfd,
+ 		  else
+ 		    buflen *= 2;
+ 
++		  /* wrq.u.data.length is 16 bits so max size is 65535 */
++		  if(buflen > 65535)
++		    buflen = 65535;
++
+ 		  /* Try again */
+ 		  goto realloc;
+ 		}
+
diff --git a/abs/core/wpa_actiond/PKGBUILD b/abs/core/wpa_actiond/PKGBUILD
index ea23e8b..f233fd5 100644
--- a/abs/core/wpa_actiond/PKGBUILD
+++ b/abs/core/wpa_actiond/PKGBUILD
@@ -1,15 +1,17 @@
-# $Id: PKGBUILD 155389 2012-04-03 08:18:09Z thomas $
+# $Id: PKGBUILD 187047 2013-06-03 11:15:41Z allan $
 # Maintainer: Thomas Bächler <thomas@archlinux.org>
 pkgname=wpa_actiond
-pkgver=1.2
-pkgrel=1
+pkgver=1.4
+pkgrel=2
 pkgdesc="Daemon that connects to wpa_supplicant and handles connect and disconnect events"
 arch=('i686' 'x86_64')
 url="http://projects.archlinux.org/wpa_actiond.git/"
 license=('GPL')
 depends=('glibc' 'wpa_supplicant')
-source=(ftp://ftp.archlinux.org/other/wpa_actiond/${pkgname}-${pkgver}.tar.xz)
-sha256sums=('578efa1141fbf1acb56efff8061f4ac7ab99f257f8a3e1588db51a8ce77ac2b5')
+source=(ftp://ftp.archlinux.org/other/wpa_actiond/${pkgname}-${pkgver}.tar.xz
+        ftp://ftp.archlinux.org/other/wpa_actiond/${pkgname}-${pkgver}.tar.xz.sig)
+sha256sums=('e0e65e7c52a32796a0ff855ab18aa0b237d6b9afc87d4008c0380735abcb1a54'
+            'fb026e76979e3bb78dfb38ddc01b9cd57dc0885c9965d2e60c4d8a0ec95d6b74')
 
 build() {
   cd "${srcdir}/${pkgname}-${pkgver}"
@@ -20,6 +22,6 @@ build() {
 package() {
   cd "${srcdir}/${pkgname}-${pkgver}"
   
-  install -D -m755 wpa_actiond "${pkgdir}/usr/sbin/wpa_actiond"
+  install -D -m755 wpa_actiond "${pkgdir}/usr/bin/wpa_actiond"
 }
 # vim:set ts=2 sw=2 et:
diff --git a/abs/core/wpa_supplicant/PKGBUILD b/abs/core/wpa_supplicant/PKGBUILD
index 5a7db18..9b73f77 100644
--- a/abs/core/wpa_supplicant/PKGBUILD
+++ b/abs/core/wpa_supplicant/PKGBUILD
@@ -1,29 +1,21 @@
-# $Id: PKGBUILD 162909 2012-07-03 19:16:48Z dreisner $
+# $Id: PKGBUILD 187048 2013-06-03 11:15:42Z allan $
 # Maintainer: Thomas Bächler <thomas@archlinux.org>
 
 pkgname=wpa_supplicant
-pkgver=1.0
-pkgrel=1
+pkgver=2.0
+pkgrel=4
 pkgdesc="A utility providing key negotiation for WPA wireless networks"
 url="http://hostap.epitest.fi/wpa_supplicant"
 arch=('i686' 'x86_64')
 depends=('openssl' 'dbus-core' 'readline' 'libnl')
 optdepends=('wpa_supplicant_gui: wpa_gui program')
 license=('GPL')
-groups=('base')
 backup=('etc/wpa_supplicant/wpa_supplicant.conf')
 source=("http://w1.fi/releases/${pkgname}-${pkgver}.tar.gz"
-	config hostap_allow-linking-with-libnl-3.2.patch)
-md5sums=('8650f6aa23646ef634402552d0669640'
-         '380d8d1fe24bccb2a2636cb2a6038c39'
-         '473fb6b77909ec5a50b6f4d91370e86b')
+	config)
 
 build() {
   cd "${srcdir}/${pkgname}-${pkgver}/"
-
-  # from fedora
-  patch -Np1 -i "$srcdir/hostap_allow-linking-with-libnl-3.2.patch"
-
   cd "${pkgname}"
 
   cp "${srcdir}/config" ./.config
@@ -53,4 +45,10 @@ package() {
 
   install -d -m755 "${pkgdir}/usr/lib/systemd/system"
   install -m644 systemd/*.service "${pkgdir}/usr/lib/systemd/system/"
+
+  # usrmove
+  cd "$pkgdir"/usr
+  mv sbin bin
 }
+md5sums=('3be2ebfdcced52e00eda0afe2889839d'
+         '4aa1e5accd604091341b989b47fe1076')
diff --git a/abs/core/wpa_supplicant/config b/abs/core/wpa_supplicant/config
index 59da1e2..50426bf 100644
--- a/abs/core/wpa_supplicant/config
+++ b/abs/core/wpa_supplicant/config
@@ -204,6 +204,8 @@ CONFIG_WPS=y
 # Disable credentials for an open network by default when acting as a WPS
 # registrar.
 #CONFIG_WPS_REG_DISABLE_OPEN=y
+# Enable WPS support with NFC config method
+CONFIG_WPS_NFC=y
 
 # EAP-IKEv2
 #CONFIG_EAP_IKEV2=y
@@ -220,6 +222,9 @@ CONFIG_SMARTCARD=y
 # Enable this if EAP-SIM or EAP-AKA is included
 #CONFIG_PCSC=y
 
+# Support HT overrides (disable HT/HT40, mask MCS rates, etc.)
+CONFIG_HT_OVERRIDES=y
+
 # Development testing
 #CONFIG_EAPOL_TEST=y
 
@@ -227,6 +232,7 @@ CONFIG_SMARTCARD=y
 # unix = UNIX domain sockets (default for Linux/*BSD)
 # udp = UDP sockets using localhost (127.0.0.1)
 # named_pipe = Windows Named Pipe (default for Windows)
+# udp-remote = UDP sockets with remote access (only for tests systems/purpose)
 # y = use default (backwards compatibility)
 # If this option is commented out, control interface is not included in the
 # build.
@@ -303,6 +309,9 @@ CONFIG_BACKEND=file
 # eloop_none = Empty template
 #CONFIG_ELOOP=eloop
 
+# Should we use poll instead of select? Select is used by default.
+#CONFIG_ELOOP_POLL=y
+
 # Select layer 2 packet implementation
 # linux = Linux packet socket (default)
 # pcap = libpcap/libdnet/WinPcap
@@ -315,9 +324,7 @@ CONFIG_BACKEND=file
 # PeerKey handshake for Station to Station Link (IEEE 802.11e DLS)
 CONFIG_PEERKEY=y
 
-# IEEE 802.11w (management frame protection)
-# This version is an experimental implementation based on IEEE 802.11w/D1.0
-# draft and is subject to change since the standard has not yet been finalized.
+# IEEE 802.11w (management frame protection), also known as PMF
 # Driver support is also needed for IEEE 802.11w.
 #CONFIG_IEEE80211W=y
 
@@ -335,6 +342,13 @@ CONFIG_PEERKEY=y
 # sent prior to negotiating which version will be used)
 #CONFIG_TLSV11=y
 
+# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.2)
+# can be enabled to enable use of stronger crypto algorithms. It should be
+# noted that some existing TLS v1.0 -based implementation may not be compatible
+# with TLS v1.2 message (ClientHello is sent prior to negotiating which version
+# will be used)
+#CONFIG_TLSV12=y
+
 # If CONFIG_TLS=internal is used, additional library and include paths are
 # needed for LibTomMath. Alternatively, an integrated, minimal version of
 # LibTomMath can be used. See beginning of libtommath.c for details on benefits
@@ -400,6 +414,12 @@ CONFIG_DEBUG_FILE=y
 # Set syslog facility for debug messages
 #CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
 
+# Add support for sending all debug messages (regardless of debug verbosity)
+# to the Linux kernel tracing facility. This helps debug the entire stack by
+# making it easy to record everything happening from the driver up into the
+# same file, e.g., using trace-cmd.
+#CONFIG_DEBUG_LINUX_TRACING=y
+
 # Enable privilege separation (see README 'Privilege separation' for details)
 #CONFIG_PRIVSEP=y
 
@@ -459,10 +479,55 @@ CONFIG_NO_RANDOM_POOL=y
 # IEEE 802.11n (High Throughput) support (mainly for AP mode)
 #CONFIG_IEEE80211N=y
 
+# Wireless Network Management (IEEE Std 802.11v-2011)
+# Note: This is experimental and not complete implementation.
+#CONFIG_WNM=y
+
 # Interworking (IEEE 802.11u)
 # This can be used to enable functionality to improve interworking with
 # external networks (GAS/ANQP to learn more about the networks and network
 # selection based on available credentials).
 #CONFIG_INTERWORKING=y
 
+# Hotspot 2.0
+#CONFIG_HS20=y
+
+# AP mode operations with wpa_supplicant
+# This can be used for controlling AP mode operations with wpa_supplicant. It
+# should be noted that this is mainly aimed at simple cases like
+# WPA2-Personal while more complex configurations like WPA2-Enterprise with an
+# external RADIUS server can be supported with hostapd.
+CONFIG_AP=y
+
+# P2P (Wi-Fi Direct)
+# This can be used to enable P2P support in wpa_supplicant. See README-P2P for
+# more information on P2P operations.
+CONFIG_P2P=y
+
+# Autoscan
+# This can be used to enable automatic scan support in wpa_supplicant.
+# See wpa_supplicant.conf for more information on autoscan usage.
+#
+# Enabling directly a module will enable autoscan support.
+# For exponential module:
+CONFIG_AUTOSCAN_EXPONENTIAL=y
+# For periodic module:
+CONFIG_AUTOSCAN_PERIODIC=y
+
+# Password (and passphrase, etc.) backend for external storage
+# These optional mechanisms can be used to add support for storing passwords
+# and other secrets in external (to wpa_supplicant) location. This allows, for
+# example, operating system specific key storage to be used
+#
+# External password backend for testing purposes (developer use)
+#CONFIG_EXT_PASSWORD_TEST=y
+
 CONFIG_LIBNL32=y
+
+# More options that are not in defconfig:
+
+# RSN IBSS/AdHoc support
+CONFIG_IBSS_RSN=y
+
+# Simple background scan
+CONFIG_BGSCAN_SIMPLE=y
-- 
cgit v0.12