1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-24 03:01:55 +02:00

[backfire] backport r24041

git-svn-id: svn://svn.openwrt.org/openwrt/branches/backfire@24158 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
jow 2010-11-27 20:30:09 +00:00
parent 5c292c91ad
commit ce26af32f0
3 changed files with 83 additions and 4 deletions

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=hostapd PKG_NAME:=hostapd
PKG_VERSION:=20100705 PKG_VERSION:=20100705
PKG_RELEASE:=1 PKG_RELEASE:=2
PKG_REV:=2f1ce78bf78cecd7021385b04a4f55f22e76ab97 PKG_REV:=2f1ce78bf78cecd7021385b04a4f55f22e76ab97
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2

View File

@ -17,11 +17,9 @@ Tested only with the nl80211 driver and a STBC incapable STA.
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
--- ---
diff --git a/src/ap/ieee802_11_ht.c b/src/ap/ieee802_11_ht.c
index 1b39a6a..b193ee0 100644
--- a/src/ap/ieee802_11_ht.c --- a/src/ap/ieee802_11_ht.c
+++ b/src/ap/ieee802_11_ht.c +++ b/src/ap/ieee802_11_ht.c
@@ -256,7 +256,15 @@ void hostapd_get_ht_capab(struct hostapd_data *hapd, @@ -256,7 +256,15 @@ void hostapd_get_ht_capab(struct hostapd
cap &= hapd->iconf->ht_capab; cap &= hapd->iconf->ht_capab;
cap |= (hapd->iconf->ht_capab & HT_CAP_INFO_SMPS_DISABLED); cap |= (hapd->iconf->ht_capab & HT_CAP_INFO_SMPS_DISABLED);

View File

@ -0,0 +1,81 @@
--- a/src/ap/hostapd.c
+++ b/src/ap/hostapd.c
@@ -706,11 +706,8 @@ int hostapd_setup_interface_complete(str
size_t j;
u8 *prev_addr;
- if (err) {
- wpa_printf(MSG_ERROR, "Interface initialization failed");
- eloop_terminate();
- return -1;
- }
+ if (err)
+ goto error;
wpa_printf(MSG_DEBUG, "Completing interface initialization");
if (hapd->iconf->channel) {
@@ -726,7 +723,7 @@ int hostapd_setup_interface_complete(str
hapd->iconf->secondary_channel)) {
wpa_printf(MSG_ERROR, "Could not set channel for "
"kernel driver");
- return -1;
+ goto error;
}
}
@@ -736,7 +733,7 @@ int hostapd_setup_interface_complete(str
hostapd_logger(hapd, NULL, HOSTAPD_MODULE_IEEE80211,
HOSTAPD_LEVEL_WARNING,
"Failed to prepare rates table.");
- return -1;
+ goto error;
}
}
@@ -744,14 +741,14 @@ int hostapd_setup_interface_complete(str
hostapd_set_rts(hapd, hapd->iconf->rts_threshold)) {
wpa_printf(MSG_ERROR, "Could not set RTS threshold for "
"kernel driver");
- return -1;
+ goto error;
}
if (hapd->iconf->fragm_threshold > -1 &&
hostapd_set_frag(hapd, hapd->iconf->fragm_threshold)) {
wpa_printf(MSG_ERROR, "Could not set fragmentation threshold "
"for kernel driver");
- return -1;
+ goto error;
}
prev_addr = hapd->own_addr;
@@ -761,7 +758,7 @@ int hostapd_setup_interface_complete(str
if (j)
os_memcpy(hapd->own_addr, prev_addr, ETH_ALEN);
if (hostapd_setup_bss(hapd, j == 0))
- return -1;
+ goto error;
if (hostapd_mac_comp_empty(hapd->conf->bssid) == 0)
prev_addr = hapd->own_addr;
}
@@ -773,7 +770,7 @@ int hostapd_setup_interface_complete(str
if (hostapd_driver_commit(hapd) < 0) {
wpa_printf(MSG_ERROR, "%s: Failed to commit driver "
"configuration", __func__);
- return -1;
+ goto error;
}
wpa_printf(MSG_DEBUG, "%s: Setup of interface done.",
@@ -783,6 +780,11 @@ int hostapd_setup_interface_complete(str
iface->init_complete(iface);
return 0;
+
+error:
+ wpa_printf(MSG_ERROR, "Interface initialization failed");
+ eloop_terminate();
+ return -1;
}