From: Jouni Malinen Date: Wed, 2 Dec 2009 14:43:09 +0000 (+0200) Subject: Fix driver initialization not to crash if driver does not use init2() X-Git-Tag: hostap_0_7_1~434 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d8222ae38c3be3fba794462d11fed8b57590c7f5;p=thirdparty%2Fhostap.git Fix driver initialization not to crash if driver does not use init2() 8a5ab9f5e56cd2f5781c2d92f41495e60d544780 fixed global driver context for init2(), but it also broke driver initialization with driver wrappers that do not use init2().. Fix this by setting wpa_s->global before it gets dereferenced. --- diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c index d58e55b7a..dec408ee4 100644 --- a/wpa_supplicant/wpa_supplicant.c +++ b/wpa_supplicant/wpa_supplicant.c @@ -2166,6 +2166,8 @@ struct wpa_supplicant * wpa_supplicant_add_iface(struct wpa_global *global, if (wpa_s == NULL) return NULL; + wpa_s->global = global; + t_iface = *iface; if (global->params.override_driver) { wpa_printf(MSG_DEBUG, "Override interface parameter: driver " @@ -2189,8 +2191,6 @@ struct wpa_supplicant * wpa_supplicant_add_iface(struct wpa_global *global, return NULL; } - wpa_s->global = global; - /* Notify the control interfaces about new iface */ if (wpas_notify_iface_added(wpa_s)) { wpa_supplicant_deinit_iface(wpa_s);