[PATCH] Re: june 8th cvs, same problems

Pavel Roskin proski at gnu.org
Wed Jun 11 16:57:01 EDT 2003


On Sun, 8 Jun 2003, Jouni Malinen wrote:

> Is the only unresolved symbol still wireless_send_event?

Yes.  hostap_hw.c was still including linux/wireless.h regardless of
CONFIG_NET_RADIO.  Making this consistent with other files fixed
unresolved symbols.

When I loaded the driver, there kernel log was flooded with messages

wlan0: hostap_rx_frame_mgmt: management frame received in non-Host AP mode

For some reason, the iw_mode parameter was ignored without wireless
extensions support.  I removed that ifdef.  The patch is attached.

There are also messages about unused functions, but I won't fix that code
without having a testsuite with several kernels and configurations:

hostap_ap.c:2701: warning: `prism2_hostapd' defined but not used
hostap_ap.c:3244: warning: `ap_crypt_get_ptrs' defined but not used
hostap_ap.c:448: warning: `ap_control_add_mac' defined but not used
hostap_ap.c:468: warning: `ap_control_del_mac' defined but not used
hostap_ap.c:542: warning: `ap_control_kick_mac' defined but not used

(default hostap configuration, linux 2.4.21-rc7-ac1 with disabled WE 15)

-- 
Regards,
Pavel Roskin
-------------- next part --------------
--- driver/modules/hostap_hw.c
+++ driver/modules/hostap_hw.c
@@ -45,10 +45,12 @@
 #include <linux/random.h>
 #include <linux/wait.h>
 #include <linux/sched.h>
+#if defined(CONFIG_NET_RADIO) || defined(CONFIG_NET_PCMCIA_RADIO)
 #include <linux/wireless.h>
 #if WIRELESS_EXT > 12
 #include <net/iw_handler.h>
 #endif /* WIRELESS_EXT > 12 */
+#endif /* CONFIG_NET_RADIO || CONFIG_NET_PCMCIA_RADIO */
 #include <asm/irq.h>
 
 
@@ -3246,7 +3248,6 @@ prism2_init_local_data(struct prism2_hel
 	memcpy(local->essid, essid[i],
 	       len > MAX_SSID_LEN ? MAX_SSID_LEN : len);
 	local->essid[MAX_SSID_LEN] = '\0';
-#ifdef WIRELESS_EXT
 	i = GET_INT_PARM(iw_mode, card_idx);
 	if ((i >= IW_MODE_ADHOC && i <= IW_MODE_REPEAT) ||
 	    i == IW_MODE_MONITOR) {
@@ -3256,7 +3257,6 @@ prism2_init_local_data(struct prism2_hel
 		       "IW_MODE_MASTER\n", i);
 		local->iw_mode = IW_MODE_MASTER;
 	}
-#endif
 	local->channel = GET_INT_PARM(channel, card_idx);
 	local->beacon_int = GET_INT_PARM(beacon_int, card_idx);
 	local->dtim_period = GET_INT_PARM(dtim_period, card_idx);


More information about the HostAP mailing list