summaryrefslogtreecommitdiff
path: root/core/wpa_supplicant
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-07-05 00:02:54 +0000
committerroot <root@rshg054.dnsready.net>2012-07-05 00:02:54 +0000
commit7f6f69dc52c8601768ba48fa7b69507a80d532cb (patch)
tree028dd3e49c2080a2ab59860c0a20b3a8dfe5cdbf /core/wpa_supplicant
parent298f654d4656dcc1e8d78c37dd77ae2ebfc1bf5f (diff)
Thu Jul 5 00:02:54 UTC 2012
Diffstat (limited to 'core/wpa_supplicant')
-rw-r--r--core/wpa_supplicant/PKGBUILD49
-rw-r--r--core/wpa_supplicant/config92
-rw-r--r--core/wpa_supplicant/hostap_allow-linking-with-libnl-3.2.patch54
3 files changed, 117 insertions, 78 deletions
diff --git a/core/wpa_supplicant/PKGBUILD b/core/wpa_supplicant/PKGBUILD
index b8f264e29..5a7db187f 100644
--- a/core/wpa_supplicant/PKGBUILD
+++ b/core/wpa_supplicant/PKGBUILD
@@ -1,49 +1,56 @@
-# $Id: PKGBUILD 150896 2012-02-23 13:54:14Z allan $
+# $Id: PKGBUILD 162909 2012-07-03 19:16:48Z dreisner $
# Maintainer: Thomas Bächler <thomas@archlinux.org>
pkgname=wpa_supplicant
-pkgver=0.7.3
-pkgrel=5
+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 dbus.patch hostap_allow-linking-with-libnl-3.2.patch)
-sha256sums=('d0cd50caa85346ccc376dcda5ed3c258eef19a93b3cade39d25760118ad59443'
- 'd00f306e53c22cc0d7352a0d4ed701fd77b9ff20e3a2422d81ac1fddcc11dff4'
- '13effa9ed6a1bb940ffc056a3eabcf64c8cc057069eca5cc1822b98ed769812a'
- 'ac805bf6e5aaec733dfc2c333417e519239cd58663a6e1cb34a54fd0f2bcc3c5')
+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}"
+ cd "${srcdir}/${pkgname}-${pkgver}/"
+
+ # from fedora
patch -Np1 -i "$srcdir/hostap_allow-linking-with-libnl-3.2.patch"
- cd ${pkgname}
- # Required by NetworkManager 0.8.995
- patch -Np2 -i "$srcdir/dbus.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/core/wpa_supplicant/config b/core/wpa_supplicant/config
index eef35d045..59da1e27e 100644
--- a/core/wpa_supplicant/config
+++ b/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,9 +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/core/wpa_supplicant/hostap_allow-linking-with-libnl-3.2.patch b/core/wpa_supplicant/hostap_allow-linking-with-libnl-3.2.patch
index 8e7cd9a97..5d8903906 100644
--- a/core/wpa_supplicant/hostap_allow-linking-with-libnl-3.2.patch
+++ b/core/wpa_supplicant/hostap_allow-linking-with-libnl-3.2.patch
@@ -1,42 +1,12 @@
-Subject: [RFC] hostap: Allow linking with libnl-3.
-Date: Tue, 15 Nov 2011 14:30:04 -0000
-From: Ben Greear <greearb@candelatech.com>
-
-I needed this patch to compile against the latest
-libnl code. I added this to my config file:
-
-CONFIG_LIBNL32=y
-
-Signed-hostap: Ben Greear <greearb@candelatech.com>
-rediffed against 0.7.3 by Stefan Lippers-Hollmann <s.l-h@gmx.de>
-
----
-:100644 100644 5caeec5... 0cc81f9... M src/drivers/drivers.mak
- src/drivers/drivers.mak | 21 ++++++++++++++-------
- 2 files changed, 29 insertions(+), 14 deletions(-)
-
---- a/src/drivers/drivers.mak
-+++ b/src/drivers/drivers.mak
-@@ -31,11 +31,18 @@ NEED_SME=y
- NEED_AP_MLME=y
- NEED_NETLINK=y
- NEED_LINUX_IOCTL=y
--DRV_LIBS += -lnl
-+ifdef CONFIG_LIBNL32
-+ DRV_LIBS += -lnl-3
-+ DRV_LIBS += -lnl-genl-3
-+ DRV_CFLAGS += -DCONFIG_LIBNL20
-+ DRV_CFLAGS += -I/usr/include/libnl3/
-+else
-+ DRV_LIBS += -lnl
-
--ifdef CONFIG_LIBNL20
--DRV_LIBS += -lnl-genl
--DRV_CFLAGS += -DCONFIG_LIBNL20
-+ ifdef CONFIG_LIBNL20
-+ DRV_LIBS += -lnl-genl
-+ DRV_CFLAGS += -DCONFIG_LIBNL20
-+ endif
- endif
- endif
-
+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