Interworking: Init scard when a credential requires SIM access
[mech_eap.git] / wpa_supplicant / events.c
index e9a4a8c..3a6d427 100644 (file)
@@ -303,11 +303,11 @@ int wpa_supplicant_scard_init(struct wpa_supplicant *wpa_s,
 #ifdef PCSC_FUNCS
        int aka = 0, sim = 0;
 
-       if (ssid->eap.pcsc == NULL || wpa_s->scard != NULL ||
-           wpa_s->conf->external_sim)
+       if ((ssid != NULL && ssid->eap.pcsc == NULL) ||
+           wpa_s->scard != NULL || wpa_s->conf->external_sim)
                return 0;
 
-       if (ssid->eap.eap_methods == NULL) {
+       if (ssid == NULL || ssid->eap.eap_methods == NULL) {
                sim = 1;
                aka = 1;
        } else {