summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--abs/core/wpa_supplicant/PKGBUILD44
-rw-r--r--abs/core/wpa_supplicant/config94
-rw-r--r--abs/core/wpa_supplicant/hostap_allow-linking-with-libnl-3.2.patch12
3 files changed, 120 insertions, 30 deletions
diff --git a/abs/core/wpa_supplicant/PKGBUILD b/abs/core/wpa_supplicant/PKGBUILD
index 9a22a1b..5a7db18 100644
--- a/abs/core/wpa_supplicant/PKGBUILD
+++ b/abs/core/wpa_supplicant/PKGBUILD
@@ -1,42 +1,56 @@
-# $Id: PKGBUILD 90602 2010-09-13 18:07:52Z thomas $
+# $Id: PKGBUILD 162909 2012-07-03 19:16:48Z dreisner $
# Maintainer: Thomas Bächler <thomas@archlinux.org>
pkgname=wpa_supplicant
-pkgver=0.7.3
+pkgver=1.0
pkgrel=1
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>=1.2.4' 'readline>=6.0' 'libnl')
+depends=('openssl' 'dbus-core' 'readline' 'libnl')
optdepends=('wpa_supplicant_gui: wpa_gui program')
license=('GPL')
groups=('base')
-backup=('etc/wpa_supplicant.conf')
-source=(http://hostap.epitest.fi/releases/wpa_supplicant-$pkgver.tar.gz
- config)
-sha256sums=('d0cd50caa85346ccc376dcda5ed3c258eef19a93b3cade39d25760118ad59443'
- '6a0837f18e5ff179ccd6954f7952dfc2e6aa69f353194ee4cb29c1ed2ef68c5d')
+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')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}/${pkgname}"
+ cd "${srcdir}/${pkgname}-${pkgver}/"
+
+ # from fedora
+ patch -Np1 -i "$srcdir/hostap_allow-linking-with-libnl-3.2.patch"
+
+ cd "${pkgname}"
+
cp "${srcdir}/config" ./.config
+
sed -i 's@/usr/local@$(PREFIX)@g' Makefile
- make
+
+ make PREFIX=/usr
}
package() {
cd "${srcdir}/${pkgname}-${pkgver}/${pkgname}"
make PREFIX=/usr DESTDIR="${pkgdir}" install
- install -m755 -d "${pkgdir}/etc"
- install -m644 wpa_supplicant.conf "${pkgdir}/etc/wpa_supplicant.conf"
+
+ install -d -m755 "${pkgdir}/etc/wpa_supplicant"
+ install -m644 wpa_supplicant.conf "${pkgdir}/etc/wpa_supplicant/wpa_supplicant.conf"
+
install -d -m755 "${pkgdir}/usr/share/man/man"{5,8}
install -m644 doc/docbook/*.5 "${pkgdir}/usr/share/man/man5/"
install -m644 doc/docbook/*.8 "${pkgdir}/usr/share/man/man8/"
rm -f "${pkgdir}/usr/share/man/man8/wpa_"{priv,gui}.8
- install -m755 -d "${pkgdir}/usr/share/dbus-1/system-services"
+ install -d -m755 "${pkgdir}/usr/share/dbus-1/system-services"
install -m644 dbus/{fi.epitest.hostap.WPASupplicant.service,fi.w1.wpa_supplicant1.service} "${pkgdir}/usr/share/dbus-1/system-services/"
- sed -e 's/sbin/usr\/sbin/' -i "${pkgdir}/usr/share/dbus-1/system-services/"*.service
- install -m755 -d "${pkgdir}/etc/dbus-1/system.d"
+
+ install -d -m755 "${pkgdir}/etc/dbus-1/system.d"
install -m644 dbus/dbus-wpa_supplicant.conf "${pkgdir}/etc/dbus-1/system.d/wpa_supplicant.conf"
+
+ install -d -m755 "${pkgdir}/usr/lib/systemd/system"
+ install -m644 systemd/*.service "${pkgdir}/usr/lib/systemd/system/"
}
diff --git a/abs/core/wpa_supplicant/config b/abs/core/wpa_supplicant/config
index 192e338..59da1e2 100644
--- a/abs/core/wpa_supplicant/config
+++ b/abs/core/wpa_supplicant/config
@@ -78,6 +78,11 @@
#CONFIG_DRIVER_RALINK=y
# Driver interface for generic Linux wireless extensions
+# Note: WEXT is deprecated in the current Linux kernel version and no new
+# functionality is added to it. nl80211-based interface is the new
+# replacement for WEXT and its use allows wpa_supplicant to properly control
+# the driver to improve existing functionality like roaming and to support new
+# functionality.
CONFIG_DRIVER_WEXT=y
# Driver interface for Linux drivers using the nl80211 kernel interface
@@ -109,11 +114,6 @@ CONFIG_DRIVER_NL80211=y
# Driver interface for development testing
#CONFIG_DRIVER_TEST=y
-# Include client MLME (management frame processing) for test driver
-# This can be used to test MLME operations in hostapd with the test interface.
-# space.
-#CONFIG_CLIENT_MLME=y
-
# Driver interface for wired Ethernet drivers
CONFIG_DRIVER_WIRED=y
@@ -123,6 +123,10 @@ CONFIG_DRIVER_WIRED=y
# Driver interface for no driver (e.g., WPS ER only)
#CONFIG_DRIVER_NONE=y
+# Solaris libraries
+#LIBS += -lsocket -ldlpi -lnsl
+#LIBS_c += -lsocket
+
# Enable IEEE 802.1X Supplicant (automatically included if any EAP method is
# included)
CONFIG_IEEE8021X_EAPOL=y
@@ -161,6 +165,9 @@ CONFIG_EAP_OTP=y
# EAP-PSK (experimental; this is _not_ needed for WPA-PSK)
#CONFIG_EAP_PSK=y
+# EAP-pwd (secure authentication using only a password)
+#CONFIG_EAP_PWD=y
+
# EAP-PAX
#CONFIG_EAP_PAX=y
@@ -190,6 +197,13 @@ CONFIG_EAP_LEAP=y
# Wi-Fi Protected Setup (WPS)
CONFIG_WPS=y
+# Enable WSC 2.0 support
+#CONFIG_WPS2=y
+# Enable WPS external registrar functionality
+#CONFIG_WPS_ER=y
+# Disable credentials for an open network by default when acting as a WPS
+# registrar.
+#CONFIG_WPS_REG_DISABLE_OPEN=y
# EAP-IKEv2
#CONFIG_EAP_IKEV2=y
@@ -224,6 +238,10 @@ CONFIG_CTRL_IFACE=y
# the resulting binary.
CONFIG_READLINE=y
+# Include internal line edit mode in wpa_cli. This can be used as a replacement
+# for GNU Readline to provide limited command line editing and history support.
+#CONFIG_WPA_CLI_EDIT=y
+
# Remove debugging code that is printing out debug message to stdout.
# This can be used to reduce the size of the wpa_supplicant considerably
# if debugging code is not needed. The size reduction can be around 35%
@@ -305,18 +323,17 @@ CONFIG_PEERKEY=y
# Select TLS implementation
# openssl = OpenSSL (default)
-# gnutls = GnuTLS (needed for TLS/IA, see also CONFIG_GNUTLS_EXTRA)
+# gnutls = GnuTLS
# internal = Internal TLSv1 implementation (experimental)
# none = Empty template
#CONFIG_TLS=openssl
-# Whether to enable TLS/IA support, which is required for EAP-TTLSv1.
-# You need CONFIG_TLS=gnutls for this to have any effect. Please note that
-# even though the core GnuTLS library is released under LGPL, this extra
-# library uses GPL and as such, the terms of GPL apply to the combination
-# of wpa_supplicant and GnuTLS if this option is enabled. BSD license may not
-# apply for distribution of the resulting binary.
-#CONFIG_GNUTLS_EXTRA=y
+# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.1)
+# can be enabled to get a stronger construction of messages when block ciphers
+# are used. It should be noted that some existing TLS v1.0 -based
+# implementation may not be compatible with TLS v1.1 message (ClientHello is
+# sent prior to negotiating which version will be used)
+#CONFIG_TLSV11=y
# If CONFIG_TLS=internal is used, additional library and include paths are
# needed for LibTomMath. Alternatively, an integrated, minimal version of
@@ -378,6 +395,11 @@ CONFIG_CTRL_IFACE_DBUS_INTRO=y
# Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt)
CONFIG_DEBUG_FILE=y
+# Send debug messages to syslog instead of stdout
+#CONFIG_DEBUG_SYSLOG=y
+# Set syslog facility for debug messages
+#CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
+
# Enable privilege separation (see README 'Privilege separation' for details)
#CONFIG_PRIVSEP=y
@@ -389,7 +411,7 @@ CONFIG_DEBUG_FILE=y
# This tracks use of memory allocations and other registrations and reports
# incorrect use with a backtrace of call (or allocation) location.
#CONFIG_WPA_TRACE=y
-# For BSD, comment out these.
+# For BSD, uncomment these.
#LIBS += -lexecinfo
#LIBS_p += -lexecinfo
#LIBS_c += -lexecinfo
@@ -398,7 +420,49 @@ CONFIG_DEBUG_FILE=y
# This enables use of libbfd to get more detailed symbols for the backtraces
# generated by CONFIG_WPA_TRACE=y.
#CONFIG_WPA_TRACE_BFD=y
-# For BSD, comment out these.
+# For BSD, uncomment these.
#LIBS += -lbfd -liberty -lz
#LIBS_p += -lbfd -liberty -lz
#LIBS_c += -lbfd -liberty -lz
+
+# wpa_supplicant depends on strong random number generation being available
+# from the operating system. os_get_random() function is used to fetch random
+# data when needed, e.g., for key generation. On Linux and BSD systems, this
+# works by reading /dev/urandom. It should be noted that the OS entropy pool
+# needs to be properly initialized before wpa_supplicant is started. This is
+# important especially on embedded devices that do not have a hardware random
+# number generator and may by default start up with minimal entropy available
+# for random number generation.
+#
+# As a safety net, wpa_supplicant is by default trying to internally collect
+# additional entropy for generating random data to mix in with the data fetched
+# from the OS. This by itself is not considered to be very strong, but it may
+# help in cases where the system pool is not initialized properly. However, it
+# is very strongly recommended that the system pool is initialized with enough
+# entropy either by using hardware assisted random number generator or by
+# storing state over device reboots.
+#
+# wpa_supplicant can be configured to maintain its own entropy store over
+# restarts to enhance random number generation. This is not perfect, but it is
+# much more secure than using the same sequence of random numbers after every
+# reboot. This can be enabled with -e<entropy file> command line option. The
+# specified file needs to be readable and writable by wpa_supplicant.
+#
+# If the os_get_random() is known to provide strong random data (e.g., on
+# Linux/BSD, the board in question is known to have reliable source of random
+# data from /dev/urandom), the internal wpa_supplicant random pool can be
+# disabled. This will save some in binary size and CPU use. However, this
+# should only be considered for builds that are known to be used on devices
+# that meet the requirements described above.
+CONFIG_NO_RANDOM_POOL=y
+
+# IEEE 802.11n (High Throughput) support (mainly for AP mode)
+#CONFIG_IEEE80211N=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
+
+CONFIG_LIBNL32=y
diff --git a/abs/core/wpa_supplicant/hostap_allow-linking-with-libnl-3.2.patch b/abs/core/wpa_supplicant/hostap_allow-linking-with-libnl-3.2.patch
new file mode 100644
index 0000000..5d89039
--- /dev/null
+++ b/abs/core/wpa_supplicant/hostap_allow-linking-with-libnl-3.2.patch
@@ -0,0 +1,12 @@
+diff -up wpa_supplicant-1.0-rc2/src/drivers/drivers.mak.foo wpa_supplicant-1.0-rc2/src/drivers/drivers.mak
+--- wpa_supplicant-1.0-rc2/src/drivers/drivers.mak.foo 2012-03-02 16:11:43.176448714 -0600
++++ wpa_supplicant-1.0-rc2/src/drivers/drivers.mak 2012-03-02 16:12:29.759866341 -0600
+@@ -48,7 +48,7 @@ NEED_RFKILL=y
+ ifdef CONFIG_LIBNL32
+ DRV_LIBS += -lnl-3
+ DRV_LIBS += -lnl-genl-3
+- DRV_CFLAGS += -DCONFIG_LIBNL20
++ DRV_CFLAGS += -DCONFIG_LIBNL20 `pkg-config --cflags libnl-3.0`
+ else
+ ifdef CONFIG_LIBNL_TINY
+ DRV_LIBS += -lnl-tiny