summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2009-11-30 13:21:42 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2009-11-30 13:21:42 +0000
commited91f3e3c24b444d762b2e4f9de06779542f762c (patch)
tree6bd79f5e1ea9fcc16dfb9e90fab2e9cdc834159f
parent0a1e38d00d24abcdde874e3bb0024e908d936c35 (diff)
downloadaports-ed91f3e3c24b444d762b2e4f9de06779542f762c.tar.bz2
aports-ed91f3e3c24b444d762b2e4f9de06779542f762c.tar.xz
testing/hostapd: new aport
daemon for wireless software access points http://hostap.epitest.fi/hostapd/ fixes #212
-rw-r--r--testing/hostapd/APKBUILD109
-rw-r--r--testing/hostapd/hostapd.confd5
-rw-r--r--testing/hostapd/hostapd.initd46
3 files changed, 160 insertions, 0 deletions
diff --git a/testing/hostapd/APKBUILD b/testing/hostapd/APKBUILD
new file mode 100644
index 00000000..e8a7f0e1
--- /dev/null
+++ b/testing/hostapd/APKBUILD
@@ -0,0 +1,109 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=hostapd
+pkgver=0.6.9
+pkgrel=0
+pkgdesc="daemon for wireless software access points"
+url="http://hostap.epitest.fi/hostapd/"
+license="custom"
+depends=
+makedepends="openssl-dev libnl-dev"
+install=
+source="http://hostap.epitest.fi/releases/$pkgname-$pkgver.tar.gz
+ $pkgname.initd
+ $pkgname.confd"
+
+
+_builddir="$srcdir"/$pkgname-$pkgver/hostapd
+
+prepare() {
+ local conf="$_builddir/.config"
+
+ cd "$_builddir"
+ sed -i -e "s:/etc/hostapd:/etc/hostapd/hostapd:g" \
+ hostapd.conf
+
+ # toolchain setup
+ echo "CC = $CC" > $conf
+
+ # EAP authentication methods
+ echo "CONFIG_EAP=y" >> $conf
+ echo "CONFIG_EAP_MD5=y" >> $conf
+
+ # SSL authentication methods
+ echo "CONFIG_EAP_TLS=y" >> $conf
+ echo "CONFIG_EAP_TTLS=y" >> $conf
+ echo "CONFIG_EAP_MSCHAPV2=y" >> $conf
+ echo "CONFIG_EAP_PEAP=y" >> $conf
+
+ # Enable Wi-Fi Protected Setup
+ echo "CONFIG_WPS=y" >> $conf
+ echo "CONFIG_WPS_UPNP=y" >> $conf
+
+ echo "CONFIG_EAP_GTC=y" >> $conf
+ echo "CONFIG_EAP_SIM=y" >> $conf
+ echo "CONFIG_EAP_AKA=y" >> $conf
+ echo "CONFIG_EAP_PAX=y" >> $conf
+ echo "CONFIG_EAP_PSK=y" >> $conf
+ echo "CONFIG_EAP_SAKE=y" >> $conf
+ echo "CONFIG_EAP_GPSK=y" >> $conf
+ echo "CONFIG_EAP_GPSK_SHA256=y" >> $conf
+
+ # drivers
+ echo "CONFIG_DRIVER_HOSTAP=y" >> $conf
+ echo "CONFIG_DRIVER_WIRED=y" >> $conf
+ echo "CONFIG_DRIVER_PRISM54=y" >> $conf
+
+ # Add include path for madwifi-driver headers
+# echo "CFLAGS += -I/usr/include/madwifi" >> $conf
+# echo "CONFIG_DRIVER_MADWIFI=y" >> $conf
+
+ # enable nl80211 driver"
+ echo "CONFIG_DRIVER_NL80211=y" >> $conf
+ echo "CFLAGS += -I/usr/include/netlink" >> $conf
+ echo "LIBS += -L/usr/lib" >> $conf
+
+ # misc
+ echo "CONFIG_PKCS12=y" >> $conf
+ echo "CONFIG_RADIUS_SERVER=y" >> $conf
+ echo "CONFIG_IAPP=y" >> $conf
+ echo "CONFIG_IEEE80211R=y" >> $conf
+ echo "CONFIG_IEEE80211W=y" >> $conf
+ echo "CONFIG_IEEE80211N=y" >> $conf
+ echo "CONFIG_PEERKEY=y" >> $conf
+ echo "CONFIG_RSN_PREAUTH=y" >> $conf
+
+ # IPv6 support
+ echo "CONFIG_IPV6=y" >> $conf
+}
+
+build() {
+ cd "$_builddir"
+ make || return 1
+
+ make nt_password_hash || return 1
+ make hlr_auc_gw || return 1
+}
+
+package() {
+ cd "$_builddir"
+ install -d "$pkgdir"/etc/hostapd
+ install hostapd.conf hostapd.accept hostapd.deny hostapd.eap_user \
+ hostapd.radius_clients hostapd.sim_db hostapd.wpa_psk \
+ "$pkgdir"/etc/hostapd/
+
+ install -Dm755 hostapd "$pkgdir"/sbin/hostapd
+ install -Dm755 hostapd_cli "$pkgdir"/bin/hostapd_cli
+
+ install -Dm755 nt_password_hash "$pkgdir"/bin/nt_password_hash
+ install -Dm755 hlr_auc_gw "$pkgdir"/bin/hlr_auc_gw
+
+ install -Dm755 "$srcdir"/hostapd.initd "$pkgdir"/etc/init.d/hostapd
+ install -Dm644 "$srcdir"/hostapd.confd "$pkgdir"/etc/conf.d/hostapd
+
+ install -Dm644 hostapd.8 "$pkgdir"/usr/share/man/man8/hostapd.8
+ install -Dm644 hostapd_cli.1 "$pkgdir"/usr/share/man/man1/hostapd_cli
+}
+
+md5sums="83630d11fa66ade9091f1b304fccd74c hostapd-0.6.9.tar.gz
+fdbc94a99eca18f51294b5a96136ffdf hostapd.initd
+c91382209042defa04e79d0ae841a29e hostapd.confd"
diff --git a/testing/hostapd/hostapd.confd b/testing/hostapd/hostapd.confd
new file mode 100644
index 00000000..60381153
--- /dev/null
+++ b/testing/hostapd/hostapd.confd
@@ -0,0 +1,5 @@
+# Space separated list of configuration files
+CONFIGS="/etc/hostapd/hostapd.conf"
+
+# Extra options to pass to hostapd, see hostapd(8)
+OPTIONS=""
diff --git a/testing/hostapd/hostapd.initd b/testing/hostapd/hostapd.initd
new file mode 100644
index 00000000..cbf962d8
--- /dev/null
+++ b/testing/hostapd/hostapd.initd
@@ -0,0 +1,46 @@
+#!/sbin/runscript
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/hostapd/files/hostapd-0.6.9-init.d,v 1.2 2009/05/17 10:18:18 gurligebis Exp $
+
+opts="start stop reload"
+
+depend() {
+ need net
+ after firewall
+ use logger
+}
+
+checkconfig() {
+ local file
+
+ for file in ${CONFIGS}; do
+ if [ ! -r "${file}" ]; then
+ eerror "hostapd configuration file (${CONFIG}) not found"
+ return 1
+ fi
+ done
+}
+
+start() {
+ checkconfig || return 1
+
+ ebegin "Starting ${SVCNAME}"
+ start-stop-daemon --start --exec /usr/sbin/hostapd \
+ -- -B ${OPTIONS} ${CONFIGS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${SVCNAME}"
+ start-stop-daemon --stop --exec /usr/sbin/hostapd
+ eend $?
+}
+
+reload() {
+ checkconfig || return 1
+
+ ebegin "Reloading ${SVCNAME} configuration"
+ kill -HUP $(pidof /usr/sbin/hostapd) > /dev/null 2>&1
+ eend $?
+}