Index: hostapd/hostapd/driver_madwifi.c
===================================================================
--- hostapd/hostapd/driver_madwifi.c
+++ hostapd/hostapd/driver_madwifi.c
@@ -769,20 +769,23 @@
 	}
 	wpa_hexdump(MSG_MSGDUMP, "madwifi req WPA IE",
 		    ie.wpa_ie, IEEE80211_MAX_OPT_IE);
+#ifdef MADWIFI_NG
 	wpa_hexdump(MSG_MSGDUMP, "madwifi req RSN IE",
 		    ie.rsn_ie, IEEE80211_MAX_OPT_IE);
-	iebuf = ie.wpa_ie;
+	/* madwifi-ng svn #1453 added rsn_ie. Use it, if wpa_ie was not
+	 * set. This is needed for WPA2. */
+	/* prefer it over wpa_ie */
+	iebuf = ie.rsn_ie;
 	/* madwifi seems to return some random data if WPA/RSN IE is not set.
 	 * Assume the IE was not included if the IE type is unknown. */
+	if (iebuf[0] != WLAN_EID_RSN)
+		iebuf[1] = 0;
+	if (iebuf[1] == 0 && ie.wpa_ie[1] > 0) {
+#endif /* MADWIFI_NG */
+	iebuf = ie.wpa_ie;
 	if (iebuf[0] != WLAN_EID_VENDOR_SPECIFIC)
 		iebuf[1] = 0;
 #ifdef MADWIFI_NG
-	if (iebuf[1] == 0 && ie.rsn_ie[1] > 0) {
-		/* madwifi-ng svn #1453 added rsn_ie. Use it, if wpa_ie was not
-		 * set. This is needed for WPA2. */
-		iebuf = ie.rsn_ie;
-		if (iebuf[0] != WLAN_EID_RSN)
-			iebuf[1] = 0;
 	}
 #endif /* MADWIFI_NG */
 	ielen = iebuf[1];
