2006-02-17 18:32:51 +02:00
|
|
|
diff -ru madwifi-ng-r1451-20060212/net80211/ieee80211_ioctl.h madwifi-ng-r1451-20060212-patch/net80211/ieee80211_ioctl.h
|
|
|
|
--- madwifi-ng-r1451-20060212/net80211/ieee80211_ioctl.h 2006-02-06 11:03:21.000000000 -0500
|
|
|
|
+++ madwifi-ng-r1451-20060212-patch/net80211/ieee80211_ioctl.h 2006-02-16 06:05:22.000000000 -0500
|
|
|
|
@@ -280,6 +280,7 @@
|
2006-01-31 23:45:23 +02:00
|
|
|
struct ieee80211req_wpaie {
|
|
|
|
u_int8_t wpa_macaddr[IEEE80211_ADDR_LEN];
|
|
|
|
u_int8_t wpa_ie[IEEE80211_MAX_OPT_IE];
|
|
|
|
+ u_int8_t rsn_ie[IEEE80211_MAX_OPT_IE];
|
|
|
|
};
|
|
|
|
|
|
|
|
/*
|
2006-02-17 18:32:51 +02:00
|
|
|
diff -ru madwifi-ng-r1451-20060212/net80211/ieee80211_wireless.c madwifi-ng-r1451-20060212-patch/net80211/ieee80211_wireless.c
|
|
|
|
--- madwifi-ng-r1451-20060212/net80211/ieee80211_wireless.c 2006-02-06 12:39:10.000000000 -0500
|
|
|
|
+++ madwifi-ng-r1451-20060212-patch/net80211/ieee80211_wireless.c 2006-02-16 06:05:22.000000000 -0500
|
|
|
|
@@ -3231,6 +3231,12 @@
|
2006-01-31 23:45:23 +02:00
|
|
|
ielen = sizeof(wpaie.wpa_ie);
|
|
|
|
memcpy(wpaie.wpa_ie, ni->ni_wpa_ie, ielen);
|
|
|
|
}
|
|
|
|
+ if (ni->ni_rsn_ie != NULL) {
|
|
|
|
+ int ielen = ni->ni_rsn_ie[1] + 2;
|
|
|
|
+ if (ielen > sizeof(wpaie.rsn_ie))
|
|
|
|
+ ielen = sizeof(wpaie.rsn_ie);
|
|
|
|
+ memcpy(wpaie.rsn_ie, ni->ni_rsn_ie, ielen);
|
|
|
|
+ }
|
|
|
|
ieee80211_free_node(ni);
|
|
|
|
return (copy_to_user(iwr->u.data.pointer, &wpaie, sizeof(wpaie)) ?
|
2006-02-17 18:32:51 +02:00
|
|
|
-EFAULT : 0);
|