summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--network/hostapd/DTIM.patch46
-rw-r--r--network/hostapd/README4
-rw-r--r--network/hostapd/hostapd.SlackBuild15
-rw-r--r--network/hostapd/hostapd.defconfig (renamed from network/hostapd/config)62
-rw-r--r--network/hostapd/hostapd.info8
-rw-r--r--network/hostapd/slack-desc4
6 files changed, 118 insertions, 21 deletions
diff --git a/network/hostapd/DTIM.patch b/network/hostapd/DTIM.patch
new file mode 100644
index 0000000000..e19555e1ef
--- /dev/null
+++ b/network/hostapd/DTIM.patch
@@ -0,0 +1,46 @@
+commit 8fac32f5efa7a7c3fc6eee8d3723a09e7abe27fa
+Author: Jouni Malinen <jouni.malinen@atheros.com>
+Date: Thu Mar 12 21:57:08 2009 +0200
+
+ Move DTIM period configuration into Beacon set operation
+
+ This is needed to make mac80211 work with multi-BSS configuration. The
+ previous design ended up setting DTIM period for secondary BSSes before
+ setting the Beacon and driver_nl80211.c was not really prepared for
+ that. Eventually, the Beacon configuration routines should be combined
+ into a single driver operation, but for now, just moving this call is
+ the simplest workaround.
+ (cherry picked from commit eb1f7446b5b86cceb1508f060f5e66e5dd791a4d)
+
+diff --git a/hostapd/beacon.c b/hostapd/beacon.c
+index 1f82d9c..0a192fe 100644
+--- a/hostapd/beacon.c
++++ b/hostapd/beacon.c
+@@ -434,6 +434,10 @@ void ieee802_11_set_beacon(struct hostapd_data *hapd)
+ os_free(tail);
+ os_free(head);
+
++ if (hostapd_set_dtim_period(hapd, hapd->conf->dtim_period))
++ wpa_printf(MSG_ERROR, "Could not set DTIM period for kernel "
++ "driver");
++
+ if (hostapd_set_cts_protect(hapd, cts_protection))
+ wpa_printf(MSG_ERROR, "Failed to set CTS protect in kernel "
+ "driver");
+diff --git a/hostapd/hostapd.c b/hostapd/hostapd.c
+index 3fbd3d0..7ed1720 100644
+--- a/hostapd/hostapd.c
++++ b/hostapd/hostapd.c
+@@ -1376,12 +1376,6 @@ static int hostapd_setup_bss(struct hostapd_data *hapd, int first)
+ return -1;
+ }
+
+- if (hostapd_set_dtim_period(hapd, hapd->conf->dtim_period)) {
+- wpa_printf(MSG_ERROR, "Could not set DTIM period for kernel "
+- "driver");
+- return -1;
+- }
+-
+ /* Set SSID for the kernel driver (to be used in beacon and probe
+ * response frames) */
+ if (set_ssid && hostapd_set_ssid(hapd, (u8 *) conf->ssid.ssid,
diff --git a/network/hostapd/README b/network/hostapd/README
index 0bcf02f7fa..28884a8ae0 100644
--- a/network/hostapd/README
+++ b/network/hostapd/README
@@ -5,7 +5,3 @@ It implements IEEE 802.11 access point management, IEEE 802.1X/WPA/WPA2/EAP
Authenticators, RADIUS client, EAP server, and RADIUS authentication server.
The current version supports Linux (Host AP, madwifi, Prism54 drivers) and
FreeBSD (net80211).
-
-This is tested with the madwifi driver, but it should also work with some
-other chipsets. If you plan to use the madwifi driver, then uncomment the
-madwifi section in the provided config file.
diff --git a/network/hostapd/hostapd.SlackBuild b/network/hostapd/hostapd.SlackBuild
index 08b80dca7d..9f0b30c661 100644
--- a/network/hostapd/hostapd.SlackBuild
+++ b/network/hostapd/hostapd.SlackBuild
@@ -22,7 +22,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=hostapd
-VERSION=${VERSION:-0.5.11}
+VERSION=${VERSION:-0.6.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -62,7 +62,7 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION/$PRGNAM
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -70,7 +70,10 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-cat $CWD/config > .config
+cat $CWD/hostapd.defconfig > .config
+# Fix bug with mac80211-based drivers in hostapd 0.6.10
+# http://lists.shmoo.com/pipermail/hostap/2010-February/021118.html
+patch -p2 < $CWD/DTIM.patch
CFLAGS+="$SLKCFLAGS" make
@@ -84,9 +87,7 @@ install -D -m 0755 $CWD/rc.hostapd $PKG/etc/rc.d/rc.hostapd.new
DOINST_TMP=$(mktemp) # temporary holding place
for i in \
- hlr_auc_gw.milenage_db hostapd.accept hostapd.conf \
- hostapd.deny hostapd.eap_user hostapd.radius_clients \
- hostapd.sim_db hostapd.wpa_psk madwifi.conf wired.conf ;
+ hostapd.??* *.conf
do
cat $i > $PKG/etc/hostapd/$i.new ;
chmod 0600 $PKG/etc/hostapd/$i.new ;
@@ -101,7 +102,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING ChangeLog README $PKG/usr/doc/$PRGNAM-$VERSION
+cp -ar ../COPYING ChangeLog README* *.txt logwatch $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/hostapd/config b/network/hostapd/hostapd.defconfig
index d3b6ba0f2b..d5c73f2b1b 100644
--- a/network/hostapd/config
+++ b/network/hostapd/hostapd.defconfig
@@ -17,11 +17,28 @@ CONFIG_DRIVER_WIRED=y
# Driver interface for madwifi driver
#CONFIG_DRIVER_MADWIFI=y
-#CFLAGS += -I/tmp/SBo/madwifi-0.9.4/ # change to reflect local setup; directory for madwifi src
+#CFLAGS += -I../../madwifi # change to the madwifi source directory
# Driver interface for Prism54 driver
CONFIG_DRIVER_PRISM54=y
+# Driver interface for drivers using the nl80211 kernel interface
+CONFIG_DRIVER_NL80211=y
+# driver_nl80211.c requires a rather new libnl (version 1.1) which may not be
+# shipped with your distribution yet. If that is the case, you need to build
+# newer libnl version and point the hostapd build to use it.
+#LIBNL=/usr/src/libnl
+#CFLAGS += -I$(LIBNL)/include
+#LIBS += -L$(LIBNL)/lib
+
+# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver)
+#CONFIG_DRIVER_BSD=y
+#CFLAGS += -I/usr/local/include
+#LIBS += -L/usr/local/lib
+
+# Driver interface for no driver (e.g., RADIUS server only)
+CONFIG_DRIVER_NONE=y
+
# IEEE 802.11F/IAPP
CONFIG_IAPP=y
@@ -64,6 +81,10 @@ CONFIG_EAP_SIM=y
# EAP-AKA for the integrated EAP server
CONFIG_EAP_AKA=y
+# EAP-AKA' for the integrated EAP server
+# This requires CONFIG_EAP_AKA to be enabled, too.
+#CONFIG_EAP_AKA_PRIME=y
+
# EAP-PAX for the integrated EAP server
CONFIG_EAP_PAX=y
@@ -71,12 +92,30 @@ CONFIG_EAP_PAX=y
CONFIG_EAP_PSK=y
# EAP-SAKE for the integrated EAP server
-CONFIG_EAP_SAKE=y
+#CONFIG_EAP_SAKE=y
# EAP-GPSK for the integrated EAP server
-CONFIG_EAP_GPSK=y
+#CONFIG_EAP_GPSK=y
# Include support for optional SHA256 cipher suite in EAP-GPSK
-CONFIG_EAP_GPSK_SHA256=y
+#CONFIG_EAP_GPSK_SHA256=y
+
+# EAP-FAST for the integrated EAP server
+# Note: Default OpenSSL package does not include support for all the
+# functionality needed for EAP-FAST. If EAP-FAST is enabled with OpenSSL,
+# the OpenSSL library must be patched (openssl-0.9.9-session-ticket.patch)
+# to add the needed functions.
+#CONFIG_EAP_FAST=y
+
+# Wi-Fi Protected Setup (WPS)
+CONFIG_WPS=y
+# Enable UPnP support for external WPS Registrars
+CONFIG_WPS_UPNP=y
+
+# EAP-IKEv2
+CONFIG_EAP_IKEV2=y
+
+# Trusted Network Connect (EAP-TNC)
+CONFIG_EAP_TNC=y
# PKCS#12 (PFX) support (used to read private key and certificate file from
# a file that usually has extension .p12 or .pfx)
@@ -88,3 +127,18 @@ CONFIG_RADIUS_SERVER=y
# Build IPv6 support for RADIUS operations
CONFIG_IPV6=y
+
+# IEEE Std 802.11r-2008 (Fast BSS Transition)
+CONFIG_IEEE80211R=y
+
+# Use the hostapd's IEEE 802.11 authentication (ACL), but without
+# the IEEE 802.11 Management capability (e.g., madwifi or FreeBSD/net80211)
+#CONFIG_DRIVER_RADIUS_ACL=y
+
+# IEEE 802.11n (High Throughput) support
+CONFIG_IEEE80211N=y
+
+# Remove debugging code that is printing out debug messages to stdout.
+# This can be used to reduce the size of the hostapd considerably if debugging
+# code is not needed.
+#CONFIG_NO_STDOUT_DEBUG=y
diff --git a/network/hostapd/hostapd.info b/network/hostapd/hostapd.info
index da9dfdb7a7..faf6c69260 100644
--- a/network/hostapd/hostapd.info
+++ b/network/hostapd/hostapd.info
@@ -1,10 +1,10 @@
PRGNAM="hostapd"
-VERSION="0.5.11"
+VERSION="0.6.10"
HOMEPAGE="http://hostap.epitest.fi/hostapd/"
-DOWNLOAD="http://hostap.epitest.fi/releases/hostapd-0.5.11.tar.gz"
-MD5SUM="d99d3566d5f15dfd24df37fcb2ee80ee"
+DOWNLOAD="http://hostap.epitest.fi/releases/hostapd-0.6.10.tar.gz"
+MD5SUM="1ac442d1f984273f108b3de579c1b70d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
MAINTAINER="Murat D. Kadirov"
EMAIL="banderols@gmail.com"
-APPROVED="rworkman"
+APPROVED="dsomero"
diff --git a/network/hostapd/slack-desc b/network/hostapd/slack-desc
index 6007b43948..61fd1e1c40 100644
--- a/network/hostapd/slack-desc
+++ b/network/hostapd/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
-hostapd: hostapd (Wifi Authenticator)
+hostapd: hostapd (wifi authenticator)
hostapd:
hostapd: hostapd is a user space daemon for access point and authentication
hostapd: servers. It implements IEEE 802.11 access point management,
@@ -14,6 +14,6 @@ hostapd: IEEE 802.1X/WPA/WPA2/EAP Authenticators, RADIUS client, EAP server,
hostapd: and RADIUS authentication server. The current version supports Linux
hostapd: (Host AP, madwifi, Prism54 drivers) and FreeBSD (net80211).
hostapd:
-hostapd:
+hostapd: Homepage: http://hostap.epitest.fi/hostapd/
hostapd:
hostapd: