]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
wpa_supplicant: Fix updating GO beacons on WFD subelements change
authorAndrei Otcheretianski <andrei.otcheretianski@intel.com>
Sun, 3 Nov 2013 13:24:13 +0000 (15:24 +0200)
committerJouni Malinen <j@w1.fi>
Tue, 5 Nov 2013 08:55:22 +0000 (10:55 +0200)
When WFD Subelements are set, the IE in the Beacon frames of already
existing groups are not updated. This patch fixes this issue by setting
beacon_update to be 1 on WFD IE update.

Signed-hostap: Andrei Otcheretianski <andrei.otcheretianski@intel.com>

src/p2p/p2p.c
src/p2p/p2p_group.c
src/p2p/p2p_i.h

index 84de7af3935c50619d98941d2de0f338c95def26..b2636092d92352743d302451992e4e3faca658a3 100644 (file)
@@ -4192,7 +4192,7 @@ static void p2p_update_wfd_ie_groups(struct p2p_data *p2p)
 
        for (g = 0; g < p2p->num_groups; g++) {
                group = p2p->groups[g];
-               p2p_group_update_ies(group);
+               p2p_group_force_beacon_update_ies(group);
        }
 }
 
index 15e76226aafa9366bdc21a179d92960c50a2e2cd..92b558365e6b207561923748448e7ea73bf1ffa9 100644 (file)
@@ -980,3 +980,10 @@ int p2p_group_is_group_id_match(struct p2p_group *group, const u8 *group_id,
        return os_memcmp(group_id + ETH_ALEN, group->cfg->ssid,
                         group->cfg->ssid_len) == 0;
 }
+
+
+void p2p_group_force_beacon_update_ies(struct p2p_group *group)
+{
+       group->beacon_update = 1;
+       p2p_group_update_ies(group);
+}
index bb5dd394e940e5bdedf4e4a1c0c17b2a671046d2..6b7f6bdfbfb2254630a41455279588c473cd7586 100644 (file)
@@ -608,6 +608,7 @@ u8 p2p_group_presence_req(struct p2p_group *group,
 int p2p_group_is_group_id_match(struct p2p_group *group, const u8 *group_id,
                                size_t group_id_len);
 void p2p_group_update_ies(struct p2p_group *group);
+void p2p_group_force_beacon_update_ies(struct p2p_group *group);
 struct wpabuf * p2p_group_get_wfd_ie(struct p2p_group *g);