aboutsummaryrefslogtreecommitdiffstats
path: root/src/ap
diff options
context:
space:
mode:
authorJouni Malinen <j@w1.fi>2012-06-17 19:44:46 +0300
committerJouni Malinen <j@w1.fi>2012-06-17 19:44:46 +0300
commit302fc0a3c77c96f06722dc09b00d792e7029ab5d (patch)
tree76d67b5e55b74c7d21a234beede353b2d2c9f6dd /src/ap
parente58b5ffed7da3a9ee98b76d0c4c5f95d73e0c2f7 (diff)
downloadexternal_wpa_supplicant_8_ti-302fc0a3c77c96f06722dc09b00d792e7029ab5d.zip
external_wpa_supplicant_8_ti-302fc0a3c77c96f06722dc09b00d792e7029ab5d.tar.gz
external_wpa_supplicant_8_ti-302fc0a3c77c96f06722dc09b00d792e7029ab5d.tar.bz2
RADIUS DAS: Support Chargeable-User-Identity with Disconnect-Request
Chargeable-User-Identity can now be used in Disconnect-Request to identify the station to be disconnected. Signed-hostap: Jouni Malinen <j@w1.fi>
Diffstat (limited to 'src/ap')
-rw-r--r--src/ap/hostapd.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/ap/hostapd.c b/src/ap/hostapd.c
index 3f007ff..22c5e65 100644
--- a/src/ap/hostapd.c
+++ b/src/ap/hostapd.c
@@ -541,6 +541,17 @@ static struct sta_info * hostapd_das_find_sta(struct hostapd_data *hapd,
}
}
+ if (sta == NULL && attr->cui) {
+ for (sta = hapd->sta_list; sta; sta = sta->next) {
+ struct wpabuf *cui;
+ cui = ieee802_1x_get_radius_cui(sta->eapol_sm);
+ if (cui && wpabuf_len(cui) == attr->cui_len &&
+ os_memcmp(wpabuf_head(cui), attr->cui,
+ attr->cui_len) == 0)
+ break;
+ }
+ }
+
if (sta == NULL && attr->user_name) {
for (sta = hapd->sta_list; sta; sta = sta->next) {
u8 *identity;