From: Mayank Haarit Date: Wed, 7 Dec 2016 16:46:04 +0000 (+0530) Subject: P2P: Send P2P-DEVICE-FOUND event on peer changing device name X-Git-Tag: hostap_2_7~2047 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0a6c9dc70096ee4a2089a6487fabb05cdba8212b;p=thirdparty%2Fhostap.git P2P: Send P2P-DEVICE-FOUND event on peer changing device name This is to handle the case when peer changes device name and same needs to be updated to upper layers by P2P-DEVICE-FOUND event. It is similar to the case when a peer changes wfd_subelems and P2P-DEVICE-FOUND event goes to upper layers. Signed-off-by: Mayank Haarit Signed-off-by: Avichal Agarwal --- diff --git a/src/p2p/p2p.c b/src/p2p/p2p.c index 3e1e8961a..372e4abf7 100644 --- a/src/p2p/p2p.c +++ b/src/p2p/p2p.c @@ -711,6 +711,7 @@ int p2p_add_device(struct p2p_data *p2p, const u8 *addr, int freq, struct p2p_message msg; const u8 *p2p_dev_addr; int wfd_changed; + int dev_name_changed; int i; struct os_reltime time_now; @@ -821,6 +822,9 @@ int p2p_add_device(struct p2p_data *p2p, const u8 *addr, int freq, } dev->info.level = level; + dev_name_changed = msg.device_name && + os_strcmp(dev->info.device_name, msg.device_name) != 0; + p2p_copy_wps_info(p2p, dev, 0, &msg); for (i = 0; i < P2P_MAX_WPS_VENDOR_EXT; i++) { @@ -858,6 +862,7 @@ int p2p_add_device(struct p2p_data *p2p, const u8 *addr, int freq, p2p_update_peer_vendor_elems(dev, ies, ies_len); if (dev->flags & P2P_DEV_REPORTED && !wfd_changed && + !dev_name_changed && (!msg.adv_service_instance || (dev->flags & P2P_DEV_P2PS_REPORTED))) return 0;