wpa_supplicant: problems with EAP-SIM
Jouni Malinen
jkmaline
Sun Jan 29 19:59:16 PST 2006
On Thu, Jan 26, 2006 at 04:08:04PM +0000, Pete Young wrote:
> OK, I've tried it again with a couple of different SIMs, making sure
> that the PIN was correct in each case. The debug log is included
> below.
OK, I found the issue. PC/SC interface was being initialized only when
processing scan results and this does not happen with wired
authentication (ap_scan=0) or when using driver to select the AP
(ap_scan=2). This is now fixed in CVS (both devel 0.5 branch and stable
0.4 branch). I was able to complete wired authentication with EAP-SIM
successfully after this fix. The attached patch file shows the needed
addition to events.c.
--
Jouni Malinen PGP id EFC895FA
-------------- next part --------------
Index: ChangeLog
===================================================================
RCS file: /home/jm/cvsroot/hostap/wpa_supplicant/ChangeLog,v
retrieving revision 1.230.2.9
diff -u -p -u -p -r1.230.2.9 ChangeLog
--- ChangeLog 30 Jan 2006 02:51:27 -0000 1.230.2.9
+++ ChangeLog 30 Jan 2006 03:54:44 -0000
@@ -22,6 +22,9 @@ ChangeLog for wpa_supplicant
to disable TLS library for normal authentication
* fixed PMKSA cache processing not to trigger deauthentication if the
current PMKSA cache entry is replaced with a valid new entry
+ * fixed PC/SC initialization for ap_scan != 1 modes (this fixes
+ EAP-SIM and EAP-AKA with real SIM/USIM card when using ap_scan=0 or
+ ap_scan=2)
2005-11-20 - v0.4.7 (beginning of 0.4.x stable releases)
* l2_packet_pcap: fixed wired IEEE 802.1X authentication with libpcap
Index: events.c
===================================================================
RCS file: /home/jm/cvsroot/hostap/wpa_supplicant/events.c,v
retrieving revision 1.14
diff -u -p -u -p -r1.14 events.c
--- events.c 20 Nov 2005 20:03:43 -0000 1.14
+++ events.c 30 Jan 2006 03:54:13 -0000
@@ -545,6 +545,13 @@ static void wpa_supplicant_event_assoc(s
}
wpa_msg(wpa_s, MSG_INFO, "Associated with " MACSTR, MAC2STR(bssid));
+ if (wpa_s->current_ssid) {
+ /* When using scanning (ap_scan=1), SIM PC/SC interface can be
+ * initialized before association, but for other modes,
+ * initialize PC/SC here, if the current configuration needs
+ * smartcard or SIM/USIM. */
+ wpa_supplicant_scard_init(wpa_s, wpa_s->current_ssid);
+ }
wpa_sm_notify_assoc(wpa_s->wpa, bssid);
l2_packet_notify_auth_start(wpa_s->l2);
More information about the Hostap
mailing list