include $(TOPDIR)/rules.mk
PKG_NAME:=hostapd
-PKG_VERSION:=0.6.9
+PKG_VERSION:=20091111
PKG_RELEASE:=1
+PKG_REV:=dc6d9ac250f793a62b21ca828445967fb484305f
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://hostap.epitest.fi/releases/
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=git://w1.fi/srv/git/hostap.git
PKG_SOURCE_SUBDIR:=hostapd-$(PKG_VERSION)
PKG_SOURCE_VERSION:=$(PKG_REV)
-PKG_MD5SUM:=83630d11fa66ade9091f1b304fccd74c
+PKG_SOURCE_PROTO:=git
PKG_BUILD_DEPENDS:= \
PACKAGE_kmod-madwifi:madwifi \
define Package/hostapd
$(call Package/hostapd/Default)
TITLE+= (full)
- DEPENDS+= +PACKAGE_hostapd:libopenssl
VARIANT:=full
endef
endef
define Build/Configure
+ rm -f $(PKG_BUILD_DIR)/hostapd/hostapd
+ rm -f $(PKG_BUILD_DIR)/src/drivers/drivers.o
$(CP) ./files/$(BUILD_VARIANT).config $(PKG_BUILD_DIR)/hostapd/.config
endef
ifdef CONFIG_PACKAGE_kmod-mac80211
TARGET_LDFLAGS += -lm -lnl-tiny
endif
-ifeq ($(BUILD_VARIANT),full)
- TARGET_LDFLAGS += -lssl -lcrypto
-endif
define Build/Compile
CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \
# This can be used to reduce the size of the hostapd considerably if debugging
# code is not needed.
#CONFIG_NO_STDOUT_DEBUG=y
+
+# Remove support for RADIUS accounting
+#CONFIG_NO_ACCOUNTING=y
+
+# Remove support for RADIUS
+#CONFIG_NO_RADIUS=y
+
+# Remove support for VLANs
+#CONFIG_NO_VLAN=y
+
+CONFIG_TLS=internal
+CONFIG_INTERNAL_LIBTOMMATH=y
+CONFIG_INTERNAL_AES=y
+NEED_AES_DEC=y
#CONFIG_DRIVER_NONE=y
# IEEE 802.11F/IAPP
-CONFIG_IAPP=y
+# CONFIG_IAPP=y
# WPA2/IEEE 802.11i RSN pre-authentication
CONFIG_RSN_PREAUTH=y
# This can be used to reduce the size of the hostapd considerably if debugging
# code is not needed.
#CONFIG_NO_STDOUT_DEBUG=y
+
+# Remove support for RADIUS accounting
+CONFIG_NO_ACCOUNTING=y
+
+# Remove support for RADIUS
+CONFIG_NO_RADIUS=y
+
+# Remove support for VLANs
+#CONFIG_NO_VLAN=y
+
+CONFIG_TLS=internal
---- a/hostapd/driver_madwifi.c
-+++ b/hostapd/driver_madwifi.c
-@@ -312,6 +312,7 @@ madwifi_set_iface_flags(void *priv, int
+--- a/src/drivers/driver_madwifi.c
++++ b/src/drivers/driver_madwifi.c
+@@ -318,6 +318,7 @@ madwifi_set_iface_flags(void *priv, int
{
struct madwifi_driver_data *drv = priv;
struct ifreq ifr;
wpa_printf(MSG_DEBUG, "%s: dev_up=%d", __func__, dev_up);
-@@ -326,10 +327,14 @@ madwifi_set_iface_flags(void *priv, int
+@@ -332,10 +333,14 @@ madwifi_set_iface_flags(void *priv, int
return -1;
}
--- /dev/null
+--- a/hostapd/hostapd.c
++++ b/hostapd/hostapd.c
+@@ -1344,10 +1344,8 @@ static int setup_interface(struct hostap
+ if (hapd->iconf->country[0] && hapd->iconf->country[1]) {
+ os_memcpy(country, hapd->iconf->country, 3);
+ country[3] = '\0';
+- if (hostapd_set_country(hapd, country) < 0) {
++ if (hostapd_set_country(hapd, country) < 0)
+ wpa_printf(MSG_ERROR, "Failed to set country code");
+- return -1;
+- }
+ }
+
+ if (hapd->iconf->bridge_packets != INTERNAL_BRIDGE_DO_NOT_CONTROL &&
+++ /dev/null
---- a/hostapd/hostapd.c
-+++ b/hostapd/hostapd.c
-@@ -1546,10 +1546,8 @@ static int setup_interface(struct hostap
- if (hapd->iconf->country[0] && hapd->iconf->country[1]) {
- os_memcpy(country, hapd->iconf->country, 3);
- country[3] = '\0';
-- if (hostapd_set_country(hapd, country) < 0) {
-+ if (hostapd_set_country(hapd, country) < 0)
- wpa_printf(MSG_ERROR, "Failed to set country code");
-- return -1;
-- }
- }
-
- if (hapd->iconf->ieee80211d &&
--- /dev/null
+--- a/src/drivers/driver_nl80211.c
++++ b/src/drivers/driver_nl80211.c
+@@ -4418,10 +4418,10 @@ static void *i802_init(struct hostapd_da
+ /* start listening for EAPOL on the default AP interface */
+ add_ifidx(drv, drv->ifindex);
+
+- if (params->bssid) {
+- if (hostapd_set_iface_flags(drv, drv->ifname, 0))
+- goto failed;
++ if (hostapd_set_iface_flags(drv, drv->ifname, 0))
++ goto failed;
+
++ if (params->bssid) {
+ if (set_ifhwaddr(drv, drv->ifname, params->bssid))
+ goto failed;
+ }
+++ /dev/null
---- a/hostapd/driver_nl80211.c
-+++ b/hostapd/driver_nl80211.c
-@@ -29,6 +29,7 @@
- #include "wireless_copy.h"
- #include <linux/filter.h>
- #include <net/if_arp.h>
-+#include <linux/rtnetlink.h>
-
- #include "hostapd.h"
- #include "driver.h"
-@@ -45,6 +46,7 @@
- /* libnl 2.0 compatibility code */
- #define nl_handle_alloc_cb nl_socket_alloc_cb
- #define nl_handle_destroy nl_socket_free
-+#define nl_handle nl_sock
- #endif /* CONFIG_LIBNL20 */
-
- enum ieee80211_msg_type {