mesh: Fix segmentation fault by repeating MESH_GROUP_ADD/REMOVE
authorMasashi Honma <masashi.honma@gmail.com>
Sat, 15 Nov 2014 01:35:29 +0000 (10:35 +0900)
committerJouni Malinen <j@w1.fi>
Sun, 16 Nov 2014 17:43:11 +0000 (19:43 +0200)
Signed-off-by: Natsuki Itaya <Natsuki.Itaya@jp.sony.com>
Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
wpa_supplicant/events.c

index 6761c1a..c1684bf 100644 (file)
@@ -3475,9 +3475,13 @@ void wpa_supplicant_event(void *ctx, enum wpa_event_type event,
 #endif /* CONFIG_AP */
                break;
        case EVENT_NEW_PEER_CANDIDATE:
+#ifdef CONFIG_MESH
+               if (!wpa_s->ifmsh || !data)
+                       break;
                wpa_mesh_notify_peer(wpa_s, data->mesh_peer.peer,
                                     data->mesh_peer.ies,
                                     data->mesh_peer.ie_len);
+#endif /* CONFIG_MESH */
                break;
        default:
                wpa_msg(wpa_s, MSG_INFO, "Unknown event %d", event);